如下程序

import torch

a = torch.tensor(1.0, requires_grad=True)
b = torch.tensor(1.0, requires_grad=True)
print(a.grad)
y = (a ** 2) * (b ** 3)
z = y ** 100
print(z)
z.backward()
print(a.grad.data)
print(b.grad.data)

将会打印

None
tensor(1., grad_fn=<PowBackward0>)
tensor(200.)
tensor(300.)
前向传播就是z的值是从a b计算y的值 再从y计算z的值
反向传播就是从z对 a b的表达式中计算对应的偏导

o_ra
6 声望4 粉丝

记录工作中碰到的问题