我有一个简单的 logit 和目标张量,并使用 Pytorch 的模块计算交叉熵from torch.nn import functional as F
。
>>> F.cross_entropy(torch.tensor([[0.25, 0.5, 0.25]]), torch.tensor([0]))
tensor(1.1891)
我得到的答案是 1.1891。但根据cross_entropy损失的方程,答案不应该是
-(1*ln(0.25) + 0*ln(0.5) + 0*ln(0.25) = -ln(0.25) = 1.386
?
到底是怎么回事?