关于二分类和多分类的交叉熵损失

部分参考:https://zhuanlan.zhihu.com/p/35709485

二分类交叉熵损失

image-20221215212558197

多分类交叉熵损失

在多分类交叉熵损失函数中,预测值要先经过softmax,然后再送入交叉熵公式。

image-20221215212849429

总结:经过测试,在pytorch的BCELoss中并没有做sigmod或softmax,在多分类交叉熵损失函数中做了softmax。

二分类损失和多分类损失一定不能混用,使用二分类损失时的数据维度应该是一维,使用多分类损失函数时的数据维度应该是二维。

虽然二维数据时仍然可以使用二分类交叉熵损失,但是这样是不对的。同理,一维数据也可以使用多分类交叉熵损失,但是这样也是不对的。