3.对数几率回归(线性分类模型)
基础知识:
a.单调阶跃函数(unit-step function) Heaviside函数
不连续、不可微,若预测值大于零就判为正例,小于零则判为反例,预测值为临界值则可任意判别。
b.sigmoid函数——对数几率函数(logistic function)
sigmoid函数是形似S的函数。
对数几率函数是sigmoid函数的一种,单调可微,其表达式为: y = 1 1 + e − z y=\frac{1}{1+e^{-z}} y=1+e−z1与单调阶跃函数的图示关系如下图所示:
c.几率和对数几率
若将 y y y视为样本作为正例的可能性,则 1 − y 1-y 1−y是其反例可能性,两者的比值 y 1 − y \frac{y}{1-y} 1−yy称为几率(
odds
),反映了 x \mathbf x x作为正例的相对可能性.对几率取对数则得到"对数几率"(log odds
,亦称logit
): ln y 1 − y \ln\frac{y}{1-y} ln1−yyd.广义线性模型
其形式上仍是线性回归,但实质上已是在求取输入空间到输出空间的非线性函数映射。
f. 对数线性回归
3.1算法原理
a.模型构建流程
1.线性分类模型是在线性模型的基础上套一个映射函数来实现分类功能。
即,将
z
=
w
T
x
+
b
z=\mathbf w^T\mathbf x+b
z=wTx+b带入对数几率函数(一种sigmoid函数,
y
=
1
1
+
e
−
z
y=\frac{1}{1+e^{-z}}
y=1+e−z1)中,得到:
y = 1 1 + e − ( w T x + b ) y=\frac{1}{1+e^{-(\mathbf w^T\mathbf x+b)}} y=1+e−(wTx+b)1
其对应的模型称为"对数几率回归"(logistic regression,亦称logit regression)(虽叫回归但实际是分类方法)。
2.带入对数几率 ln y 1 − y \ln\frac{y}{1-y} ln1−yy中可得 ln y 1 − y = w T x + b \ln\frac{y}{1-y}={\mathbf w^T}\mathbf x+b ln1−yy=wTx+b,即,利用线性回归模型的预测结果去逼近真实标记的对数几率。
b.机器学习三要素(对数几率回归):
- 模型:线性模型,输出值范围为[0,1],近似阶跃的单调可微函数 y = 1 1 + e − ( w T x + b ) y=\frac{1}{1+e^{-(\mathbf w^T\mathbf x+b)}} y=1+e−(wTx+b)1
- 策略:极大似然估计,信息论。
- 算法:梯度下降法,牛顿法。
c.优势
- 直接对分类可能性进行建模,无需事先假设数据分布,避免了假设分布不准确所带来的问题;
- 不是仅预测出"类别",而是可得到近似概率预测,这对许多需利用概率辅助决策的任务很有用;
- 对率函数是任意阶可导的凸函数,现有的许多数值优化算法都可直接用于求取最优解。
3.2 策略——构建loss function
a.极大似然估计
b.信息论
3.3算法——求解参数
上面推导的loss function是关于 β β β的高阶可导连续凸函数,根据凸优化理论,经典的数值优化算法如梯度下降法(gradient descent method)、牛顿法(Newton method)等都可求得其最优解。
连续凸函数,根据凸优化理论,经典的数值优化算法如梯度下降法(gradient descent method)、牛顿法(Newton method)等都可求得其最优解。
β ∗ = a r g m i n β ℓ ( β ) β^*=\mathop{argmin}\limits_β\ell(β) β∗=βargminℓ(β)