逻辑回归模型算是机器学习的一种基本方法,但也有很多细节。本篇文章从原理入手,力求化繁为简,如有错漏,烦请指正。
什么是逻辑回归:
逻辑回归是一种分类模型。给定输入X, 可以将Y的条件概率P(Y|X)形式化为logistic分布。具体地讲,以二分类为例,逻辑回归模型为:
对于逻辑回归模型,给定x,根据以上两个式子求得P(Y=1|x)和P(Y=0|x),比较两个概率大小,然后将x分类为概率最大的一类。
p为一个事件发生的概率,则一个事件发生的几率为p/(1-p),而:
可以看出逻辑回归的特点,输出Y=1的几率为输入x的线性函数。
损失函数:
似然函数为:
对数似然函数为:
损失函数为负平均对数似然:
在逻辑回归中,最小化损失函数即为最大化对数似然
求解:
主要求解方法:梯度下降法(随机梯度下降、mini-batch梯度下降等),牛顿法等
1.随机梯度下降:
2.牛顿法:
基本思路是在现有极小估计点附近做二阶泰勒展开,得到导数为0的点进行一个更新,直到达到要求。设
为目前的极小估计点:
令
,可得:
其中
为海森矩阵
缺点:牛顿法是定长迭代,没有步长因子,所以不能保证函数值稳定的下降。牛顿法要求函数一定是二阶可导的。而且计算Hessian矩阵的逆复杂度很大。
所以提出拟牛顿法,用一个特别的表达形式来模拟Hessian矩阵或者是他的逆使得表达式满足拟牛顿条件。主要有DFP法(逼近Hession的逆)、BFGS(直接逼近Hession矩阵)、 L-BFGS(可以减少BFGS所需的存储空间)。
正则化:
1、L1正则(LASSO回归):
对参数增加一个先验,服从零均值拉普拉斯分布:
所以负对数似然变为:
2、L2正则(Ridge回归):
对参数w增加一个先验,服从零均值正态分布:
负对数似然为:
3、作用与区别
控制模型复杂度,惩罚过大的参数来防止过拟合。L1正则化可以产生稀疏权值矩阵,从而可以进行特征选择。