首页 > 其他 > 详细

机器学习(4)之Logistic回归

时间:2014-09-11 23:45:12      阅读:384      评论:0      收藏:0      [点我收藏+]

机器学习(4)之Logistic回归

1. 算法推导 

     与之前学过的梯度下降等不同,Logistic回归是一类分类问题,而前者是回归问题。回归问题中,尝试预测的变量y是连续的变量,而在分类问题中,y是一组离散的,比如y只能取{0,1}。

  假设一组样本为这样如图所示,如果需要用线性回归来拟合这些样本,匹配效果会很不好。对于这种y值只有{0,1}这种情况的,可以使用分类方法进行。

bubuko.com,布布扣

    假设bubuko.com,布布扣,且使得

bubuko.com,布布扣

    其中定义Logistic函数(又名sigmoid函数):

      bubuko.com,布布扣

    下图是Logistic函数g(z)的分布曲线,当z大时候g(z)趋向1,当z小的时候g(z)趋向0,z=0时候g(z)=0.5,因此将g(z)控制在{0,1}之间。其他的g(z)函数只要是在{0,1}之间就同样可以,但是后续的章节会讲到,现在所使用的sigmoid函数是最常用的

bubuko.com,布布扣

    假设给定x以为参数的y=1和y=0的概率:

bubuko.com,布布扣

    可以简写成:

bubuko.com,布布扣

    假设m个训练样本都是独立的,那么θ的似然函数可以写成:

bubuko.com,布布扣

     对L(θ)求解对数最大似然值:

bubuko.com,布布扣    为了使似然性最大化,类似于线性回归使用梯度下降的方法,求对数似然性对bubuko.com,布布扣的偏导,即:

 bubuko.com,布布扣

    注意:之前的梯度下降算法的公式为bubuko.com,布布扣。这是是梯度上升,Θ:=Θ的含义就是前后两次迭代(或者说前后两个样本)的变化值为l(Θ)的导数。

bubuko.com,布布扣

   bubuko.com,布布扣

     则

bubuko.com,布布扣

 

     即类似上节课的随机梯度上升算法,形式上和线性回归是相同的,只是符号相反,bubuko.com,布布扣为logistic函数,但实质上和线性回归是不同的学习算法。  

2. 代码示例

 

   

  

 

机器学习(4)之Logistic回归

原文:http://www.cnblogs.com/rcfeng/p/3967445.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!