【发布时间】:2020-05-01 15:58:06
【问题描述】:
我的loss 输出是
tensor([0.0430, 0.0443, 0.0430, 0.0430, 0.0443, 0.0466, 0.0466, 0.0466],
grad_fn=<AddBackward0>)
当我执行loss.backward()时,我得到了*** RuntimeError: grad can be implicitly created only for scalar outputs
在某些地方,他们宁愿建议loss.mean().backward() 或loss.sum().backward()。
为什么使用.mean().backward(),即如果我们通常应该平均梯度(而不是损失),为什么我们要平均批次中所有元素的损失?
这是我的code
【问题讨论】: