机器学习经典算法(2)逻辑回归

1.逻辑回归简介


       逻辑回归(logistic regression)是机器学习模型中的基础模型,周志华老师的书中翻译为对数几率回归。很多模型都涉及到逻辑回归,比如SVM、GBDT、AdaBoost等。虽然名字当中有“回归”两个字,但是逻辑回归是用于分类,它可以理解为线性函数和一单调可微函数组成的复合函数。常用的单调可微函数为对数几率函数(Logistic function),也即Sigmoid函数:

                 

其图像为:

它将自变量x的值转化为一个在0~1范围内的值,此函数在神经网络模型中具有重要作用,是神经网络常用的激活函数。将(1)式中的z换为线性函数得:

这就是逻辑回归的基本模型。

2.二项逻辑回归模型


       逻辑回归进行分类时,不仅给出分类类别,而且还给出了预测概率,在二分类问题中,若(2)式y>0.5则被归为1类,小于0.5被归为0类。二项逻辑回归的条件概率为:

 其中w为权值向量,b为偏置,wx为w和x的内积。对于给定的数据x,我们也可以通过比较两条件概率的大小,将x分到概率值较大的那一类。

       关于逻辑回归模型,在介绍它的特点之前先了解几率的概念。一个事件的几率指的是该事件发生的概率与不发生的概率的比值。如果事件发生的概率为p,那么该事件的几率是p/(1-p),该事件的对数几率函数是:


对于逻辑回归模型,将式(3)带入式(4)得:


这就是说,在逻辑回归模型中,输出Y=1的对数几率是输入x的线性函数,或者说输出Y=1的对数几率是由输入x的线性函数表示的模型。

3.代价函数


      逻辑回归模型已经介绍完了,下面就是根据给定的训练数据去估计模型参数w和b,所以,需要定义代价函数。关于代价函数,在看书之前我的第一反应是和线性回归一样,用误差平方和作为代价函数:

   

其中h(x)是根据式(2)的预测值,y是真实值。然而,将式(2)带入式(6)会发现,此代价函数是非凸函数,这就说明此代价函数有许多局部最小值,不利于求解最优解。

       事实上,逻辑回归模型的参数是通过极大似然估计法估计的,即其代价函数可以通过极大似然估计来定义。设:

,则似然函数为:

为简化运算,对式(7)取对数得:

根据前面说的对数几率,式(8)可继续化简为:

我们的代价函数就是式(8)前面加个负号:

   

下面我们将通过梯度下降法来更新模型参数w,b,来使代价函数值最小,模型达到最优:

                

偏导求解如下:

将上面结果带入式(11)得w,b参数更新结果:


参考:

https://baike.baidu.com/item/logistic%E5%9B%9E%E5%BD%92/2981575?fr=aladdin

https://blog.csdn.net/u014258807/article/details/80616647 
 

猜你喜欢

转载自blog.csdn.net/weixin_41036461/article/details/88384875