Logistic回归模型

logistic分布

逻辑斯谛分布

设X是连续随机变量,X具有下列分布函数和密度函数
F ( x ) = P ( X ≤ x ) = 1 1 + e − ( x − μ ) / γ F(x)=P(X\le x)=\frac{1}{1+e^{-(x-\mu)/\gamma}} F(x)=P(X≤x)=1+e−(x−μ)/γ1​
f ( x ) = F ′ ( x ) = e − ( x − μ ) / γ γ ( 1 + e − ( x − μ ) / γ ) 2 f(x)=F'(x)=\frac{e^{-(x-\mu)/\gamma}}{\gamma(1+e^{-(x-\mu)/\gamma})^2} f(x)=F′(x)=γ(1+e−(x−μ)/γ)2e−(x−μ)/γ​
密度函数和分布函数如图所示

分布函数图形是一条S形曲线。该曲线以点 ( μ , 1 2 ) (\mu,\frac{1}{2}) (μ,21​)位中心对称,即满足
F ( − x + μ ) − 1 2 = F ( x + μ ) + 1 2 F(-x+\mu)-\frac{1}{2}=F(x+\mu)+\frac{1}{2} F(−x+μ)−21​=F(x+μ)+21​
曲线在中心附近增长速度较快,两端较慢。
形状参数 γ \gamma γ的值越小,曲线在中心附近增长越快。

二项逻辑回归模型

二项逻辑回归模型是如下的条件概率分布

\begin{align*}
P(Y=1|x)&=\frac{exp(w \cdot x)+b}{1+exp(w\cdot x+b)}\text{(6.5)}\
P(Y=0|x)&=\frac{1}{1+exp(w\cdot x+b)}\text{(6.6)}
\end{align*}

一个事件的几率(odds)是指该事件发生的概率与不发生的概率的比值。如果事件发生的概率是p,那么该事件的几率就是 p 1 − p \frac{p}{1-p} 1−pp​,该事件发生的对数几率(log odds)或logit函数是
l o g i t ( p ) = l o g p 1 − p logit(p)=log\frac{p}{1-p} logit(p)=log1−pp​
对逻辑斯谛回归而言,由式(6.5)与式(6.6)得
log ⁡ P ( Y = 1 ∣ x ) 1 − P ( Y = 1 ∣ x ) = w ⋅ x \log\frac{P(Y=1|x)}{1-P(Y=1|x)}=w\cdot x log1−P(Y=1∣x)P(Y=1∣x)​=w⋅x
逻辑回归模型中,输出Y=1的对数几率是输入x的线性函数。

模型参数估计

极大似然估计
设 P ( Y = 1 ∣ x ) = π ( x ) , P ( Y = 0 ∣ x ) = 1 − π ( x ) P(Y=1|x)=\pi(x),P(Y=0|x)=1-\pi(x) P(Y=1∣x)=π(x),P(Y=0∣x)=1−π(x)
似然函数为
∏ i = 1 N [ π ( x i ) ] y i [ 1 − π ( x i ) ] 1 − y i \prod\limits_{i=1}^N[\pi(x_i)]^{y_i}[1-\pi(x_i)]^{1-y_i} i=1∏N​[π(xi​)]yi​[1−π(xi​)]1−yi​
对数似然函数为
\begin{align*}
L(w)&=\sum\limits_{i=1}^N[y_i\log\pi(x_i)+(1-y_i)\log(1-\pi(x_i))]\
&=\sum\limits_{i=1}^N[y_i\log\frac{\pi(x_i)}{1-\pi(x_i)}+\log(1-\pi(x_i))]\
&=\sum\limits_{i=1}^N[y_i(w\cdot x_i)-\log(1+exp(w\cdot x_i))]
\end{align*}
对L(w)求极大值,得到w的估计值。
这样,问题就变成了以对数似然函数为目标函数的最优化问题。
通常采用梯度下降(这里是上升,最大化对数似然函数)法及拟牛顿法

梯度下降法

$\frac{\partial L(w)}{\partial w}=\sum\limits_{i=1}^Nx_i(y_i-\pi(x))
,其中 ,其中 ,其中\pi(x)=\frac{exp(w \cdot x)}{1+exp(w\cdot x)}$
设学习率为 α \alpha α,则梯度上升法的更新公式为
$w_j = w_j + \alpha\sum\limits_{i=1}^Nx_i(y_i-\pi(x))
$

多项逻辑斯谛回归

假设离散型随机变量Y的取值集合是 1 , 2 , . . . , K {1,2,...,K} 1,2,...,K,那么多项逻辑斯谛回归模型是
\begin{align*}
P(Y=k|x)=\frac{exp(w_k\cdot x)}{1+\sum\limits_{k=1}^{K-1}exp(w_k\cdot x)},k=1,…,K-1\
P(Y=K|x)=\frac{1}{1+\sum\limits_{k=1}^{K-1}exp(w_k\cdot x)}
\end{align*}

sigmoid函数的推导

根据对数几率回归推导

