相关疑难解决方法(0)

如何在pytorch中处理多重损失?

在此输入图像描述

比如这个,我想用一些辅助损失来提升我的模特表现.
哪个类型代码可以在pytorch中实现它?

#one
loss1.backward()
loss2.backward()
loss3.backward()
optimizer.step()
#two
loss1.backward()
optimizer.step() 
loss2.backward()
optimizer.step() 
loss3.backward()
optimizer.step()   
#three
loss = loss1+loss2+loss3
loss.backward()
optimizer.step()
Run Code Online (Sandbox Code Playgroud)

感谢您的回答!

python pytorch

9
推荐指数
3
解决办法
3261
查看次数

pytorch中的张量的Autograd.grad()

我想计算网络中两个张量之间的梯度。输入X张量(批大小xm)通过一组卷积层发送,这些卷积层使我返回并输出Y张量(批大小xn)。

我正在创建一个新的损失,我想知道Y wrt X的梯度。在tensorflow中类似:

tf.gradients(ys = Y,xs = X)

不幸的是,我一直在使用torch.autograd.grad()进行测试,但是我不知道该怎么做。我收到如下错误:“ RunTimeerror:grad只能为标量输出隐式创建”。

如果我想知道Y wrt X的梯度,torch.autograd.grad()中的输入应该是什么?

pytorch autograd

1
推荐指数
2
解决办法
1427
查看次数

标签 统计

pytorch ×2

autograd ×1

python ×1