作者wheado (principal component QQ)
看板DataScience
标题[问题] Pytorch upadate gradient 问题
时间Fri Nov 23 17:30:07 2018
作业系统: Win10
问题类别: 简单CNN
使用工具: Pytorch
问题内容:
刚入门深~度学习,在学习Pytorch发现一个问题,
先附一张图,取自Pytorch官方教学范例。
https://imgur.com/a/JeXGTxr
loss.backward() ------> 这个应该计算每个层的 gradient
问题:
optimizer.step() -----> 为何知道要把loss这个物件的 gradient 更新到
optimizer 物件?
因为我想在在每个 batch 的回圈中
放入验证资料,想要在学习的时候可以看到每次跌代的过程
valid_outputs = net(valid_inputs)
valid_loss = criterion(valid_outputs, valid_labels)
但却看到 Loss 不会变动
因此觉得是对上面这个过程不够理解
有人做交叉验证遇到同样的问题吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 203.71.94.20
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DataScience/M.1542965409.A.8EB.html
1F:推 yiefaung: optimizer initialize的时候不就要塞你要update的weight 11/23 21:42
2F:→ yiefaung: 不太懂你说什麽Loss不会变动 11/23 21:44
3F:→ yoyololicon: 看不懂你想问啥... 11/23 23:14
4F:→ kiazo: optimizer里头有一套演算法,它会针对你给它的loss,采取某 12/03 08:56
5F:→ kiazo: 一套方法来降低loss,之後透过backprop来更新weight matrix 12/03 08:58