请稍等 ...
×

采纳答案成功!

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

关于forward函数和自动梯度

之前曾经在__init__中把 训练层 添加在了self下的一个字典里面
self.layer_list[0] = make_layer()
在forward中训练
out = self.layer_list[0]_(x)

发现训练出错了,准确率一直上不去

如果把层直接添加在self下
self.layer1 = make_layer() ,
在forward中训练
out = self.layer1(x)
就可以了

是不是因为梯度计算出问题,因为没有直接添加在layer下面,如果是的话,
在backward里如何根据 forward 里面的步骤,计算出相应的反向梯度呢

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

1回答

会写代码的好厨师 2023-08-24 12:01:04

放在一个字典里和放在变量单独定制,没有什么区别,应该是字典使用的时候的问题,具体要看下上下文的代码才能判断

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

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

帮助反馈 APP下载

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

公众号

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