首页 Paddle框架 帖子详情
多网络模型的一个坑,提示绕行~~
收藏
快速回复
Paddle框架 问答模型训练 520 2
多网络模型的一个坑,提示绕行~~
收藏
快速回复
Paddle框架 问答模型训练 520 2

原来训练分类模型这样单个网络的模型时,一般更新梯度这么写的:

da_loss.backward() # 反向更新梯度
d_a_optimizer.step() # 更新模型权重
d_a_optimizer.clear_grad() # 清除梯度

只有一个网络时没问题,但在cyclegan这样的多网络模型中就会出错了,应该先清楚梯度再更新梯度,如下写法:

d_a_optimizer.clear_grad() # 清除梯度
da_loss.backward() # 反向更新梯度
d_a_optimizer.step() # 更新模型权重

 

 

 

 

 

 

0
收藏
回复
全部评论(2)
时间顺序
FutureSI
#2 回复于2021-06

以前1.8版本似乎能容错

0
回复
FutureSI
#3 回复于2021-06

现在2.0以后版本越来越严谨,代码错不得~~

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户