根据最大熵模型推导

http://blog.csdn.net/u012151283/article/details/77619799#t2
最大熵原理告诉我们,当在某些约束条件下选择统计模型时,需要尽可能选择满足这些条件的模型中不确定性最大的那个。
采用熵作为统计不确定性的度量,这个问题变为一个条件约束的问题。
在最大熵准则下,
p ∗ ( x ) = arg ⁡ p ( x ) max ⁡ H ( x ) s . t . E p [ f d ( x ) ] = E p ~ [ f d ( x ) ] , d = 1 , . . . , D \begin{align} p^*(x)=\arg_{p(x)} \max H(x)\\ s.t. E_p[f_d(x)]=E_{ \widetilde p}[f_d(x)],d=1,...,D \end{align} p∗(x)=argp(x)​maxH(x)s.t.Ep​[fd​(x)]=Ep ​​[fd​(x)],d=1,...,D​​
f i ( x ) f_i(x) fi​(x)为一组特征函数,而优化中约束的意义是这一组特征函数在某型 p ( x ) p(x) p(x)下的均值等于其数上的均值。

使用拉格朗日方法可以得出一项重要结论,求其最大熵解等价于求一个对应指数形式分布的最大似解。

令 π ( x ) u = P ( Y = u ∣ X ) \pi(x)_u=P(Y=u|X) π(x)u​=P(Y=u∣X)
根据最大熵模型,有
\begin{align*}
\pi(x)v\ge0\
\sum\limits
{v=1}^k\pi(x)v = 1\
\sum\limits
{i=1}nx(i)_j\pi(x(i))_u=\sum\limits_{i=1}nf(u,y(i))x(i)_j\text{(for all u,j)}
\end{align*}

指数族分布

指数分布族是指可以表示为指数形式的分布。
p ( y ; η ) = b ( y ) e x p ( η T T ( y ) − α ( η ) ) p(y;\eta)=b(y)exp(\eta^TT(y)-\alpha(\eta)) p(y;η)=b(y)exp(ηTT(y)−α(η))
其中, η \eta η为自然参数, T ( y ) T(y) T(y)为充分统计量。 α ( η ) \alpha(\eta) α(η)为归一化系数。当参数 b , α , T b,\alpha,T b,α,T都固定时,就定义了一个以 η \eta η为参数的函数族。

逻辑回归假设 y y y服从伯努利分布,
p ( y ; ϕ ) = ϕ y ( 1 − ϕ ) 1 − y = e x p ( y log ⁡ ϕ + ( 1 − y ) log ⁡ ( 1 − ϕ ) ) = e x p ( log ⁡ ( ϕ 1 − ϕ ) y + log ⁡ ( 1 − ϕ ) ) \begin{align} p(y;\phi)&=\phi^y(1-\phi)^{1-y}\\ &=exp(y\log{\phi}+(1-y)\log(1-\phi))\\ &=exp(\log{(\frac{\phi}{1-\phi})}y+\log(1-\phi)) \end{align} p(y;ϕ)​=ϕy(1−ϕ)1−y=exp(ylogϕ+(1−y)log(1−ϕ))=exp(log(1−ϕϕ​)y+log(1−ϕ))​​
令 η = log ⁡ ( ϕ 1 − ϕ ) \eta=\log(\frac{\phi}{1-\phi}) η=log(1−ϕϕ​),得到 ϕ = 1 1 + e − η \phi=\frac{1}{1+e^{-\eta}} ϕ=1+e−η1​。这就是逻辑回归的激活函数。

逻辑回归建模预测 y ∣ x y|x y∣x,并假设 y ∣ x y|x y∣x服从伯努利分布,所以只需知道 p ( y ∣ x ) p(y|x) p(y∣x)。
其次需要一个线性模型,即 p ( y ∣ x ) = f ( w x ) p(y|x)=f(wx) p(y∣x)=f(wx)。
然后通过最大熵原则推出f,就是sigmoid函数。

为什么用对数损失函数

如果用平方损失函数,平方损失函数关于参数是非凸的。
对数损失函数是高阶连续可导的凸函数,由凸优化理论可以根据梯度下降法、牛顿法等求最优解。

逻辑回归优点

1、它是直接对分类可能性建模,无需事先假设数据分布,这样就避免了假设分布不准确问题。

2、它不仅预测类别,而且可以得到近似概率预测,这对许多概率辅助决策的任务很有用。

3、对率函数是任意阶可导凸函数,有很好的数学性质,现有许多的数值优化算法都可以直接用于求解。

参考资料

《统计学习方法》第6章
《计算广告》第10章
指数分布族(The Exponential Family)与广义线性回归(Generalized Linear Model GLM)
逻辑回归的目标函数(损失函数)是凸函数吗?有没有最优解?

