《机器学习实战》 第五章 逻辑回归 学习总结

逻辑回归的目的:寻找一个非线性函数sigmoid的最佳拟合参数。求解时使用的是最优化算法,最常用的是梯度上升法。    

 利用逻辑回归进行分类的中心思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。

       对于现有的一些数据点,我们用一条直线对这些点进行拟合(这条直线称为最佳拟合直线),这个拟合的过程就叫做回归。我们根据拟合的直线方程,进行分类。在《机器学习实战》中,使用sigmoid函数进行处理:

                                                                                

       当 x 为 0 时,Sigmoid 函数值为 0.5 。随着 x 的增大,对应的 Sigmoid 值将逼近于 1 ; 而随着 x 的减小, Sigmoid 值将逼近于 0 。为了实现 Logistic 回归分类器,我们在每个特征上都乘以一个回归系数,然后把所有结果值相加,将这个总和代入 Sigmoid 函数中,进而得到一个范围在 0~1 之间的数值。任何大于 0.5 的数据被分入 1 类,而小于 0.5的数据 即被归入 0 类。

     也可写成,其中,x是输入的数据向量,w是所求的最佳参数。

       为寻找最佳参数,文中使用梯度上升法进行求解。(要找到某函数的最大值,最好的方法是沿着该函数的梯度方向探寻。)

梯度上升算法用来求函数的最大值,而梯度下降算法用来求函数的最小值。公式分别如下:

                                      

梯度上升法伪代码:

每个回归系数初始化为 1
重复 R 次:
    计算整个数据集的梯度
    使用 步长 x 梯度 更新回归系数的向量
返回回归系数


逻辑回归流程:

       (1)根据现有数据,使用最优化方法训练得到最优的拟合参数

        (2)将测试集上每个特征向量乘以最优化得到的回归系数,再将该结果求和,输入到sigmoid函数中。

         (3)对应的sigmoid值大于0.5则预测类别标签为1,否则为0。

       梯度上升算法在每次更新回归系数时都需要遍历整个数据集,因此在处理数据量大的数据集时其复杂度非常高。一种改进方法是一次仅用一个样本点来更新回归系数,该方法称为随机梯度上升算法。该算法属于“在线学习”算法,可以在新样本到来时对分类器进行增量式更新,而不需要重新读取整个数据集进行批处理运算。其伪代码如下:

所有回归系数初始化为 1
对数据集中每个样本
    计算该样本的梯度
    使用 alpha x gradient 更新回归系数值
返回回归系数值




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值