美文网首页人工智能
机器学习 Day 13 | Logistic 回归基础(1)

机器学习 Day 13 | Logistic 回归基础(1)

作者: raphah | 来源:发表于2018-08-21 21:29 被阅读17次

    机器学习第十三天 Logistic 回归基础

    之前都是在网上看资源自己逐步实现,但是逐步发现哪些案例非常具有操作性,可以加深对算法的理解,但在原理和细节的介绍上比较粗略,而且我自己的算法基础并不是非常好,所以将几个常用的分类算法基础看懂之后准备重新过一遍吴恩达老师的机器学习公开课,结合《机器学习实战》这本书巩固一下基础。

    下面是《机器学习实战》这本书中关于Logistic回归的一些介绍

    这将是我们第一次接触到最优化算法。仔细想想就会发现,其实我们日常生活中遇到过很多最优化问题,比如如何在最短时间内从A点到B点?如何投入最少工作量却获得最大的效益?如何设计发动机使得油耗最少而功率最大?可见,最优化的作用十分强大,接下来我们会介绍几个最优化算法,并利用它们训练出一个非线性函数用于分类。

    读者不熟悉回归也没关系,在书中第8章会深入介绍这一主题。假设现在有一些数据点,我们用一条直线对这些点进行拟合(该线称为最佳拟合直线),这个拟合过程就称作回归。利用Logistic回归进行分类的主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。这里的“回归”一词源于最佳拟合,表示要找到最佳拟合参数集,其背后的数学分析将在下一部分介绍。训练分类器时的做法就是寻找最佳拟合参数,使用的是最优化算法。接下来介绍这个二值型输出分类器的数学原理。

    Sigmoid函数

    回归概念

    假设现在有一些数据点,我们用一条直线对这些点进行拟合(这条直线称为最佳拟合直线),这个拟合的过程就叫做回归。进而可以得到对这些点的拟合直
    线方程,那么我们根据这个回归方程,怎么进行分类呢?请看下面。

    二值型输出分类函数

    我们想要的函数应该是: 能接受所有的输入然后预测出类别。例如,在两个类的情况下,上述函数输出 0 或 1.或许你之前接触过具有这种性质的函数,该函 数称为 海维塞得阶跃函数(Heaviside step function),或者直接称为 单位阶跃函数。然而,海维塞得阶跃函数的问题在于: 该函数在跳跃点上从 0 瞬间跳跃到 1,这个瞬间跳跃过程有时很难处理。幸好,另一个函数也有类似的性质(可以输出 0 或者 1 的性质),且数学上更易处理,这就是 Sigmoid 函数。 Sigmoid 函数具体的计算公式如下:


    下图给出了 Sigmoid 函数在不同坐标尺度下的两条曲线图。当 x 为 0 时,Sigmoid 函数值为 0.5 。随着 x 的增大,对应的 Sigmoid 值将逼近于 1 ; 而随着 x 的减小, Sigmoid 值将逼近于 0 。如果横坐标刻度足够大, Sigmoid 函数看起来很像一个阶跃函数。

    因此,为了实现 Logistic 回归分类器,我们可以在每个特征上都乘以一个回归系数(如下公式所示),然后把所有结果值相加,将这个总和代入 Sigmoid 函数中,进而得到一个范围在 0~1 之间的数值。任何大于 0.5 的数据被分入 1 类,小于 0.5 即被归入 0 类。所以,Logistic 回归也是一种概率估计,比如这里Sigmoid 函数得出的值为0.5,可以理解为给定数据和参数,数据被分入 1 类的概率为0.5。想对Sigmoid 函数有更多了解,可以点开此链接跟此函数互动。

    确定了分类器的函数形式之后,现在的问题变成了:最佳回归系数是多少?如何确定它们的大小?

    基于最优化方法的回归系数确定

    Sigmoid 函数的输入记为 z ,由下面公式得到:

    如果采用向量的写法,上述公式可以写成

    它表示将这两个数值向量对应元素相乘然后全部加起来即得到 z 值。其中的向量 x 是分类器的输入数据,向量 w 也就是我们要找到的最佳参数(系数),从而使得分类器尽可能地精确。为了寻找该最佳参数,需要用到最优化理论的一些知识。

    明天在仔细分析梯度上升法和梯度下降法的区别,已经我们应该选用哪一种来确定回归系数

    相关文章

      网友评论

        本文标题:机器学习 Day 13 | Logistic 回归基础(1)

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