似乎我不能用tf.keras.metrics.Accuracy
代替tf.keras.metrics.BinaryAccuracy
。为什么会这样?
我有一个基于this tutorial的trainer
:
>>>tf.random.set_seed(42)
>>>trainer = CatDogTrainer(initial_epochs=1, model_type='mobile_net')
>>>trainer.metrics
[<tensorflow.python.keras.metrics.BinaryAccuracy at 0x7f2fcc7f72e8>]
>>>trainer.train()
582/582 [==============================] - 55s 94ms/step - loss: 1.8132 - binary_accuracy: 0.7372 - val_loss: 0.0000e+00 - val_binary_accuracy: 0.0000e+00
>>>tf.random.set_seed(42)
>>>trainer = CatDogTrainer(initial_epochs=1, model_type='mobile_net')
>>>trainer.metrics
[<tensorflow.python.keras.metrics.Accuracy at 0x7f0dfd4f8be0>]
>>>trainer.train()
ValueError: Shapes (None, 2) and (None, 1) are incompatible
我也可以和metrics=['accuracy']
一起训练。 tf
在这种情况下使用什么类?顺便说一下,tf.keras.metrics.Accuracy
具有一个name
属性accuracy
。