随机梯度下降的逻辑回归算法(SGDLR)

由于第一次实验的实验报告不在这台机器,先写这一算法吧。

SGDLR(the Stochastic Gradient Descent for Logistic Regression),要讲解这一算法,首先要把名字拆为几块。

1 随机   2 梯度下降   3逻辑回归

先贴一篇文章:http://blog.csdn.net/zouxy09/article/details/20319673

这篇文章中解释的还不错。

其实这一算法,通俗来讲是这样子的:

1、手中肯定有很多带有label标记的数据,这是训练集。

2、我们期望能够建立一个带参数的式子,来计算某种情况出现的概率,以便于后面预测测试集的类别的时候,计算它在每一类的概率,取概率大的为自己的类。

3、由于sigmoid函数的优势:连续,光滑,严格单调,关于(0,0.5)中心对称,形如下图,

sigmoid函数详解 - lili - 做好自己,莫管他人

  公式①

利用下面这个式子变换得到:

所以我们只需要计算出参数的值,就可以用公式①计算概率。

4、所有在训练集中出现的样本,已经真实存在了,所以它们带入计算出的概率应该是最大的,理想情况为1。根据这一特征来计算参数值。

5、式子并不是一个线性可解的,需要使用极大似然,这一算法不再赘述请自行谷歌。但是后来发现求参数的偏导数的时候,导数为0线性不可解,这时候就要用到梯度下降的算法。

6、所谓梯度下降的算法,事实上是从一个起点,一步步的试探,来回震荡,直到找到一个最低点。迭代公式如下:(这里的lamda是步长,自己设定,参数的初值也是自己设定)

普通的梯度下降需要每次都用所有样本加和,然后迭代到收敛。

7、那么随机梯度下降就是在普通的情况下,每次只迭代一个样本(注意:这个样本必须是随机抽的,如果有偏向,最后的结果会很难看),直到收敛。

8、利用以上的迭代公式可以得到参数的值。

9、如果存在多个分类,那么可以训练多个分类器,一类一个,每一个训练样本都只属于下面两类:“是这类”和“不是这类”。训练的时候也是训练N套参数。

对于一个测试样本,带入每一个分类器计算一遍概率,以概率最大的分类有效。

 

该算法依旧可以使用十次交叉验证检验效果。

 

转载于:https://www.cnblogs.com/lilylee/p/4065838.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值