在网络中使用categorical_crossentropy损失函数时,你训练网络所使用的m个类别的标签值应当是经过矢量化后的m维向量,其中向量一个索引为1,其余索引为0,对应一个类别。这样类别被向量化,和神经网络训练出来的m个概率值对应,概率值最大的那个输出所对应的向量,其所代表的标签即为该次所得。 One-hot 标签向量化:keras中可使用to_categorical对标签值进行向量化
keras.utils.to_categorical(y, num_classes=None, dtype=‘float32’) 其中: y: 需要转换成矩阵的类矢量 (从 0 到 num_classes 的整数)。 num_classes: 标签总类别数。 dtype: 字符串,输入所期望的数据类型 (float32, float64, int32…) 例如: 对于向量亦可通过argmax返回返回指定轴的最大值的索引。argmin返回最小值索引。 此处以argmax为例keras.backend.argmax(x, axis=-1) 其中 x: 张量或变量。 axis: 执行归约操作的轴。 返回一个张量 接上面程序