文章目录

  • 逻辑斯蒂分布
  • 二项逻辑回归模型
  • 模型参数估计
  • 多项逻辑斯蒂回归

逻辑斯蒂分布

逻辑斯蒂分布假设X是连续随机变量,且分布函数、密度函数如下:
F(x)=P(X⩽x)=11+exp⁡(−(x−μ)/γ)f(x)=F′(x)=e−(x−μ)/γγ(1+e−(x−μ)/γ)2F(x)=P(X\leqslant x)=\frac{1}{1+\exp(-(x-\mu)/\gamma)} \\ f(x) = F'(x) = \frac{e^{-(x-\mu)/\gamma}}{\gamma(1+e^{-(x-\mu)/\gamma})^2} F(x)=P(X⩽x)=1+exp(−(x−μ)/γ)1​f(x)=F′(x)=γ(1+e−(x−μ)/γ)2e−(x−μ)/γ​
式子中μ\muμ为位置参数,γ>0\gamma>0γ>0为形状参数。图像如下图所示:

上图的右边是分布函数F(x)F(x)F(x),可以看到是S形的曲线,以点(μ,12)(\mu , \frac{1}{2})(μ,21​)为对称中心,当形状参数γ\gammaγ的值越小,曲线在对称点附近增长越快。

二项逻辑回归模型

二项逻辑回归模型是二分类模型,由条件概率P(Y|X)表示,条件概率分布如下:
P(Y=1∣x)=exp⁡(w⋅x+b)1+exp⁡(w⋅x+b)P(Y=0∣x)=11+exp⁡(w⋅x+b)P(Y=1|x)=\frac{\exp(w\cdot x+b)}{1+\exp(w\cdot x+b)} \\ P(Y=0|x)=\frac{1}{1+\exp(w\cdot x+b)} P(Y=1∣x)=1+exp(w⋅x+b)exp(w⋅x+b)​P(Y=0∣x)=1+exp(w⋅x+b)1​
对于给定的x,可以求得P(Y=1∣x)P(Y=1|x)P(Y=1∣x)和P(Y=0∣x)P(Y=0|x)P(Y=0∣x)的概率,哪个概率大,就是哪个类别。为了方便,将全职向量和输入向量扩充,即w=(w(1),w(2),...,w(n),b),x=(x(1),x(2),...,x(n),1)w=(w^{(1)}, w^{(2)}, ...,w^{(n)},b), \; x=(x^{(1)}, x^{(2)}, ...,x^{(n)},1)w=(w(1),w(2),...,w(n),b),x=(x(1),x(2),...,x(n),1)。此时逻辑回归模型如下:
P(Y=1∣x)=exp⁡(w⋅x)1+exp⁡(w⋅x)(1)P(Y=1|x)=\frac{\exp(w\cdot x)}{1+\exp(w\cdot x)} \tag 1 P(Y=1∣x)=1+exp(w⋅x)exp(w⋅x)​(1)

P(Y=0∣x)=11+exp⁡(w⋅x)(2)P(Y=0|x)=\frac{1}{1+\exp(w\cdot x)} \tag 2 P(Y=0∣x)=1+exp(w⋅x)1​(2)

一个事件的几率是该事件发生与不发生的概率比值。即如果发生概率是p,那么该事件的几率为:p1−p\frac{p}{1-p}1−pp​,该事件的对数几率或logit函数是:
logit(p)=logp1−p(3)logit(p) = log \frac{p}{1-p} \tag 3 logit(p)=log1−pp​(3)
对逻辑斯蒂回归而言,将式子(1)(2)代入(3)得:
logP(Y=1∣x)1−P(Y=1∣x)=w⋅x(4)log \frac{P(Y=1|x)}{1-P(Y=1|x)} = w \cdot x \tag 4 log1−P(Y=1∣x)P(Y=1∣x)​=w⋅x(4)
上面的式子表明输出Y=1的对数几率是输入x的线性函数。

由式子(1)知可以将线性函数w⋅xw\cdot xw⋅x转换为概率:
P(Y=1∣x)=exp(w⋅x)1+exp(w⋅x)(5)P(Y=1|x) = \frac{exp(w\cdot x)}{1+exp(w\cdot x)} \tag 5 P(Y=1∣x)=1+exp(w⋅x)exp(w⋅x)​(5)
线性函数的值越接近正无穷,概率值越接近1。反之,越接近负无穷,概率值越接近0,这就是逻辑斯蒂回归模型。

模型参数估计

