ex)
a = torch.tensor([2,3], requires_grad=True)
b = torch.tensor([6,4], requires_grad=True)
Q = 3*a**3-b**2
external_grad = torch.tensor([1,1]) # 미분하는 값이 2개가 나와야 하기 때문에 (a에 관한 미분, b에 관한 미분) gradient 크기를 맞춰주기 위함
Q.backward(gradient=external_grad)
a.grad=tensror([36, 81])
b.grad=tensor([-12, -8])
nn.parameter
Backward()
※기본 모델 단계
criterion = torch.nn.BCEWithLogitsLoss()
for epoch in epochs():
optimizer.zero_grad()
ouptut = model(input)
loss = criterion(output, labels)
loss. backward()
optimizer.step()