请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,我想再问一下为什么要在sgd的时候加上一个constant 去控制他的下降速度,因为我们的目的不是为了取最后的那个eta么

老师,我想再问一下为什么要在sgd的时候加上一个constant 去控制他的下降速度,因为我们的目的不是为了取最后的那个eta么,如果画一个train error 的图的话, 前期会下降特别快。

正在回答

1回答

抱歉,我没有特别理解你的问题,你说的具体是哪个constant?


==========


首先,仔细看,我们的sgd的实现,没有eta了,转而使用t0,t1计算出的learning_rate代替。


首先,sgd也使用eta是可以的。但是效果不好。


这是因为批量梯度下降法可以保证一定沿着梯度下降的方向前进,所以梯度本身就会越来越趋近于0,在此时,即使eta不变,整个theta的变化也会越来越小。


但是,对于随机梯度下降法来说,由于梯度知识根据某一个样本计算出来的,所以并不能保证越来越小,可能很跳跃,为了得到较好的收敛结果,我们选择使用模拟退火的方式,让learning_rate逐渐减小:)


继续加油!:)


但是s

0 回复 有任何疑惑可以回复我~
  • 提问者 霸宋 #1
    不好意思 没有说清楚。是sgd的时候 分子分母都加了一个t0,t1。learning rate t=t0/t+t1
    回复 有任何疑惑可以回复我~ 2019-05-16 16:16:21
  • liuyubobobo 回复 提问者 霸宋 #2
    我补充在原答案上了:)
    回复 有任何疑惑可以回复我~ 2019-05-16 16:22:34
  • 提问者 霸宋 #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-05-27 20:14:35
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号