KERAS“ sparse_categorical_crossentropy”问题

use*_*014 2 python machine-learning loss keras tensorflow

输入为1.0或0.0。当我尝试用模型和sparse_categorical_crossentropy损失进行预测时,我得到如下信息: [[0.4846592 0.5153408]]

我怎么知道它预测什么类别?

tod*_*day 5

您看到的这些数字是给定输入样本的每个类别的概率。例如,[[0.4846592 0.5153408]]意味着给定样本属于类别0,概率约为0.48,属于样本1,概率约为0.51。因此,您想以最高的概率上课,因此可以np.argmax用来查找哪个索引(即0或1)是最大的:

import numpy as np

pred_class = np.argmax(probs, axis=-1) 
Run Code Online (Sandbox Code Playgroud)

此外,这与模型的损失函数无关。这些概率由模型的最后一层给出,很有可能将其softmax用作激活函数以将输出标准化为概率分布。