torch.nn.CrossEntropyLoss

时间:2023-03-08 19:41:10
class torch.nn.CrossEntropyLoss(weight=None, size_average=True, ignore_index=-100, reduce=True)

我这里没有详细解读这个损失函数的各个参数,仅记录一下在sru中涉及到的。

sru中代码如下

criterion = nn.CrossEntropyLoss(size_average=False)

根据pytorch的官方文档

torch.nn.CrossEntropyLoss

我得出的理解跟以上图片是一致的,图片来源:http://blog.****.net/zhangxb35/article/details/72464152?utm_source=itdadao&utm_medium=referral

跟我之前理解的交叉熵损失函数不太一样

这里指的交叉熵损失函数应该跟刘建平(http://www.cnblogs.com/pinard/p/6437495.html)里的“使用对数似然损失函数和softmax激活函数进行DNN分类输出“这个是一致的

关于参数size_average=False,根据pytorch的官方文档,size_average默认情况下是True,对每个小批次的损失取平均值。 但是,如果字段size_average设置为False,则每个小批次的损失将被相加。如果参数reduce=False,则忽略。