机器学习之Logistic回归

yukyinbaby 2019-06-27

1、所谓逻辑斯蒂回归

机器学习之Logistic回归(1.1);

逻辑斯蒂回归就是想办法将线性回归模型用于分类(《机器学习》中称为对数几率回归)。线性回归模型产生的预测值可能是所有实值,不利于分类;为了用于二分类任务,希望将预测值z转换为0/1值;阶跃函数:
机器学习之Logistic回归(1.2);

可以将z转换为0/1值,但是阶跃函数在x=0处不连续,所以用逻辑斯谛函数(logisitic function,即Sigmoid函数)
机器学习之Logistic回归(1.3);

近似代替阶跃函数,将线性模型的预测值转换为接近0或1的值(Sigmoid函数的输出值在z=0处变化很陡,可以认为大部分值都是接近0或1)。

2、公式

对公式(1.3)取对数,有
机器学习之Logistic回归(2.1);

将y视为样本x作为正例的可能性,1-y为反例。将y视为后验概率估计,则二项逻辑斯蒂回归模型如下:
机器学习之Logistic回归

令:
机器学习之Logistic回归

由伯努利分布的概率公式:
机器学习之Logistic回归(2.6);

得似然函数和对数似然函数:
机器学习之Logistic回归(2.7);
机器学习之Logistic回归(2.8);

3、梯度上升法的代码与公式

其实只有这一节是我想写的
机器学习之Logistic回归
《机器学习实战》第五章程序清单5-1下面代码的由来:

weights = weights + alpha * dataMatrix.transpose()* error

书中使用的是梯度上升法
机器学习之Logistic回归(3.1)

,仅对该行代码做推导,对式(2.8)求关于w的偏导数,得:
机器学习之Logistic回归(3.2)

所以,
机器学习之Logistic回归是代码中列向量error的元素,xi属于代码中矩阵dataMatrix。

4、参考资料

《机器学习》周志华
《统计学习方法》李航
《机器学习实战》

相关推荐