Apakah ini bug? obor.__version__ adalah '0.1.11+b13b701' .
Bekerja dengan baik untuk saya dengan (hampir) versi terbaru ( '0.1.11+8aa1cef'
)
import torch
import torch.nn as nn
from torch.autograd import Variable
y = Variable(torch.rand(5, 3), requires_grad=True)
t = Variable(torch.LongTensor(5).random_(0, 2))
m = nn.MultiMarginLoss()
loss = m(y, t)
loss.backward()
print(y.grad)
keluaran
Variable containing:
-0.1333 0.0667 0.0667
0.0667 -0.1333 0.0667
0.0667 -0.1333 0.0667
0.0667 -0.1333 0.0667
0.0667 -0.1333 0.0667
[torch.FloatTensor of size 5x3]
Hai,
nn.Module
tidak memiliki mundur (tidak ada yang memilikinya), penerusannya diimplementasikan dengan metode yang sesuai dengan autograd dan dengan demikian secara otomatis dibedakan.
Jika Anda ingin menemukan implementasi untuk MultiMarginLoss
, itu diimplementasikan di sini di c.
Terima kasih. Saya baru memulai dengan PyTorch. Aku mengerti sekarang.
Komentar yang paling membantu
Hai,
nn.Module
tidak memiliki mundur (tidak ada yang memilikinya), penerusannya diimplementasikan dengan metode yang sesuai dengan autograd dan dengan demikian secara otomatis dibedakan.Jika Anda ingin menemukan implementasi untuk
MultiMarginLoss
, itu diimplementasikan di sini di c.