线性回归和逻辑回归损失函数的区别


  1. 首先说什么是凸函数。对区间[a,b]上定义的函数f,若它对区间中任意两点x1和x2,均有f((x1+x2)/2)<=(f(x1)+f(x2))/2,则称f为区间[a,b]上的凸函数。对实数集上的函数,可通过求二阶导数来判别。若二阶导数在区间上非负,则称为凸函数,若二阶导数恒大于0,则称为严格凸函数。
  2. 线性回归模型中的损失函数为平方差损失函数,其是凸函数
  3. 逻辑回归中,损失函数为交叉熵损失函数,因为对于逻辑回归来说,若是用平方差损失函数,其不能保证是凸函数,因为逻辑回归中存在sigmoid函数。证明如下:

        

已知

线性函数

平方损失函数为

对该函数求导

这里先将 简化一下, 不考虑求和的情况,并将 记为h。

为了判断是否凸函数,需继续求其二阶导


式中x, y 可视为常数。 若 y=1, h=0.5 则上式结果为 1+3*0.25 - 2*0.5*2 = -0.25

可见该函数的二阶导数可能小于0,故为非凸函数。




你可能感兴趣的:(python与机器学习)