逻辑回归模型
逻辑回归模型(Logistic Regression)是一种分类模型,属于广义的线性回归模型,它也是一种判别模型,由条件概率\(P(Y|X)\)表示。二项逻辑回归中,随机变量\(X\)取实数,\(Y\)的取值为1或者0。逻辑回归模型简单高校,在实际应用中非常广泛,如预测一个用户是否点击广告,判断用户性别等。
sigmoid函数
介绍逻辑回归模型前,首先引入sigmoid函数,它的定义如下
sigmoid函数将取值在\((-R,R)\)的变量映射到\((0,1)\)之间,该函数在\(z=0\)附近增长较快,在两端增长较慢,这个性质可以让我们以概率的方式来解释模型。并且\(\sigma(z)\)光滑可导
即它的导数可以用自己表示。
模型
二项逻辑回归模型是如下条件概率分布
上式中,\(x\in R^n\)是输入,\(Y \in \{0,1\}\)是输出,\(b\)是偏置量。它表示在特征\(x\)下样本分布属于类别0和1的概率。一般情况下,模型将样本分到概率大的那个类别。为了表示方便,将输入向量和权重向量进行扩充
这样模型就可以简写为
下面考察逻辑回归模型的特点。一个事件的几率(odds)是指该事件发生的概率与不发生的概率的比值,设该时间发生概率为\(p\),不发生概率为\(1-p\),则该时间的对数几率或者logit函数表示为
对于逻辑回归函数而言
即输出\(Y=1\)的几率是输入\(x\)的线性函数表示的模型。
决策函数
逻辑回归模型所做的假设是
它的决策函数是
0.5只是一种常用的阈值,实际中可以选择不同的阈值,如果对正例的选择的判别准确率要求高,可以选择大一点的阈值,如果对正例的召回率要求高,可以选择小一点的阈值。
模型参数求解
逻辑回归模型输入的数据集为
其中\(x_i \in R^n,y_i \in \{0,1\}\).我们采用极大似然估计方法来求解模型中的参数向量\(w\),即找到一组参数,在这组参数条件下,模型的似然度最大。
为了推导方便,这里令\(P(Y=1|x)=\pi(x)\),则\(P(Y=0|x)=1-\pi(x)\),似然函数表示为
于是对数似然函数表示为
于是
上述最优化问题没有解析解,需要通过牛顿法或者梯度上升来学习模型中的参数。
梯度上升法
梯度上升法它是一种通过平面来逼近局部的方法,通过每一步选择目标函数变化最快的方向来调整参数值逼近最优值。步骤如下:
- 选择上升降方向,即为梯度方向\(\nabla \ln{L(w)}\)。
- 选择步长,更新参数。
- 重复上述两步,直到找到极小值为止。
求解的目标函数为
求目标函数偏导数
其中\(x_i^{(j)}\)表示特征向量\(x_i\)的第\(j\)个分量,\(w^{(j)}\)表示\(w\)的第\(j\)个分量。\(w\)更新方式表示为
上式中,\(\alpha\)是学习率。