逻辑回归相关问题

逻辑回归背景及应用

逻辑回归的背景

逻辑回归(Logistic Regression)是一种统计模型,在机器学习的语境下,通过赋予样本概率解释实现预测或分类。

“逻辑斯蒂”(logistic)一词最早由Pierre François Verhulst (1830s - 1840s)在其预测人口增长的相关工作中提出,随后在1934年Chester Bliss提出了“概率”(probit)与概率模型(probit model),也影响了后来取而代之的 “逻辑模型”(logit model)。“logit”一词由 Joseph Berkson创造,取自“logistic unit”,与“probit”相对。

逻辑回归的应用

逻辑回归模型广泛应用于医学与社会科学等领域。

  • Boyd:TRISS 预测受伤患者死亡率
  • 基于患者各项指标预测发生特定疾病的风险
  • 基于选民各项信息预测选举倾向
  • 条件随机场(Conditional random fields)

逻辑回归原理

统计假设(多分类情况下)

Independent and Irrelevant Alternatives (IIA) 假设:各选项相互独立,不相关。(多元逻辑回归)

基本形式

通常的“回归”都是线性的,形如f(x)=wTx+bf(x)=\boldsymbol{w}^{\textup{T} }\boldsymbol{x}+b,这样可以完成预测任务;而想要实现分类,先从“二分类”问题开始,基本想法就是需要将原样本点映射到两种“结果”上(比如–1和1),那么我们就要考虑对原函数进行一种变换,最常见的就是对数几率函数(logistic or log-odd function )。

对率函数是一种Sigmoid函数,即S形函数,形如 y=11+exy=\dfrac{1}{1+e^{-x}} 。将线性回归函数代入,得 y=11+e(wTx+b)y=\dfrac{1}{1+e^{-(\boldsymbol{w}^{\rm{T} }\boldsymbol{x}+b)}},对数化后得 lny1y=wTx+b\textup{ln} \dfrac{y}{1-y}=\boldsymbol{w}^{\rm{T} }\boldsymbol{x}+b

 其中,若将yy 视为分至一类的可能性,而1y1-y则为分至另一类的可能性,那么二者的比值 y1y\dfrac{y}{1-y}就是“几率”(odds),也就是相对于另一类而言出现的可能性。那么,对数化的几率 lny1y\textup{ln} \dfrac{y}{1-y}即为“对数几率”(log odds or logit)。

可见,通过函数变换,通过赋予样本以概率解释从而实现了基础的分类功能,下一步要拟合出模型就是要求参数 wT\textbf{w}^{\textup{T}}bb。从概率的角度看,将 yy 视为后验概率 p(y=1x)p(y=1\,\lvert\,\boldsymbol{x}),那么可得 lnp(y=1x)p(y=0x)=wTx+b\textup{ln} \dfrac{p(y=1\,\lvert\,\boldsymbol{x})}{p(y=0\,\lvert\,\boldsymbol{x})}=\boldsymbol{w}^{\rm{T} }\boldsymbol{x}+b
最后解出 p(y=1x)=ewTx+b1+ewTx+bp(y=1\,\lvert\,\boldsymbol{x}) = \dfrac{e^{\boldsymbol{w}^\textup{T}\boldsymbol{x}+b}}{1+e^{\boldsymbol{w}^\textup{T}\boldsymbol{x}+b}}p(y=0x)=11+ewTx+bp(y=0\,\lvert\,\boldsymbol{x}) = \dfrac{1}{1+e^{\boldsymbol{w}^\textup{T}\boldsymbol{x}+b}}。那么,接下来就可以使用最大似然法来进行参数估计。

逻辑回归与相关方法的差异

逻辑回归与线性回归

逻辑回归虽然被冠以“回归”之名,但是却不同于传统意义上的线性回归。

从应用上看,逻辑回归解决的是分类问题(离散),而线性回归解决的是预测问题(连续)。

同时,我们引入对率函数,这样分类结果实际上带有概率,这有利于某些情况下任务的处理。另外,对率函数是任意阶可导的凸函数,本身数学性质很好,有利于最优求解。

逻辑回归与SVM

与逻辑回归一样,SVM也是用于分类任务,通常处理二分类问题。但是从原理上看,LR是基于概率的,通过最大似然法进行参数估计;而SVM则是出于“让不同类之间间隔最大化”的考虑,寻找能使间隔最大化的分类面即为最优解。进一步,LR考虑的所有的点,而SVM 更关心“支持向量”,即离间隔面最近的点;SVM在处理非线性问题时,采用核函数映射到高维空间,那么核函数的选取就是一个难点,而LR遇到这种情况通常不会被考虑。

逻辑回归的一些细节

归一化与特征离散

归一化其实是将数据的大小重整至某一更加适宜的范围(通常在0到1之间),这样做的好处是有利于梯度下降找到最优解。

特征离散是将连续特征离散为“片段化”特征(通常由0,1组成),这样的话就构成了特征的稀疏矩阵,有利于内积运算,且对异常值敏感,鲁棒性高。

Sigmoid函数的选取

考虑二分类任务,我们要做分类,就需要将原来输出的预测值转换到有限个标记上。很容易想到,阶跃函数(Heaviside function)能满足需求,但是这个函数并不连续,所有以需要找一个替代的性质更好的函数。
对率函数正是常用的替代函数,它保留了“阶跃”的性质,同时又有更强的可导性。
逻辑回归相关问题

参考资料

[1]: 周志华 《机器学习》
[2]: https://en.wikipedia.org/wiki/Logistic_regression