逻辑回归损失函数为什么使用最大似然估计而不用最小二乘法

最小二乘法的误差符合正态分布,而逻辑回归的误差符合的是二项分布,所以不能用最小二乘法来作为损失函数,那么能够用最大似然预计来做。

从求最优解的角度来解释:

如果用最小二乘法,目标函数就是 E_{w,b}=\sum_{i=1}^{m}\left ( y_{i}-\frac{1}{1+e^{-\left ( w^{T}x_{i}+b \right )}}\right )^2 ,是非凸的,不容易求解,会得到局部最优。

如果用最大似然估计,目标函数就是对数似然函数: l_{w,b}=\sum_{i=1}^{m}\left ( -y_{i}\left ( w^{T}x_{i}+b \right )+ln\left ( 1+e^{w^{T}x_{i}+b} \right ) \right ) ,是关于 (w,b) 的高阶连续可导凸函数,可以方便通过一些凸优化算法求解,比如梯度下降法、牛顿法等。

最小二乘作为损失函数的函数曲线:

图1 最小二乘作为逻辑回归模型的损失函数,theta为待优化参数

 

以及最大似然作为损失函数的函数曲线(最大似然损失函数后面给出):

图2 最大似然作为逻辑回归模型的损失函数,theta为待优化参数

 

很显然了,图2比图1展现的函数要简单多了,很容易求到参数的最优解(凸函数),而图1很容易陷入局部最优解(非凸函数)。这就是前面说的选取的标准要容易测量,这就是逻辑回归损失函数为什么使用最大似然而不用最小二乘的原因了。

既然是最大似然,我们的目标当然是要最大化似然概率了:

max \prod_{i=1}^{m}p(y_{i}|x_{i},\theta)

对于二分类问题有:

p_{1}=p(y=1|x,\theta)=\frac{e^{x\theta}}{1+e^{x\theta}},y=1

p_{0}=p(y=0|x,\theta)=\frac{1}{1+e^{x\theta}},y=0

用一个式子表示上面这个分段的函数为:(记得写成相乘的形式)

p=p(y|x,\theta)=p_{1}^{y_{i}}\ast p_{0}^{1-y_{i}}

代入目标函数中,再对目标函数取对数,则目标函数变为:

max \sum_{i=1}^{m}({y_{i}\log{p_{1}}+(1-y_{i})\log{p_{0})}}

如果用 h_{\theta}(x_{i}) 来表示 p_{1} ,则可用 1-h_{\theta}(x_{i}) 来表示 p_{0} ,再将目标函数max换成min,则目标函数变为:

min -\frac{1}{m}\sum_{i=1}^{m}({y_{i}\log{h_{\theta}(x_{i})}+(1-y_{i})\log({1-h_{\theta}(x_{i})}))}

这样就得到最终的形式了!

 

参考文献

https://www.zhihu.com/question/65350200

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值