逻辑回归模型是一个非常非常非常常用的模型,在介绍LR之前,先介绍下广义线性模型
1. 广义线性模型
机器学习中常用于分类的“广义线性模型”,即对y进行变换使其为输入的线性叠加,注意g必须是单调可微的
2. 逻辑回归模型 Logistic Regression
应用场景:模型输入是连续变量,模型输出是类别(这里是正例或者反例)
目标函数:
利用了sigmoid函数将线性函数的结果转换到(0,1)之间,输出可以理解为样本为正例的概率,将y与分类阈值进行比较可以将结果分为正例和反例。
sigmoid的函数图形如下:
在不同的应用任务中,我们可根据任务需求来采用不同的截断点,
- 例如若我们更重视“查准率”,则可选择排序中靠前的位置进行截断;
- 若更重视“查全率”,则可选择靠后的位置进行截断;
代价函数 Cost Function:
- 之所以没有用简单线性回归中的误差和,是因为误差和函数是一个非凸函数,会有多个极值,会产生局部最小值而非全局最小值。
- 这里使用概率论中极大似然估计的方法去求解损失函数
*******************************最大似然估计方法→LR模型的代价函数**************************************************
因为目标函数输出可以理解为正例概率,所以对于输入x,分类结果为类别1和类别0的概率分别为:
对于每一个样本为正例的概率可以表示为:
当有m个独立样本时,要产生这样的样本,概率函数(似然函数)应该为:
取对数(便于计算):
最大似然估计就是要求得使 l(θ) 取最大值时的 θ ,这里可以使用梯度上升法求解。
我们稍微变换一下,就可以使用梯度下降算法进行参数求解:
*******************************梯度下降法求解代价函数**************************************************
上述函数可以进一步处理,过程如下:
梯度方向(最大下降方向),对θ求导即可:
观察这个梯度式子,其实就是m个样本的(预测值-真实值)×特征值的平均值
这就是我对于Logistic Regression 的一些理解,希望对大家有帮助啦!!!