逻辑回归说明

一般线性模型的数学定义为:
:---------: y=β0+β1x1+β2x2+...+βkxk+εy=\beta_0+\beta_1x_1+\beta_2x_2+...+\beta_kx_k+\varepsilon
其中 x1,...,xkx_1,...,x_k 是自变量,yy 是因变量, β0\beta_0 是常数项, β1,...,βk\beta_1,...,\beta_k 是回归系数。, ε\varepsilon 是随机误差项。

但是通常在研究的时候,研究的因变量是二分类的结果,比如研究驾驶技能的高低(高=1,低=0)或者是否贫困(是=1,否=0)。

在这是因变量并没有服从正态分布,而是服从二项分布,换言之因变量y=1=0y=1或=0,均有存在的概率,对于这类问题,在使用一般的线性回归已经不能够解决。

这是可以引入广义线性回归模型,这里的广义的含义是指因变量yy已经并不服从正态分布,而是服从二项分布、泊松分布等。

广义线性模型只是在其中加上了关联函数(连接函数),在机器学习中也叫做**函数。

在逻辑回归中,这个关联函数是Sigmoid函数(Sigmoid函数是一个在生物学中常见的S型函数,也称为S型生长曲线。 在信息科学中,由于其单增以及反函数单增等性质,Sigmoid函数常被用作神经网络的**函数,将变量映射到0,1之间)

这一函数具有
优点:平滑、易于求导。且值域在【0,1】正好对应概率。
缺点:**函数计算量大,反向传播求误差梯度时,求导涉及除法;反向传播时,很容易就会出现梯度消失的情况,从而无法完成深层网络的训练。【求解系数矩阵的时候,会有这类问题出现】

Sigmoid函数由下列公式定义
:---------: f(x)=11+ex=ex1+exf(x)=\frac{1}{1+e^{-x}}=\frac{e^{x}}{1+e^{x}}
函数对应的曲线是:
逻辑回归说明
那么问题在于,为什么要用这个连接函数,这个函数到底有什么用呢?其实在机器学习中叫做**函数,没有广义线性模型(GLM)叫的直接。

因为有了这个函数,实际上在一般线性模型中
y=β0+β1x1+β2x2+...+βkxk+εy=\beta_0+\beta_1x_1+\beta_2x_2+...+\beta_kx_k+\varepsilonyy推广出去时,假如我定义当{yy<50的时候,z=0z=0yy>=50的时候,z=z= 1},这时如果研究zzx1,...,xkx_1,...,x_k之间的关系就是研究二分类问题。

用式子表示就是:
:---------: z=ey1+ey=eβ0+β1x1+β2x2+...+βkxk+ε1+eβ0+β1x1+β2x2+...+βkxk+εz=\frac{e^{y}}{1+e^{y}}=\frac{e^{\beta_0+\beta_1x_1+\beta_2x_2+...+\beta_kx_k+\varepsilon}}{1+e^{\beta_0+\beta_1x_1+\beta_2x_2+...+\beta_kx_k+\varepsilon}}

在这里实现了一个结果就是将本来是正态分布的结果转换成【0,1】之间的结果,换言之也可以理解这里研究的是z=1z=1的概率为多少,实际上这里算的zz的值就是通过连接函数利用自变量x1,...,xkx_1,...,x_k判断分类的情况,这也就是对于逻辑回归的数学解释,以及机器学习中逻辑回归的解释。

通过这里的解释,可以理解模型(一般线性模型、逻辑回归模型)是怎么来的,后面会逐步更新自变量前面对应的系数是怎么求解的。

相关文章: