【机器学习算法】LR以及正则项

来源:互联网 发布:saas软件服务 编辑:程序博客网 时间:2024/06/06 05:47

一,手推Logistic回归
logistic回归基于线性分类θTX+b,并使用sigmoid函数将线性函数映射到(0,1)空间中去。于是有假设Hθ(x),表示的是x发生的几率。若Hθ(x)值大于0.5则表示是正样本否则是负样本。
1,对于样本集D={(x1,y1),(x2,y2),…,(xn,yn)}有n个样本,每个样本有x = (x1;x2;…;xd) d个维度,y={y=0,y=1}。在对其进行线性分类的时候有:

f(θ,b)=θ1x1+θ2x2+...θnxn

f(θ,b)=θTx(1)

其中θ,b是要训练的参数。
2,对于二分类来说,f(x)是一个实数,现在欲将其映射到(0,1)的区间上。于是logistic回归的假设为:
Hθ(x)=g(θTx)=11+eθTx(2)

这里写图片描述

sigmoid的好处是理论上可以任何数投影到(0,1)之间。

3,其损失函数为:
这里写图片描述

这样表示的才是简单粗暴,比较清晰的,Hθ(x)表示的是概率,当概率接近1的时候表示预测的是正样本,当概率接近0的时候表示预测是负样本。如5.4所示,若原本是正样本即y=1,但h(x)值很小的时候cost()的值会很大;反之y=0时,预测错误也会有很大的惩罚。
将5.4的公式合并,以及将所有样本的损失函数放在一起,结果如下:

这里写图片描述

4,当然还需要加入正则项来防止过拟合。
这里写图片描述

下面就可以使用随机梯度下降等优化方法来求解最优的参数theta了,不过这不是本篇博客的重点,所以就算了。

二,正则项小议
L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓『惩罚』是指对损失函数中的某些参数做一些限制。对于线性回归模型,使用L1正则化的模型建叫做Lasso回归,使用L2正则化的模型叫做Ridge回归(岭回归)。
损失函数以均方误差,其加上L1,L2的损失函数为:
这里写图片描述
这里写图片描述
一般回归分析中回归w表示特征的系数,从上式可以看到正则化项是对系数做了处理(限制)。L1正则化和L2正则化的说明如下:

* L1正则化是指权值向量w中各个元素的绝对值之和,通常表示为||w||1
* L2正则化是指权值向量w中各个元素的平方和然后再求平方根(可以看到Ridge回归的L2正则化项有平方符号),通常表示为||w||2

L1和L2正则化的直观理解
假设有如下带L1正则化的损失函数:

J=J0+αw|w|

求解J0的过程可以画出等值线,同时L1正则化的函数L也可以在w1w2的二维平面上画出来。如下图:
这里写图片描述

图中等值线是J0的等值线,黑色方形是L函数的图形。在图中,当j0等值线与L图形首次相交的地方就是最优解。上图中j0与L在L的一个顶点处相交,这个顶点就是最优解。
j0与这些角接触的机率会远大于与L其它部位接触的机率,而在这些角上,会有很多权值等于0,那么对于多维特征中也会存在更多的特征为0。这就是为什么L1正则化可以产生稀疏模型,进而可以用于特征选择。

同样的假设有如下带L2正则化的损失函数:

J=J0+αw|w|2

可以画出他们在二维平面上的图形,如下:
这里写图片描述

二维平面下L2正则化的函数图形是个圆,与方形相比,被磨去了棱角。因此J0与L相交时使得w1w2等于零的机率小了许多,这就是为什么L2正则化不具有稀疏性的原因。
因为在最小化损失函数的时候加上了L2正则化因此最终的最优解会是的参数量和参数本身都不会太大,最终达到抑制过拟合的作用。

L1,L2总结:

  • L1正则化是指权值向量w中各个元素的绝对值之和,通常表示为||w||
  • 使用L1能够得到数据的稀疏特征
  • L2正则化是指权值向量w中各个元素的平方和然后再求平方根(可以看到Ridge回归的L2正则化项有平方符号),通常表示为||w||2
  • 使用L2能够比较好的抑制模型过拟合

其他比较好的博文:
L1,L2:
http://blog.csdn.net/jinping_shi/article/details/52433975
LR:
http://www.cnblogs.com/GuoJiaSheng/p/3928160.html
http://blog.csdn.net/xierhacker/article/details/53316138

原创粉丝点击