nn.CrossEntropyLoss()的计算过程

nn.CrossEntropyLoss()中的计算方法:
在这里插入图片描述
原公式为:
loss = -(y1logp1 + y2logp2 + y3logp3 + … + ynlogpn)

y1, y2, …,yn为ground-truth标签,
p1, p2, …, pn为prediction

计算时,y3=1, 其他类别的标签=0, 原公式等同于:
loss = -logp3

可以看到:
真实标签被处理为one-hot型
交叉熵公式的计算已经包含了softmax,因此网络中以及网络得到的结果不再需要进行softmax

你可能感兴趣的:(Pytorch,pytorch)