逻辑回归-正则化

    接着上篇文章(逻辑回归_斜杆小刘的博客-CSDN博客_逻辑回归损失函数可以用mse吗),继续分析逻辑回归。此文主要分析逻辑回归的正则化问题。首先继续给出sigmoid函数和它对应的图像:

                                                     f(x) = \frac{1}{1+e^{-(wx+b)}}

                                          

如果 w 变为 10w ,会有怎样的影响?

  1. 首先,它不会改变分类结果,因为要想改变分类结果 w 必须反向 ,就是说变为-w 或 - a w (a 是正数)。观察sigmoid函数,直接影响的就是wx+b 这项,会使它增大(或缩小),再图像中体现为,点会沿着x的正方向(负方向)移动,最终造成的结果就是,使得f(x)的值更趋向于1(或0),使得最终的分类结果过硬,显然这不是我们想要的结果,因为实际我们是通过设定一个阈值来进行分类的,要是f(x)预测出的最终的结果都是趋近于1或0,我们再调整阈值进行分类的时候就不好调了。
  2. 实际中我们训练的数据都是有噪声的,也就是说 x 可以分为真实信息和噪声两部分,即x = x_{xin} + x_{zao} ,其中x_{xin}表示真实信息部分,x_{zao}表示噪声部分。如果w变大,看似真实信息和噪声的是同时放大的,但实际是真实信息是会冗余的,而噪声不会, 造成的结果就是信噪比降低,显然这也不是我们想要的结果。
  3. 如果w越小,训练集和测试集的差异就小。造成训练集和测试集有差异的本质问题是数据不一样,即(x,y)不一样,而要想将训练集和测试集的差异变小,就要忽略这些数据集的影响,考虑一个极端的例子,如果wx+b 等于 0,那么,不管你输入的数据是什么数据,f(x)=0.5 恒成立,这样的话,训练集和测试集的差异就没有了。所以w越小,训练集和测试集的差异就越小,说明模型的推广能力就越好。

正则项

    接下来我们引入正则项,在实际中,逻辑回归的损失函数包括两部分,如下:  

                                        d_{KL} = -\frac{1}{n}\sum_{i=1}^{n}([y_{i}*logf_{i}+(1-y_{i})*log(1-f_{i})] + \lambda \left \| w \right \|)

为了方便分析,我们就直接看 [y_{i}*logf_{i}+(1-y_{i})*log(1-f_{i})] + \lambda \left \| w \right \| 这部分,其中左边上篇文章中推到出来的,右边是正则项。通常L1和L2正则是常用的正则项,形式如下:

                                                      L_{1} = \left | w_{1} \right | + \left | w_{2} \right |+...+\left | w_{n} \right |

                                                     L_{2}=w_{1}^{2}+w_{2}^{2}+...+w_{n}^{2}

观察损失函数左边部分[y_{i}*logf_{i}+(1-y_{i})*log(1-f_{i})],对于y_{i}*logf_{i} 和 (1-y_{i})*log(1-f_{i}) ,每次只会有一边成立,因为逻辑回归是个二分类问题,y_{i} 只能等于0 或者 1。

  1. y_{i}= 0 时,(1-y_{i})*log(1-f_{i})=log(1-f_{i}) ,可以通过不断增大\left | w \right |来使得f_{i} 无限逼近 0,使得损失函数无限变小
  2. y_{i}= 1时,y_{i}*logf_{i}=logf_{i} ,可以通过不断增大\left | w \right |来使得f_{i} 无限逼近 1,使得损失函数无限变小

从上面两种情况可知,我们可以无限的增大\left | w \right | 的值,使得损失函数无限变小,从机器的角度来看w的值会出现溢出的情况。而加入正则项,正好抑制这种w无限增大的情况发生。前面也提到过,w变小,有利于提高模型的推广能力(也叫泛化能力)。 那么L1和L2正则有什么区别呢?

      L1:一般会用于降维,有特征筛选的作用(真实场景中常用L1正则)

      L2:各个维度权重普遍变小


 

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值