请稍等 ...
×

采纳答案成功!

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

2-15梯度下降02

for循环里面的代码是什么意思,具体有什么作用?for i in range(int(400/batch_size)),如果batch_size等于400,那么i只能循环一次,batch_x只能取1到401,那这样不是很不精确吗,然后再run.optimizer,运行优化器具体有什么作用?https://img1.sycdn.imooc.com//szimg/5b28dbc300019be010310288.jpg

正在回答 回答被采纳积分+3

1回答

Erik_Song 2018-06-19 20:04:33

我们在400的时候就是梯度下降,1是随机梯度下降,在中间的是小批量梯度下降,一次能够改变参数一点,1000次使参数到达最优解

0 回复 有任何疑惑可以回复我~
  • 提问者 慕婉清4872412 #1
    如果batch_size取100,那么就是小批量梯度下降,也就是说for i in range(4), batch_x=x_total[0:100],batch_y=y_total[0:100],然后进行一次optimizer优化。这样不就直接结束了吗,为什么还要循环4次?batch_x=x_total[1:101],batch_y=y_total[1:101],进行一次optimizer优化,batch_x=x_total[2:102],batch_y=y_total[2:102],进行一次optimizer优化,batch_x=x_total[3:103],batch_y=y_total[3:103],进行一次optimizer优化。这样进行4次循环有什么作用?
    回复 有任何疑惑可以回复我~ 2018-06-20 10:08:23
  • 提问者 慕婉清4872412 #2
    还有一个问题:optimizer的作用是什么?它是一个算法吗,用来求梯度的公式?我运行了一次optimizer可以达到什么效果?
    回复 有任何疑惑可以回复我~ 2018-06-20 10:11:43
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信