SparseCategoricalCrossentropy()与CategoricalCrossentropy()的区别:
- (1)如果labels是one-hot编码,比如目标是 one-hot 编码:
[[0, 1, 0],
[1, 0, 0],
[0, 0, 1]]
每条每一行就是label的编码,使用CategoricalCrossentropy(),计算预测值与真值的多类交叉熵(输入值为二值矩阵,而不是向量) - (2)如果目标是数字编码,比如
[1,3,4]
每个数字即是label,使用SparseCategoricalCrossentropy(),Sparse是稀疏的意思,在对稀疏的目标值预测时有用。与多类交叉熵相同,适用于稀疏情况
参考:
【1】keras中文档
【2】Keras损失函数:categorical_crossentropy和sparse_categorical_crossentropy的区别