1. Logistic回归的基本原理
  2. logistic回归的优化算法

前言:
在分类任务中,我们是通过从输入xxx到输出yyy的映射fff的模型得出来的:
           y^=f(x)=argmaxp(y=c∣x,D)\hat{y}=f(x)=arg maxp(y=c|\mathbf{x},D)y^=f(x)=argmaxp(y=cx,D)
其中,我们定义yyy为离散值,其取值范围称之为标签空间:y={1,2,..,C}y=\left \{ 1,2,..,C \right \}y={1,2,..,C}; 当C=2C=2C=2为二分类问题,这时候的分布为bernoulli分布,该分布的概率表示:
            p(y∣x)=Ber(y∣μ(x))p(y|\mathbf{x})=Ber(y|\mu (\textbf{x}))p(yx)=Ber(yμ(x))
其中μ(x)=E(y∣x)=p(y=1∣x)\mu(\mathbf{x})=E(y|\mathbf{x})=p(y=1|\mathbf{x})μ(x)=E(yx)=p(y=1x)
我们复习下Bernoulli分布的概念:
  Bernoulli分布又称两点分布或0-1分布。若是Bernoulli试验成功,则Bernoulli随机变量XXX取值为1,否则为0。记试验成功的概率为θ\thetaθ,我们称XXX服从参数为θ\thetaθ的Bernoulli分布,记为X Ber(θ)X~Ber(\theta)X Ber(θ),概率函数(pmf)为:
           p(x)=θx(1−θ)(1−x)={θifx=11−θifx=0}p(x)=\theta^{x}(1-\theta)^{(1-x)}=\begin{Bmatrix} \theta & if x=1 \\ 1-\theta& ifx=0 \end{Bmatrix}p(x)=θx(1θ)(1x)={θ1θifx=1ifx=0}
其中 Bernoulli分布的均值:μ=θ\mu=\thetaμ=θ,方差:σ2=θ∗(1−θ)\sigma ^{2}=\theta \ast (1-\theta)σ2=θ(1θ)

1、logistic的基本原理
Logistic回归模型跟线性回归模型一样,也是线性模型,只是其条件概率p(y∣x)p(y|\mathbf{x})p(yx)的形式不同:
           p(y∣x)=Ber(y∣μ(x))p(y|\textbf{x})=Ber(y|\mu (\textbf{x}))p(yx)=Ber(yμ(x))
           μ(x)=σ(wTx)\mu (\textbf{x})=\sigma (\textbf{w}^{T}\textbf{x})μ(x)=σ(wTx)
其中sigmoid函数(S函数,图如下)定义为
           σ(a)=11+exp(−a)\sigma (a)=\frac{1}{1+exp(-a)}σ(a)=1+exp(a)1
          在这里插入图片描述
