zoukankan      html  css  js  c++  java
  • 线性回归和逻辑回归

    在学习完 Andrew Ng 教授的机器学习课程,这里将线性回归和逻辑回归细节之处梳理一下。

    1、 为什么是逻辑回归?

      都说线性回归用来做回归预测,逻辑回归用于做二分类,一个是解决回归问题,一个用于解决分类问题。但很多人问起逻辑回归和线性回归的区别,很多人会大喊一声(也可能是三声):逻辑回归就是对线性回归做了一个压缩,将y 的阈值从(yin(+infty,-infty))压缩到((0,1))。那么问题来了,问什么仅仅做一个简单的压缩,就将回归问题变成了分类问题?里面蕴含着本质?

      首先要从数据说起,线性回归的样本的输出,都是连续值,(yin(+infty,-infty))而,逻辑回归中(yin{0,1}),只能取0和1。对于拟合函数也有本质上的差别:

      线性回归:(f(x)= heta^TX= heta_1x_1+ heta_2x_2+dotsb+ heta_nx_n)

      逻辑回归:(f(x)=p(y=1mid x ; heta)=g( heta^TX)),其中,(g(z)=dfrac{1}{1+e^{-z}})

    可以看出,线性回归的拟合函数,的确是对f(x)的输出变量y的拟合,而逻辑回归的拟合函数是对为1类的样本的概率的拟合。

    2、那么,为什么要以1类样本的概率进行拟合呢,为什么可以这样拟合呢?

      首先,logstic 函数的本质说起。若要直接通过回归的方法去预测二分类问题, y 到底是0类还是1类,最好的函数是单位阶跃函数。然而单位阶跃函数不连续(GLM 的必要条件),而 logsitic 函数恰好接近于单位阶跃函数,且单调可微。于是希望通过该复合函数去拟合分类问题:
      $$y=frac{1}{1+e{- hetaTX}}$$
    于是有:
      $$lnfrac{y}{1-y}= heta^TX$$
    发现如果我们假设 (y=p(y为1类mid x ; heta)) 作为我们的拟合函数,等号左边的表达式的数学意义就是1类和0类的对数几率(log odds)。

      这个表达式的意思就是:用线性模型的预测结果去逼近1类和0类的几率比。于是,$ heta^TX=0 $就相当于是1类和0类的决策边界:

      当( heta^TXgt0),则有(ygt0.5);若( heta^TX o+infty) ,则(y o1) ,即y 为1类;

      当( heta^TXlt0),则有(ylt0.5) ; 若( heta^TX o-infty),则(y o0),即 y 为0类。

      这个时候就能看出区别来了,在线性回归中( heta^TX)为预测值的拟合函数;而在逻辑回归中( heta^TX=0)为决策边界。

  • 相关阅读:
    Homework
    自我介绍,恩。。算是吧
    What ASP.NET Developers Should Know About JavaScript
    短信猫软件的C#实现系列文章
    装箱与拆箱
    HTML的基本标签
    CSS基础用法
    ajaxToolkit:AutoCompleteExtender 用法详解
    比较强大的分页存储过程
    不知道写点什么
  • 原文地址:https://www.cnblogs.com/stevenlk/p/6542418.html
Copyright © 2011-2022 走看看