我正在尝试在TensorFlow中训练一个LSTM分类器。这里是一个可复现的例子
targets = np.array([1, 0, 1, 1, 0, 0])features = np.arange(6, 2, 1)model = tf.keras.Sequential([ tf.keras.layers.LSTM(64), tf.keras.layers.Dense(1, activation='sigmoid')])model.compile( loss=tf.keras.losses.BinaryCrossentropy(from_logits=True), optimizer=tf.keras.optimizers.Adam(learning_rate=0.001), metrics=(['BinaryAccuracy']))history = (model.fit( features, targets, epochs=5, verbose = 1))
使用 BinaryAccuracy
:
Epoch 1/5 1/1 [==============================] - 1s 1s/step - loss: 0.6788 - binary_accuracy: 0.5000
使用 Accuracy
:
Epoch 1/5 1/1 [==============================] - 1s 1s/step - loss: 0.6794 - accuracy: 0.0000e+00
我之前在二分类中使用过’Accuracy’指标,有人能解释为什么会出现这种情况吗?
回答:
该指标是’accuracy’,而不是’Accuracy’。