假设:
P(Y=1∣x)=π(x),P(Y=0∣x)=1−π(x)(6)P(Y=1|x)=\pi(x), \quad P(Y=0|x)=1-\pi(x) \tag 6 P(Y=1∣x)=π(x),P(Y=0∣x)=1−π(x)(6)
似然函数为:
∏i=1N[π(xi)]yi[1−π(xi)](1−yi){\begin{aligned} \prod_{i=1}^{N}[\pi(x{i})]^{y_{i}}[1-\pi(x_{i})]^{(1-y_{i})} \end{aligned}} i=1∏N​[π(xi)]yi​[1−π(xi​)](1−yi​)​
对数似然函数为:
L(w)=log⁡(∏i=1N[π(xi)]yi[1−π(xi)](1−yi))=∑i=1Nyilog⁡(π(xi))+(1−yi)log⁡(1−π(xi))=∑i=1Nyilog⁡(π(xi))−yilog⁡(1−π(xi))+log⁡(1−π(xi))=∑i=1N[yilogπ(xi)1−π(xi)+log(1−π(xi))]=∑i=1N[yi(w⋅xi)−log⁡(1+exp⁡(w⋅xi))]\begin{aligned} L(w) &= \log({\begin{aligned} \prod_{i=1}^{N}[\pi(x{i})]^{y_{i}}[1-\pi(x_{i})]^{(1-y_{i})} \end{aligned}}) \\ &= \sum_{i=1}^{N} y_i \log(\pi(x_{i})) + (1-y_i) \log(1 - \pi(x_{i})) \\ &= \sum_{i=1}^{N} y_i \log(\pi(x_{i}))-y_i\log(1 - \pi(x_{i})) + \log(1 - \pi(x_{i})) \\ &= \sum_{i=1}^{N} [y_i log \frac{\pi(x_{i})}{1-\pi(x_{i})}+log(1-\pi(x_{i}))] \\ &=\sum_{i=1}^N[y_i(w\cdot x_i)-\log(1+\exp(w\cdot x_i))] \end{aligned} L(w)​=log(i=1∏N​[π(xi)]yi​[1−π(xi​)](1−yi​)​)=i=1∑N​yi​log(π(xi​))+(1−yi​)log(1−π(xi​))=i=1∑N​yi​log(π(xi​))−yi​log(1−π(xi​))+log(1−π(xi​))=i=1∑N​[yi​log1−π(xi​)π(xi​)​+log(1−π(xi​))]=i=1∑N​[yi​(w⋅xi​)−log(1+exp(w⋅xi​))]​
上式的最后一步由公式(4)(5)(6)导出。

接下来对L(w)L(w)L(w) 求极大值,得到www 的估计值。这样问题就变成了以对数似然函数为目标的最优化问题,该问题可以用牛顿法进行求解。

最大化似然函数等价于最小化下式:
l(w)=∑i=1N[log⁡(1+exp⁡(w⋅xi))−yi(w⋅xi)]\mathcal l(w) = \sum_{i=1}^N[\log(1+\exp(w\cdot x_i))-y_i(w\cdot x_i)] l(w)=i=1∑N​[log(1+exp(w⋅xi​))−yi​(w⋅xi​)]
l(w)\mathcal l(w)l(w) 是关于www 的高阶可导连续凸函数, 采用牛顿法进行迭代求解。

l(w)\mathcal l(w)l(w) 是关于www 的一阶导数,二阶导数分别为:
∂l(w)∂w=∑i=1N[−yixi+xiexp⁡(w⋅xi)1+exp⁡(w⋅xi)]=−∑i=1Nxi(yi−exp⁡(w⋅xi)1+exp⁡(w⋅xi))=−∑i=1Nxi(yi−P(Y=1∣x))\begin{aligned}\frac{\partial\mathcal l(w)}{\partial w} &=\sum_{i=1}^N[-y_ix_i+\frac{x_i\exp(w\cdot x_i)}{1+\exp(w\cdot x_i)}]\\&=-\sum_{i=1}^N x_i\left(y_i-\frac{\exp(w\cdot x_i)}{1+\exp(w\cdot x_i)}\right)\\&=-\sum_{i=1}^N x_i\left(y_i-P(Y=1|x)\right)\end{aligned} ∂w∂l(w)​​=i=1∑N​[−yi​xi​+1+exp(w⋅xi​)xi​exp(w⋅xi​)​]=−i=1∑N​xi​(yi​−1+exp(w⋅xi​)exp(w⋅xi​)​)=−i=1∑N​xi​(yi​−P(Y=1∣x))​

