从线性模型出发,再到odds & logit这两个概念,然后介绍Logistic模型及其推广。

线性模型

给定数据集

线性回归问题就是学习如下模型,

对于每个样本的误差,

最小二乘法是曲线拟合中使用平方误差的特例。“二乘”其实就是平方的意思。模型$f(x)$拟合样本,让误差的平方最小化,

其中$f(x)$可以是复杂的模型如神经网络,也可以是简单的模型如线性模型。如果样本有差异,给与不同权重,那么有加权最小二乘法,

此外还有广义的线性模型,如对数线性回归,

指数线性回归,

Logistic模型本身也是线性模型,只不过它引入概率意义,这里需要先介绍odds 、logit这两个概念。

odds & logit

odds和logits在神经网络和机器学习中都是常见的概念,也非常容易混淆,因此这里简单讲一讲这两个概念。odds称为几率或可能性,是事件A发生与不发生(非A)的概率的比值,

根据概率的取值范围容易得到$\operatorname{odds}(p) \in [0, + \infty)$,不过该取值范围不对称,对于很多模型的输出来说,需要加激活处理才能使得取值在正半轴区间。

Logit,顾名思义log it,对$\operatorname{odds}(p)$取对数变换,

于是$\operatorname{logits}(p) \in [-\infty, +\infty]$没有上下限,于是可以方便地进行建模。例如最简单的线性模型,

这就是可以理解,为什么很多机器学习和深度学习模型的输入在没有加激活(如softmax)称为logit。对上式变换,有对数线性模型,

这就是下面推出的Logistic模型。该模型的特例就是$\sigma(x)$,

这种形式的函数事实上来自增长模型,微分方程表示为,

$P$为种群数量,$r$为增长率,$K$为环境容量,方程解得,

把参数简约掉,就得到Logistic函数。

Logistic模型

二项Logistic regression模型是对数线性模型,表示为如下条件概率,

假设取$P(Y=1 |\boldsymbol{x})=p$,根据上式不难有,

因此,我们也常常称$\boldsymbol{w} \cdot \boldsymbol{x} + b$为logit,可以理解为一个未经归一化的概率值。在前馈神经网络中,全连接网络$\boldsymbol{W} \cdot \boldsymbol{X} + \boldsymbol{b}$​​也称为logit。Logistic模型的参数可以使用MLE方法估计,这里不展开。

多项Logistic模型

以上是二项logistic regression模型,不难推广到多项logistic regression模型。多项Logistic模型,即multi-nominal logistic regression。

当$k=1, \dots, K-1$时,

当$Y=K$时,

取$P(Y=k|\boldsymbol{x})=p_{k}$,那么有,

可见,该形式类似于Logit。

softmax regression

multi-nominal logistic regression模型右边乘以$\frac{\exp(\boldsymbol{w}_{K} \cdot \boldsymbol{x} + b)}{\exp(\boldsymbol{w}_{K} \cdot \boldsymbol{x} + b)}$,等式不变,即

同理,

综上,可转换为如下形式,

需要注意,这里$\boldsymbol{w}_{k}是形式符号$和multi-nominal logistic regression的并不是同一个参数。这个形式称为softmax regression。

总结

本文从odds & logit出发,然后介绍Logistic模型、多项Logistic模型、softmax regression。

参考文献

[1] https://scikit-learn.org/stable/modules/linear_model.html

[2] 统计学习方法

[3] https://en.wikipedia.org/wiki/Multinomial_logistic_regression

[4] https://en.wikipedia.org/wiki/Logistic_regression

[5] https://en.wikipedia.org/wiki/Least_squares

转载请包括本文地址:https://allenwind.github.io/blog/7288
更多文章请参考:https://allenwind.github.io/blog/archives/