梯度下降法

梯度下降法:

梯度下降法(gradient descent)是一个最优化算法,通常也称为最速下降法。常用机器学习和人工智能当中用来递归性地逼近最小偏差模型。

继续考虑线性模型

第i个个记录(样本)的预测值为:


换成经常使用的形式


经常使用Cost Function(代价函数)


其中的1/2是为了使数据整齐加上的。


先随机给初始值比如

其中代表学习率(learning rate),决定了下降的步伐大小,决定了下降的方向

求偏导数:


迭代过程是:



随机的梯度下降(SGD):每次随机的挑一个样本学习,直到收敛才停止更新

小批量的梯度下降(Mini-batch):每次只学习一小部分,比如每次学习10个样本再更新

梯度下降(GD):全部样本学习一次,然后更新下(少用,效率低)

也可以设置最大迭代次数,比如设为100,若在100次内收敛了,则收敛时停止,若100次还未收敛那么就停止迭代

 

一般为了加快梯度下降的执行速度,先将个feature值(变量)标准化,使得取值[-1,1]

 参考链接

 http://blog.csdn.net/xiazdong/article/details/7950084

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值