∂2l(w)∂w∂wT=∂∑i=1Nxiexp⁡(w⋅xi)1+exp⁡(w⋅xi)∂wT=∑i=1Nxi(1+exp⁡(w⋅xi))exp⁡(w⋅xi)xi−exp⁡(w⋅xi)exp⁡(w⋅xi)xi(1+exp⁡(w⋅xi))2=∑i=1NxixiTexp⁡(w⋅xi)(1+exp⁡(w⋅xi))2=∑i=1NxixiTP(Y=1∣x)(1−P(Y=1∣x))\begin{aligned}\frac{\partial^2 \mathcal l(w)}{\partial w \partial w^T}&=\frac{\partial \sum_{i=1}^N\frac{x_i\exp(w\cdot x_i)}{1+\exp(w\cdot x_i)}}{\partial w^T} \\&=\sum_{i=1}^N x_i \frac{(1+\exp(w\cdot x_i))\exp(w\cdot x_i)x_i-\exp(w\cdot x_i)\exp(w\cdot x_i)x_i}{(1+\exp(w\cdot x_i))^2}\\&=\sum_{i=1}^Nx_ix_i^T\frac{\exp(w\cdot x_i)}{(1+\exp(w\cdot x_i))^2}\\&=\sum_{i=1}^Nx_ix_i^TP(Y=1|x)(1-P(Y=1|x))\end{aligned} ∂w∂wT∂2l(w)​​=∂wT∂∑i=1N​1+exp(w⋅xi​)xi​exp(w⋅xi​)​​=i=1∑N​xi​(1+exp(w⋅xi​))2(1+exp(w⋅xi​))exp(w⋅xi​)xi​−exp(w⋅xi​)exp(w⋅xi​)xi​​=i=1∑N​xi​xiT​(1+exp(w⋅xi​))2exp(w⋅xi​)​=i=1∑N​xi​xiT​P(Y=1∣x)(1−P(Y=1∣x))​

其t+1t+1t+1 轮迭代更新的公式为:
w(t+1)=w(t)−(∂2l(w)∂w∂wT)−1∂l(w)∂ww^{(t+1)} = w^{(t)} - \left(\frac{\partial^2 \mathcal l(w)}{\partial w \partial w^T}\right)^{-1} \frac{\partial \mathcal l(w)}{\partial w} w(t+1)=w(t)−(∂w∂wT∂2l(w)​)−1∂w∂l(w)​

重复迭代过程,直到获得收敛的参数w∗w^*w∗,最终逻辑回归模型如下:
P(Y=1∣x)=exp⁡(w∗⋅x)1+exp⁡(w∗⋅x)P(Y=0∣x)=11+exp⁡(w∗⋅x)P(Y=1|x)=\frac{\exp(w^*\cdot x)}{1+\exp(w^*\cdot x)} \\ P(Y=0|x)=\frac{1}{1+\exp(w^*\cdot x)} P(Y=1∣x)=1+exp(w∗⋅x)exp(w∗⋅x)​P(Y=0∣x)=1+exp(w∗⋅x)1​

多项逻辑斯蒂回归

上面介绍的回归模型是用于二分类的,可以将其扩展成用于多分类的模型。

