概述
在使用mse损失函数进行对抗攻击的时候,loss反向传播一直报错,最终改成如下形式才能够正常运行
loss11 = F.mse_loss(logits, logits_target, reduction='none').sum(axis=1)
loss12 = F.mse_loss(logits, logits_true, reduction='none').sum(axis=1)
loss1 = 4 * loss11 - loss12
loss = torch.mean(loss)
optimizer.zero_grad()
loss.backward()
同时,如果使用交叉熵损失函数则不需要reduction=none及torch.mean操作。
原因暂时未知
最后
以上就是懦弱玉米为你收集整理的loss反向传播出错问题的全部内容,希望文章能够帮你解决loss反向传播出错问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复