一、NLLLoss与CrossEntropy之间的区别:git
NLLLoss中是先作log-softmax处理后,再取负便可。函数
CrossEntropyLoss则直接计算损失,内部会自动进行softmax处理。.net
二、BCELoss与CrossEntropyLoss之间的区别:(交叉熵的计算公式不同)3d
BCELoss的计算公式:blog
CrossEntropyLoss的计算公式:get
三、BCELoss与BCEWithLogitsLoss之间的区别:it
BCELoss:先作sigmoid再作交叉熵,而后先对行求均值,再对全部的均值求一个均值。bfc
BCEWithLogitsLoss:直接作交叉熵和均值处理(函数内部会自动作sigmoid处理)im
参考网址:d3
[1]https://blog.csdn.net/qq_22210253/article/details/85229988