我想在分类问题中进一步将输出类分为更少的桶。我有 4 个输出类(即 0、1、2、3)。但在训练期间,我还想跟踪 2 个类的准确性:
将 0 和 1 视为 0 类
将 2 和 3 视为第 1 类
为此,我创建了一个新指标并使用模型对其进行编译:
def new_classes_acc(y_true, y_pred):
actual = tf.floor( y_true / 2 )
predicted = tf.floor( y_pred / 2 )
return K.categorical_crossentropy(actual, predicted)
像这样编译它:
model.compile(loss='categorical_crossentropy', optimizer=optimizer, metrics=['accuracy', new_classes_acc])
我得到nan作为精度值。这样做的正确方法是什么?
相关分类