【统计机器学习】逻辑回归

1. 逻辑斯蒂分布

首先介绍逻辑斯蒂分布(logistic distribution)。

设X是连续随机变量,X服从逻辑斯蒂分布是指X具有下列分布函数和密度函数:
F(x)=P(Xx)=11+e(xμ)/γF(x)=P(X\leqslant x)=\frac{1}{1+e^{-(x-\mu)/\gamma}}
f(x)=F(x)=e(xμ)/γγ(1+e(xμ)/γ)2f(x)=F`(x)=\frac{e^{-(x-\mu)/\gamma}}{\gamma(1+e^{-(x-\mu)/\gamma})^2}
其中,μ\mu为位置函数,γ\gamma为形状参数

图形如下所示。分布函数属于逻辑斯蒂函数。以点(μ,12\mu,\frac{1}{2})为中心对称。
【统计机器学习】逻辑回归

2.二项逻辑斯蒂回归模型

二项逻辑斯蒂回归模型是一类分类模型。由条件概率分布P(Y|X)表示。这里,随机变量X取值为实数,Y取值为0或1。通过监督学习的方式来估计模型参数

逻辑斯蒂回归模型

二项逻辑斯蒂回归模型是如下的概率分布:

P(Y=1x)=exp(wx+b)1+exp(wx+b)P(Y=1|x)=\frac{exp(w\cdot x+b)}{1+exp(w\cdot x+b)}
P(Y=0x)=11+exp(wx+b)P(Y=0|x)=\frac{1}{1+exp(w\cdot x+b)}

这里xϵRnx\epsilon R^n是输入,Yϵ[0,1]Y\epsilon[{0,1]}是输出。ωϵRn\omega \epsilon R^nbϵRb\epsilon R是参数。ω\omega是权重,b是偏置

逻辑斯蒂回归模型是比较P(Y=1x)P(Y=1|x)P(Y=0x)P(Y=0|x)的大小,将实例x分到概率值较大的那一个

所以我们需要做的是给定训练集{x,y},去学习到其中的ω\omega和b参数

有时为了方便,将权值向量ω\omega和输入向量x进行扩充,把偏置量b表示成统一的形式。
ω=(ω(1),ω(2),...,ω(n),b)T\omega=(\omega^{(1)},\omega^{(2)},...,\omega^{(n)},b)^T,x=(x(1),x(2),...x(n),1)Tx=(x^{(1)},x^{(2)},...x^{(n)},1)^T,这时逻辑斯蒂回归模型如下:

P(Y=1x)=exp(wx)1+exp(wx)P(Y=1|x)=\frac{exp(w\cdot x)}{1+exp(w\cdot x)}
P(Y=0x)=11+exp(wx)P(Y=0|x)=\frac{1}{1+exp(w\cdot x)}

对数几率函数

现在说明逻辑斯蒂回归模型的特点:一个事件的几率(odds)是指该事件发生的概率p与该事件不发生的概率(1-p)的比值。表示成

logit(p)=logp1plogit(p) = log\frac{p}{1-p}

代入逻辑斯蒂回归得到:

logP(Y=1x)1P(Y=1x)=ωx\log\frac{P(Y=1|x)}{1-P(Y=1|x)}=\omega\cdot x

这说明在逻辑斯蒂回归模型,输出Y的对数几率是输入x的线性模型(或者x的线性函数表示的函数)。其中线性函数的值越接近正无穷,概率越接近1。线性函数的值越接近负无穷,概率越接近0。

模型参数估计

逻辑斯蒂回归模型在学习的时候,给定训练集T={(x1,y1),(x2,y2),...,(xN,yN)},xϵRN,yϵ{0,1}T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\},x\epsilon R^N,y\epsilon\{0,1\}。可以应用极大似然估计法来估计模型参数ω\omega,得到逻辑斯蒂回归模型。


P(Y=1x)=π(x),P(Y=0x)=1π(x)P(Y=1|x)=\pi(x) , P(Y=0|x)=1-\pi(x)

似然函数为
i=1N[π(xi)]yi[1π(xi)]1yi\prod_{i=1}^N[\pi(x_i)]^{y_i}[1-\pi(x_i)]^{1-y_i}

对数似然函数为
L(w)=i=1Nyilog(π(xi))+(1yi)log(1π(xi))   =i=1Nyilog(π(xi))yilog(1π(xi))+log(1π(xi))   =i=1Nyilogπ(xi)1π(xi)+log(1π(xi))   =i=1Nyi(ωxi)log(1+exp(ωx))L(w)=\sum_{i=1}^Ny_i\log(\pi(x_i))+(1-y_i)\log(1-\pi(x_i))\\ \qquad \,\,\,=\sum_{i=1}^Ny_i\log(\pi(x_i))-y_i\log(1-\pi(x_i))+\log(1-\pi(x_i)) \\ \qquad \,\,\,=\sum_{i=1}^Ny_i\log\frac{\pi(x_i)}{1-\pi(x_i)}+\log(1-\pi(x_i)) \\ \qquad \,\,\,=\sum_{i=1}^Ny_i(\omega\cdot x_i)-\log(1+exp(\omega \cdot x))

L(w)L(w)进行求极大值,就得到了ω\omega的估计值

这样问题就转变为了对以对数似然函数为目标函数的最优化问题。逻辑斯蒂回归通常采用梯度下降法和拟牛顿法。

补充
这里对上面的log(1π(xi))\log(1-\pi(x_i))进行补充说明


logP(Y=1x)1P(Y=1x)=ωx\log\frac{P(Y=1|x)}{1-P(Y=1|x)}=\omega\cdot x
可知
logπ(xi)1π(xi)=ωxπ(xi)1π(xi)=exp(ωx)11π(xi)=exp(ωx)+11π(xi)=1exp(ωx)+1log(1π(xi))=log(1+exp(ωx))\log\frac{\pi(x_i)}{1-\pi(x_i)}= \omega\cdot x \Rightarrow \\\frac{\pi(x_i)}{1-\pi(x_i)}=exp({\omega\cdot x}) \Rightarrow \frac{1}{1-\pi(x_i)}=exp({\omega\cdot x})+1\Rightarrow \qquad1-\pi(x_i)=\frac{1}{exp({\omega\cdot x})+1} \Rightarrow \log(1-\pi(x_i))=-\log(1+exp(\omega \cdot x))