实现多类别逻辑回归模型最简单的方法是,对于所有K个可能的分类结果,我们运行K−1个独立二元逻辑回归模型,在运行过程中把其中一个类别看成是主类别,然后将其它K−1个类别和我们所选择的主类别分别进行回归。通过这样的方式,如果选择结果K作为主类别的话,我们可以得到以下公式:
ln⁡P(Y=1∣x)P(Y=K∣x)=w1⋅xln⁡P(Y=2∣x)P(Y=K∣x)=w2⋅x⋯ln⁡P(Y=K−1∣x)P(Y=K∣x)=wK−1⋅x\begin{aligned} \ln\frac{P(Y=1|x)}{P(Y=K|x)}&=w_1\cdot x\\ \ln\frac{P(Y=2|x)}{P(Y=K|x)}&=w_2\cdot x\\ \cdots\\ \ln\frac{P(Y=K-1|x)}{P(Y=K|x)}&=w_{K-1}\cdot x\\ \end{aligned} lnP(Y=K∣x)P(Y=1∣x)​lnP(Y=K∣x)P(Y=2∣x)​⋯lnP(Y=K∣x)P(Y=K−1∣x)​​=w1​⋅x=w2​⋅x=wK−1​⋅x​
得到K取值为1,2,…,K-1的概率表示:
P(Y=1∣x)=P(Y=K∣x)exp⁡(w1⋅x)P(Y=2∣x)=P(Y=K∣x)exp⁡(w2⋅x)⋯P(Y=K−1∣x)=P(Y=K∣x)exp⁡(wK−1⋅x)\begin{aligned} {P(Y=1|x)}&={P(Y=K|x)}\exp(w_1\cdot x)\\ {P(Y=2|x)}&={P(Y=K|x)}\exp(w_2\cdot x)\\ \cdots\\ {P(Y=K-1|x)}&={P(Y=K|x)}\exp(w_{K-1}\cdot x)\\ \end{aligned} P(Y=1∣x)P(Y=2∣x)⋯P(Y=K−1∣x)​=P(Y=K∣x)exp(w1​⋅x)=P(Y=K∣x)exp(w2​⋅x)=P(Y=K∣x)exp(wK−1​⋅x)​
即:
P(Y=k∣x)=P(Y=K∣x)exp⁡(wk⋅x),k=1,2,…,K−1{P(Y=k|x)}={P(Y=K|x)}\exp(w_k\cdot x), k=1,2,\dots,K-1 P(Y=k∣x)=P(Y=K∣x)exp(wk​⋅x),k=1,2,…,K−1
又由于K个可能结果的概率和为1,得到:
P(Y=K∣x)=1−∑j=1K−1P(Y=j∣x)=1−P(Y=K∣x)∑j=1K−1exp⁡(wj⋅x)\begin{aligned} P(Y=K|x)&=1-\sum_{j=1}^{K-1}P(Y=j|x)\\ &=1-P(Y=K|x)\sum_{j=1}^{K-1}\exp(w_j\cdot x) \end{aligned} P(Y=K∣x)​=1−j=1∑K−1​P(Y=j∣x)=1−P(Y=K∣x)j=1∑K−1​exp(wj​⋅x)​
把上面的式子中的P(Y=K∣x)P(Y=K|x)P(Y=K∣x)看作未知数,求得解析解为:
P(Y=K∣x)=11+∑j=1K−1exp⁡(wj⋅x)(7)P(Y=K|x)=\frac{1}{1+\sum_{j=1}^{K-1}\exp(w_j\cdot x)} \tag 7 P(Y=K∣x)=1+∑j=1K−1​exp(wj​⋅x)1​(7)
进而有:
P(Y=k∣x)=P(Y=K∣x)exp⁡(wk⋅x),k=1,2,…,K−1=exp⁡(wk⋅x)1+∑j=1K−1exp⁡(wj⋅x),k=1,2,…,K−1(8)\begin{aligned} {P(Y=k|x)}&={P(Y=K|x)}\exp(w_k\cdot x), k=1,2,\dots,K-1\\ &=\frac{\exp(w_k\cdot x)}{1+\sum_{j=1}^{K-1}\exp(w_j\cdot x)}, k=1,2,\dots,K-1\\ \end{aligned} \tag 8 P(Y=k∣x)​=P(Y=K∣x)exp(wk​⋅x),k=1,2,…,K−1=1+∑j=1K−1​exp(wj​⋅x)exp(wk​⋅x)​,k=1,2,…,K−1​(8)
于是由式子(7)(8)得知,我们训练K-1个模型后,第K个模型随之确定。每输入一个样本,就能得到该样本属于所有K个类别的概率,选择概率最大的作为它的类别。

参考文章:

《统计学习方法 第二版》

多类别逻辑回归-维基百科 https://en.wikipedia.org/wiki/Multinomial_logistic_regression