逻辑斯谛(Logistic)回归相关推荐

  1. Logistic Regrestion (逻辑斯蒂克回归)

    Logistic Regrestion (逻辑斯蒂克回归) 为什么使用Logistic regression 给定训练数据,有无数种Linear regression分类(超平面 W x + b Wx ...

  2. 统计学习方法第六章作业:逻辑斯谛梯度下降法、最大熵模型 IIS / DFP 算法代码实现

    逻辑斯谛梯度下降法 import numpy as np import matplotlib.pyplot as pltclass logist:def __init__(self,a=1,c=Non ...

  3. AI理论知识基础(22)-逻辑斯蒂映射-伪随机数

    此外, 逻辑斯蒂(logistic)回归又称logistic回归分析,主要在流行病学中应用较多,比较常用的情形是探索某疾病的危险因素,根据危险因素预测某疾病发生的概率,等等.例如,想探讨胃癌发生的危险 ...

  4. [机器学习]Logistic回归

    目录 什么是逻辑斯蒂(Logistic)回归? 1.线性回归函数 2.  逻辑函数(Sigmoid函数) 3. Logistic回归函数 Logistic回归分类器 梯度上升算法 python实现梯度 ...

  5. 机器学习笔记之(3)——Logistic回归(逻辑斯蒂回归)

    本博文为逻辑斯特回归的学习笔记.由于仅仅是学习笔记,水平有限,还望广大读者朋友多多赐教. 假设现在有一些数据点,我们用一条直线对这些点进行拟合(该直线称为最佳拟合直线),这个拟合的过程就称为回归. 利 ...

  6. R语言第十讲 逻辑斯蒂回归

    模型函数介绍 Logistic Regression 虽然被称为回归,但其实际上是分类模型,并常用于二分类.Logistic Regression 因其简单.可并行化.可解释强深受工业界喜爱. Log ...

  7. 李航统计学习方法 Chapter6 逻辑斯蒂回归

    第6章 逻辑斯蒂回归和最大熵模型 逻辑斯谛回归(LR)是经典的分类方法 1.逻辑斯谛回归模型是由以下条件概率分布表示的分类模型.逻辑斯谛回归模型可以用于二类或多类分类. P(Y=k∣x)=exp⁡(w ...

  8. 聊聊关于使用逻辑斯蒂回归的使用方法

    逻辑斯蒂回归是个什么东西? 逻辑蒂斯函数 按数学的思维解读就是求逻辑函数的反函数. 以下是逻辑斯蒂的函数 百度百科上对这个函数的解释是: 逻辑斯谛模型是关于人口或种群增长的模型.它发现人口/种群增长会 ...

  9. Pytorch深度学习笔记(七)逻辑斯蒂回归

    目录 1. logistic(逻辑斯蒂)函数 2.二分类任务(binary classification)损失函数 3.二分类任务(binary classification)最小批量损失函数 4.逻 ...

最新文章

  1. Sqlite3的安装Windows
  2. 在你休息时,你的大脑运动皮层中重放习得的神经放电序列
  3. 收藏 | Redis 使用 10 个小技巧
  4. ASP.NET2.0实现无刷新客户端回调
  5. PaaS服务之路漫谈(二):Monolithic架构分析
  6. cvpr 深度估计_干货 | 2019 到目前为止的深度学习研究进展汇总
  7. python的socket连接不上_Python套接字只允许一个连接,但在新的连接上断开,而不是拒绝...
  8. jbod ugood 磁盘驱动状态_如何检查Mac磁盘空间,mac磁盘空间其他怎么清理
  9. unity 敌人自动攻击和寻路_Unity暑期萌新入门:环境篇
  10. MVC Json方法里的一个坑
  11. 6.4 Ext.core.DomQuery 单实例查询选择器,通过正则表达式查找DOM或者HTM
  12. 图解MySQL的各种 JOIN,看完不懂来找我!
  13. 默 of 2018:年终总结
  14. c语言实现统计过程控制,SPC统计过程控制的课程
  15. 手游CP说:产品做出来了,我们该怎么办?
  16. 中标麒麟Linux系统串口,中标麒麟操作系统串口调试方法研究-嵌入式-电子工程世界网...
  17. c++ gdal 矢量转栅格_gdal的矢量栅格化接口GDALRasterizeLayers使用(一)
  18. 12.图形裁剪——二维裁剪+三维裁剪+Sutherland-Cohen裁剪算法+中点分割算法
  19. 风控每日一问:合规管理、内部控制和全面风险管理有什么区别?
  20. 2021-02-03-linux命令

热门文章

  1. yuv转bmp说明2
  2. 浅析担保的五种方式及其适用范围
  3. matlab h系统控制器,H_∞控制理论和MATLAB工具箱应用于电力系统稳定器设计
  4. transformer 中的 attention
  5. 思派健康再次冲刺港股:上半年亏损3.5亿 腾讯为大股东
  6. C4D阿诺德渲染器:C4DtoA for Cinema 4D S24 for mac
  7. C++期末考试复习一
  8. 视频驱动程序概念整理
  9. 遇到问题需要关闭。我们对此引起的不便表示抱歉。
  10. 【学习编程】码住!大学生零基础自学Python学习顺序,搞反就麻烦咯~(必备小知识)