在 tf.keras
中,有两个交叉熵相关的损失函数 tf.keras.losses.categorical_crossentropy
和 tf.keras.losses.sparse_categorical_crossentropy
。其中 sparse
的含义是,真实的标签值 y_true
可以直接传入 int 类型的标签类别,即sparse
时 y 不需要one-hot,而 categorical
需要。具体而言:
loss = tf.keras.losses.sparse_categorical_crossentropy(y_true=y, y_pred=y_pred)
与
loss = tf.keras.losses.categorical_crossentropy(
y_true=tf.one_hot(y, depth=tf.shape(y_pred)[-1]),
y_pred=y_pred
)