逻辑斯蒂回归原理(二分类、多分类)相关推荐

  1. 用二项逻辑斯蒂回归解决二分类问题

    逻辑斯蒂回归: 逻辑斯蒂回归是统计学习中的经典分类方法,属于对数线性模型.logistic回归的因变量可以是二分类的, 也可以是多分类的 基本原理 logistic 分布 折X是连续的随机变量,X服从 ...

  2. 逻辑斯蒂回归原理及其概率计算

    目录 逻辑斯蒂回归 原理过程 预测函数 原理代码实现 例子 最大似然估计 原理 逻辑斯蒂回归概率计算 导包 手动计算 多分类概率计算 逻辑斯蒂回归 利用Logistics回归进行分类的主要思想是:根据 ...

  3. 【机器学习】逻辑斯蒂回归原理推导与求解

    1.概念 逻辑斯蒂回归又称为"对数几率回归",虽然名字有回归,但是实际上却是一种经典的分类方法,其主要思想是:根据现有数据对分类边界线(Decision Boundary)建立回归 ...

  4. 【机器学习】逻辑斯蒂回归原理

    逻辑斯蒂函数 引入: 在线性感知器算法中,我们使用了一个f(x)=x函数,作为激励函数,而在逻辑斯蒂回归中,我们将会采用sigmoid函数作为激励函数,所以它被称为sigmoid回归也叫对数几率回归( ...

  5. 逻辑斯蒂分布模型、二项逻辑斯蒂回归模型、多项逻辑斯蒂回归模型

    一.逻辑斯蒂分布/回归模型 模型描述的是一种什么样的事件或现象: 设X是连续随机变量,X服从逻辑斯蒂回归分布是指X具有下列分布函数和密度函数: 附上逻辑斯蒂分布的密度函数与分布函数,如下: 物理含义, ...

  6. 逻辑斯蒂回归 逻辑回归_逻辑回归简介

    逻辑斯蒂回归 逻辑回归 Logistic regression is a classification algorithm, which is pretty popular in some commu ...

  7. 逻辑斯蒂回归(logisic regression)和SVM的异同

    逻辑斯蒂回归主要用于二分类,推广到多分类的话是类似于softmax分类.求 上述问题可以通过最大化似然函数求解. 上述问题可以采用最小化logloss进行求解. 一般地,我们还需要给目标函数加上正则项 ...

  8. 机器学习第八篇:详解逻辑斯蒂回归算法

    01|基本概念: 在介绍逻辑回归模型以前,先介绍一下逻辑斯谛分布. 设X是连续型随机变量,X服从逻辑斯蒂分布是指X具有下列分布函数F(x)和密度函数f(x): 逻辑斯谛分布的分布函数F(x)的曲线如图 ...

  9. 逻辑斯蒂回归_逻辑回归 - 3 逻辑回归模型

    1 逻辑斯蒂回归模型 二项逻辑斯蒂回归模型是一种分类模型,由条件概率分布 表示,形式为参数化的逻辑斯蒂分布,这里随机变量 取值为实数,随机变量 取值为1或-1. 对于给定的输入实例 ,按照上面式可以求 ...

最新文章

  1. 最全的ASP.NET开源CMS汇总
  2. 23种设计模式C++源码与UML实现--备忘录模式
  3. rabbitMQ教程 spring整合rabbitMQ代码实例
  4. lingo解题报告内容解释
  5. leetcode - 448. 找到所有数组中消失的数字
  6. AI人才大战硝烟袅袅,缺口该如何填补?
  7. CKEditor 5 v19.1.1 发布,新增导出为 PDF 功能
  8. nodejs 端口被占解决
  9. HiJson(Json格式化工具)64位中文版下载 v2.1.2
  10. DB2 SQLCODE 异常大全编辑(四)
  11. 宏晶STC单片机使用STC-ISP串口烧录失败的解决方法及实例汇总 (Ver0.99.15)
  12. [转载]谈谈我对攻读计算机研究生的看法
  13. PHP扭蛋机原理,微信小程序 扭蛋抽奖机css3动画实现详解
  14. git cheatsheet
  15. 华为鸿蒙2.0 pc,华为鸿蒙工具下载-华为鸿蒙v2.0正式电脑下载 - 91单机网
  16. 《Tableau数据可视化从入门到精通》之Tableau系列软件概况
  17. node安装以及nvm管理node版本
  18. license控制服务器修改时期,license.dat授权替换方式
  19. 按照功能划分游戏音效有什么类型呢
  20. 优惠码:牛客网-直通BAT面试算法精品课

热门文章

  1. ipad和windows共享文件的方法
  2. 【2020.11.2 洛谷团队赛 普及组 模拟赛】T2 U138390 三角形
  3. 2021年度高工金球奖投票正式开启
  4. 阿里云Redis性能压力测试(二十)
  5. pyecharts 饼图绘制
  6. 一键 caddy php h5ai_vps 搭建h5ai 配合 Aria2实现离线下载和在线播放
  7. Managing Index-Organized Tables
  8. NLP-Beginner:自然语言处理入门练习----task 2基于机器学习的文本分类
  9. ajax局部刷新html页面,Ajax实现页面局部刷新
  10. JetSmartFilters配合Elementor Posts使用 – 简单但好用