美文网首页机器学习与数据挖掘
Logistic回归(Logistic Regression)算

Logistic回归(Logistic Regression)算

作者: keepStriving | 来源:发表于2017-03-19 16:36 被阅读5274次

    写在前面的话:哈喽,大家早安、午安、晚安喽,欢迎大家指点,也希望我的内容可以温暖、帮助同在学习路上的人们~再次申明:本文的理论知识来自Peter Harrington的《机器学习实战》和李航的《统计学习方法》,非常感谢这些优秀人物和优秀书籍。正文开始~~


    今天主要分享Logistic回归(LR)的基础知识。首先简答介绍一下回归的概念。

    回归:回归分析是一种统计学分析数据的方法,目的在于了解两个或多个变数间是否相关、相关方向与强度,并建立数学模型以便观察特定变数来预测研究者感兴趣的变数。回归在数学上来说就是给定一个点集合,能够用一条曲线去拟合。根据曲线的差异分为线性回归,二次回归,Logistic回归等。

    Logistic回归工作原理:根据现有数据对分类边界线建立回归公式,以此进行分类。‘回归’源于最佳拟合,表示要找到最佳拟合参数集。训练分类器时的做法就是寻找最佳拟合参数,使用的是最优化算法。见图1,Logistic回归就是为了找到这样的分类边界(Decision Boundary)备注:如果是二维情况,那么就是找到如图0中的分类曲线,如果是多维,那么就是找到可以分类的平面

    图1 Logistic回归分类功能演示

    辣么,接下来就是求解这条曲线了,如果是Y=0,1两种类型的,可以见图2。(备注:很遗憾,因为我刚开始学,所以这篇暂不考虑多类型分类的问题。)

    图2 Logistic回归计算公式推导(Y=0,1)

    Logistic回归公式中这些θ参数的设置,常用方法有:牛顿法、拟牛顿法、梯度上升方法(或梯度下降方法)、随机梯度上升方法(或随机梯度下降方法)等。比如如果求函数的最大值,那么就利用梯度上升方法来求解;如果要找函数的最小值,那么就利用梯度下降方法来求解。

    辣么,具体的实现过程如下:

    1)构造预测函数,用h(θ)表示,其实此处的θ和图1中的w是一个意思,均表示特征值的参数。h(θ)与特征值X可能是线性关系,也可能是非线性关系,见图3-图4。

    图3 线性关系 图 4 非线性关系

    2)构造求解参数的代价函数

    在线性规划中,代价函数的思想是要使得预估结果h(θ)与实际y差距最小,见图5

    图5 线性回归中的代价函数

    那么,在Logistic回归中,可以将J(θ)表示为如下图6中的形式:

    图6 Logistic回归中的代价函数

    3)利用梯度下降法求解J(θ)的最值

    应该通过拟合参数,使得J(θ)达到最值,这时候就需要求函数的梯度。为了简化求导的计算,可以考虑以下的代价函数:

    图7 代价函数 图8 参数计算中的循环迭代方法

    因为图8中对θ的求导刚好可以消去求导的因子,实际每次参数θ的迭代见图9

    图9 基于图7中的代价函数得到的参数迭代计算法

    4)基本思想就是这样啦,开始写代码验证啦~~

    (1)准备数据

    图10 Logistic回归-准备数据

    (2)通过梯度下降来获取参数

    图11 梯度下降法求解参数

    (3)基于求出的参数θ向量,根据新的特征值来预测分类

    图12 预测分类

    好哒,关于Logistic回归的初级学习基本就是这些,以后我会更加深入的学习,请大神轻拍,也希望自己总结的内容对大家有所帮助,谢谢

    另外,学习Logistic回归的不错的资料,可以查看从初等数学视角解读逻辑回归浅析Logistic Regression  等

    相关文章

      网友评论

        本文标题:Logistic回归(Logistic Regression)算

        本文链接:https://www.haomeiwen.com/subject/uxtsnttx.html