上述函数我们亦可以称为logistic函数或者logit函数,将实数aaa变切换到[0,1]区间。而且有因为该函数取值在[0,1]区间,所以logistic回归又被称为logit回归。
  为什么使用logistic函数呢,因为在神经科学中,神经元的对其输入进行加权和:f(x)=wTxf(x)=\textbf{w}^{T}\textbf{x}f(x)=wTx,如果该和大于某个阈值(即:f(x)>τf(x)>\tauf(x)>τ)的话,则神经元发放脉冲。而且,在logistic回归中,我们定义Log Odds Radio:
     LOR(x)=log⁡p(1∣x,w)p(0∣x,w)=log⁡[11+exp(−wTx)1+exp(−wTx)exp(−wTx)]LOR(\textbf{x})=\log\frac{p(1|\textbf{x},\textbf{w})}{p(0|\textbf{x},\textbf{w})}=\log[\frac{1}{1+exp(-\textbf{w}^{T}\textbf{x})}\frac{1+exp(-\textbf{w}^{T}\textbf{x})}{exp(-\textbf{w}^{T}\textbf{x})}]LOR(x)=logp(0x,w)p(1x,w)=log[1+exp(wTx)1exp(wTx)1+exp(wTx)]
          =log⁡(exp(wTx)=wTx=\log(exp(\textbf{w}^{T}\textbf{x})=\textbf{w}^{T}\textbf{x}=log(exp(wTx)=wTx
因此,如果LOR(x)=wTx>0LOR(\textbf{x})=\textbf{w}^{T}\textbf{x}>0LOR(x)=wTx>0,则神经元发放脉冲,即p(1∣x,w)>p(0∣x,w)p(1|\textbf{x},\textbf{w})>p(0|\textbf{x},\textbf{w})p(1x,w)>p(0x,w)
那么在logistic回归中,当:
         LOR(x)=wTx>0LOR(\textbf{x})=\textbf{w}^{T}\textbf{x}>0LOR(x)=wTx>0 时,y^=1\hat{y}=1y^=1
         LOR(x)=wTx&lt;0LOR(\textbf{x})=\textbf{w}^{T}\textbf{x}&lt;0LOR(x)=wTx<0 时,y^=0\hat{y}=0y^=0
wTx=0\textbf{w}^{T}\textbf{x}=0wTx=0时为决策面。因此a(x)=wTxa(\textbf{x})=\textbf{w}^{T}\textbf{x}a(x)=wTx为分类决策面,故logistic回归是一个线性分类器。

2、logistic回归的优化算法
我们知道logistic回归的概率函数为:p(y∣x)=Ber(y∣μ(x))p(y|\textbf{x})=Ber(y|\mu (\textbf{x}))p(yx)=Ber(yμ(x)),则令μi=μ(xi)\mu_{i}=\mu(\textbf{x}_{i})μi=μ(xi),则负log似然为:
       
      J(w)=NLL(w)=−∑i=1Nlog⁡[(μi)yi∗(1−μi)(1−yi)]J(\textbf{w})=NLL(\textbf{w})=-\sum_{i=1}^{N}\log[(\mu_{i})^{y_{i}}\ast(1-\mu_{i})^{(1-y_{i})} ]J(w)=NLL(w)=i=1Nlog[(μi)yi(1μi)(1yi)]
               =∑i=1N−[yilog⁡(μi)+(1−yi)log⁡(1−μi)]=\sum_{i=1}^{N}-[y_{i}\log(\mu_{i})+(1-y_{i})\log(1-\mu_{i})]=i=1N[yilog(μi)+(1yi)log(1μi)]

极大似然估计 等价于 最小logistic损失。那么J(w)J(\textbf{w})J(w)的优化求解可以使用梯度下降法或者牛顿法。
(1)梯度下降法
在这里插入图片描述
  求解在这里插入图片描述
  其中:在这里插入图片描述
算法与线性回归g(w)=∑i=1N(f(xi)−yi)xig(\textbf{w})=\sum_{i=1}^{N}(f(\textbf{x}_{i})-y_{i})\textbf{x}_{i}g(w)=i=1N(f(xi)yi)xi看起来一样,只是f(x)f(x)f(x)不一样,事实上所有的线性回归模型的梯度都是如此。
在这里插入图片描述
  (2)牛顿法
  牛顿法,其原则是使用函数f(x)f(x)f(x)的泰勒级数的前几项来寻找方程f(x)=0f(x)=0f(x)=0的根。
  我们知道一阶泰勒展开式:f(x)=f(xt)+f′(xt)(x−xt)f(x)=f(x^{t})+{f}&#x27;(x^{t})(x-x^{t})f(x)=f(xt)+f(xt)(xxt)
  所以,我们将导数g(w)g(\textbf{w})g(w)wt\textbf{w}^{t}wt处进行泰勒展开:   
       在这里插入图片描述
去掉高阶无穷小Op(w^−wt)Op(\hat{\textbf{w}}-\textbf{w}^{t})Op(w^wt),得到:
  在这里插入图片描述
  因此得到的迭代机制:
         在这里插入图片描述
 所以牛顿法又可以称为二阶梯度下降法,移动方向为:d=−(H(wt))−1g(wt)d=-(H(\textbf{w}^{t}))^{-1}g(\textbf{w}^{t})d=(H(wt))1g(wt);对比我们一阶梯度下降法,移动方向:d=−g(wt)d=-g(\textbf{w}^{t})d=g(wt)
 损失函数的求解过程,我们还需要了解迭代在加权最小二乘(iterative reweighted least squares,IRLS)原则,何谓IRLS,上述我们以得出:
在这里插入图片描述
 根据牛顿法的结果:     在这里插入图片描述
 所以IRLS:权重矩阵S\textbf{S}S不是常数,而且依赖参数向量w\textbf{w}w,我们必须使用标准方程来迭代计算,每次使用新的权重向量w\textbf{w}w来修正权重矩阵S\textbf{S}S。因此该算法称之为迭代再加权最小二乘,IRLS。
如下便是具体的公式迭代过程:
在这里插入图片描述
当然,上述是logistic回归没有正则化的过程,正则化logistic就是在J(w)J(\textbf{w})J(w)加上λ∣∣w∣∣2\lambda ||\textbf{w}||^{2}λw2(l2正则)或者λ∣w∣\lambda |\textbf{w}|λw(l1正则),同理求解过程结合线性回归模型的求解和上述不带正则的logistic回归的求解即可。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