首页 分享 LogisticRegression

LogisticRegression

来源:花匠小妙招 时间:2024-11-12 08:02

LogisticRegression

1. Function   Set textbf{Function Set} Function Set

在这里插入图片描述

由于 z = w ∗ x + b z = w*x + b z=w∗x+b 表示一条直线,直线分割的平面一半表示 w ∗ x + b < 0 w*x+b <0 w∗x+b<0,此时 σ ( z ) < 0.5 sigma(z) < 0.5 σ(z)<0.5 。反之, σ ( z ) > 0.5 sigma(z) > 0.5 σ(z)>0.5 。

2. Goodness   of   a   Function textbf{Goodness of a Function} Goodness of a Function

在这里插入图片描述

这里 f w , b ( x ) f_w,_b(x) fw​,b​(x) 计算的是属于 C 1 C_1 C1​ 的概率。由于二项分布,所以属于 C 2 C_2 C2​ 的概率为 1 − f w , b ( x ) 1-f_w,_b(x) 1−fw​,b​(x)。根据 M a x i m u m L i k e l i h o o d MaximumLikelihood MaximumLikelihood,可以得出 L ( w , b ) L(w,b) L(w,b) 如上式。

2. 1 对上面的 L ( w , b ) L(w,b) L(w,b)式子做变换

在这里插入图片描述
在这里插入图片描述
其实变换后的式子就是 C r o s s E n t r o p y CrossEntropy CrossEntropy ,我们可以把真实值和预测值分别看作伯努利分布 p , q p,q p,q。根据交叉熵公式 H ( p , q ) H(p,q) H(p,q)求出交叉熵,其结果等同于上面的 L o g i s t i c R e g r e s s i o n LogisticRegression LogisticRegression 最大似然估计的推导结果。

3. Find the best function 3.1 对损失函数求偏微分

在这里插入图片描述在这里插入图片描述

3.2 得到梯度,更新参数

在这里插入图片描述
可以发现,梯度反应了真实标签和预测值之间的差异。

3.3 LogisticRegression     vs     LinearRegression textbf{LogisticRegression vs LinearRegression} LogisticRegression   vs   LinearRegression

在这里插入图片描述
不同点:(1)误差函数不一致。(2)取值范围不一致。
相同点:(1)二者梯度更新方式一致。
可见,两者的梯度更新方式是一致的,只是逻辑回归值范围被限制在(0,1)区间,而线性回归则没有限制。但是为什么 L o g i s t i c R e g r e s s i o n LogisticRegression LogisticRegression 不使用 S q u a r e   e r r o r Square error Square error 呢? 后面会回答这个问题。

4. Logistic    Regression   with   Square    Error    ? textbf{Logistic Regression with Square Error ?} Logistic  Regression with Square  Error  ? 4.1 当真实标签为1时候 ( y ^ n = 1 ) (hat{y}^n=1) (y^​n=1)

在这里插入图片描述
如果损失函数是 S q u a r e   E r r o r Square Error Square Error,损失函数对 w i w_i wi​求偏微分。考虑两种情况。当 y ^ n = 1 hat{y}^n=1 y^​n=1时,(1)若 f w , b ( x n ) = 1 f_w,_b(x^n) = 1 fw​,b​(xn)=1,此时偏微分为0,说明函数值逼近目标值。(2)若 f w , b ( x n ) = 0 f_w,_b(x^n) = 0 fw​,b​(xn)=0,预测函数值远没有达到目标函数值1,但是偏微分值(梯度)已经为0,几乎停止更新,这明显是不合理的。

4.2 当真实标签为1时候 ( y ^ n = 0 ) (hat{y}^n=0) (y^​n=0)

在这里插入图片描述
可见,当 y ^ n = 0 hat{y}^n = 0 y^​n=0 时会出现同样的问题。

对于以 S q u a r e   E r r o r Square Error Square Error作为损失函数来说,因为逻辑回归把预测结果映射到[0,1]区间,有相当大一部分变量映射的函数值会为0或者1,这将产生上述问题,而线性回归则没有这样的问题。

4.3 CrossEntropy    v.s    Square   Error textbf{CrossEntropy v.s Square Error} CrossEntropy  v.s  Square Error

在这里插入图片描述
上图是对于两种损失函数的直观理解,可见 C r o s s   E n t r o p y Cross Entropy Cross Entropy 的更新比较陡峭,相对容易找到最优解。而 S q u a r e   E r r o r Square Error Square Error 则很平缓,更新缓慢,甚至在离最优解很远的地方停止更新。

5. Discriminative    vs    Generative textbf{Discriminative vs Generative} Discriminative  vs  Generative 5.1 二者获取参数方式对比

在这里插入图片描述
二者得到的模型参数 w , b w,b w,b是不同的。

5.2 优缺点

在这里插入图片描述
一般来说,当数据量足够的时候,判别模型效果更好。但是,生成模型可以根据模型的假设自行进行"脑补",因此,生成模型可能会产生训练数据种不存在的结果。

6. Limitation    of    Logistic    Regression textbf{Limitation of Logistic Regression} Limitation  of  Logistic  Regression 6.1 无法解决线性不可分问题

在这里插入图片描述

6.2 Feature    Transformation textbf{Feature Transformation} Feature  Transformation

在这里插入图片描述
可以通过特征转换解决这个问题,但是很难(人工)找到合适的特征转换方法。

于是,我们希望通过多个 L o g i s t i c   R e g r e s s i o n Logistic Regression Logistic Regression模型进行级联,来自动的完成特征转换过程(自动发现特征转换方法)。
在这里插入图片描述
其实这就是神经网络的原型
在这里插入图片描述

7. Multi-class   Classification textbf{Multi-class Classification} Multi-class Classification

在这里插入图片描述

相关知识

基于Logistic回归模型对鸢尾花数据集的线性多分类
python鸢尾花数据集的分类问题 -- 逻辑回归问题研究
第一个机器学习项目(鸢尾花分类问题)
分析鸢尾花数据集
《机器学习》分析鸢尾花数据集
逻辑回归分类、决策树分类、朴素贝叶斯分类及手写数字识别
鸢尾花数据分析项目(附详细代码和结果)
鸢尾花分类
病虫害预测模型比较

网址: LogisticRegression https://www.huajiangbk.com/newsview505774.html

所属分类:花卉
上一篇: 花肥用过量了怎么补救
下一篇: 化肥过量使用,后果很严重!

推荐分享