LR为何用极大似然估计,损失函数为何是log损失函数(交叉熵)

 

去今日头条面试没有答上来,回来本身想了想,查了查,把解释写出来,不必定合理。面试

首先,逻辑回归是一个几率模型,无论x取什么值,最后模型的输出也是固定在(0,1)之间,这样就能够表明x取某个值时y是1的几率机器学习

这里边的参数就是θ,咱们估计参数的时候经常使用的就是极大似然估计,为何呢?能够这么考虑函数

好比有n个x,xi对应yi=1的几率是pi,yi=0的几率是1-pi,当参数θ取什么值最合适呢,能够考虑学习

n个x中对应k个1,和(n-k)个0(这里k个取1的样本是肯定的,这里就假设前k个是1,后边的是0.平时训练模型拿到的样本也是肯定的,若是不肯定还要排列组合)spa

则(p1*p2*...*pk)*(1-pk+1)*(1-pk+2)*...*(1-pn)最大时,θ是最合适的。联合几率最大嘛,就是整体猜的最准,就是尽量使机器学习中全部样本预测到对应分类得几率总体最大化。blog

其实上边的算式就是极大似然估计的算式:io

对应到LR中:function

总之就是由于LR是几率模型,对几率模型估计参数用极大似然,原理上边说了原理

 

而后为何用logloss做为cost function呢im

主要的缘由就是由于似然函数的本质和损失函数本质的关系

对数似然函数:

 能够看到对数似然函数和交叉熵函数在二分类的状况下形式是几乎同样的,能够说最小化交叉熵的本质就是对数似然函数的最大化。

对数似然函数的本质就是衡量在某个参数下,总体的估计和真实状况同样的几率,越大表明越相近

而损失函数的本质就是衡量预测值和真实值之间的差距,越大表明越不相近。

他们两个是相反的一个关系,至于损失函数的惩罚程度,能够用参数修正,咱们这里不考虑。

因此在对数似然前边加一个负号表明相反,这样就把对数似然转化成了一个损失函数,而后把y取0和1的状况分开(写成分段函数),就是:

 

 意义就是:当y=1时,h=1时没有损失,h越趋近0损失越大

当y=0时,h=0没有损失,h越趋近1损失越大。

相关文章
相关标签/搜索