逻辑回归

ryluo 2020-08-20 10:15:00

基本原理:

逻辑回归本质上是将线性回归的输出通过sigmoid($\frac{1}{1+e^{-f(x)}}$)函数将输出值映射到[0,1]的区间,将该值作为二分类中某个类别的概率。对于线性回归有:

其中$w,b$是线性回归模型的参数,输出值$f(x)$越接近真实值$y$越好,对于如何使得$f(x)$与$y$尽可能的接近,其实是最优化问题,这里既可以使用最小二乘法也可以使用梯度下降法等最优化方法求解参数的值。


逻辑回归有个别名叫做对数几率回归,这里需要与对数线性回归进行区分,前者是几率的对数,后者是线性模型的对数,先说说后者吧!对数线性回归是将线性回归的输出取对数,即$f(x)’=e^{w^Tx+b}$,也就是让$f(x)’$尽可能的接近$y$,这里取对数其实是对输入的线性空间将 输出映射到了非线性空间,因为$f(x)’$是一个非线性函数,所以增加了线性回归的非线性性。


那么什么是对数几率回归呢?首先需要知道几率的定义:一个事件发生的几率是指该事件发生的概率与该事件不发生的概率的比值,加入事件发生的概率是$p$那么该事件的几率是$\frac{p}{1-p}$,在回到对数几率回归中来,上述已经说明了逻辑回归其实是将线性回归的输出映射到[0,1]之间,因为逻辑回归是一个二分类问题,那么$Y=1$的概率可以表示为用公式表达就是:

与其相反的就是$Y=0$的概率为:

所以有几率公式可得:

再对几率取对数有(本来取对数之后有个负号,但是w和b都是参数,为了公式好看一点将负号放到w和b中去):

我们发现逻辑回归的对数几率居然是线性回归模型,其实这也是逻辑归回的由来。


逻辑回归的定义:其实模型的定义前面已经有提到过了,下面给出正式的定义:

其中:

所以逻辑回归的参数就是线性归回部分的参数$w,b$,如何求解该参数呢?

由于逻辑回归本质上是一个概率的输出,所以求其参数的方法可以使用极大似然估计的方法进行求解,其似然函数为:

对数似然为函数为(最后一步化简中的负号放到参数中去了):

所以可以通过梯度下降法求解上述的对数似然函数的参数值。


使用梯度下降时候需要对目标函数进行求导,上述目标函数的导数为: