gpt4 book ai didi

python - categorical_accuracy 值是什么意思? categorical_accuracy 100% 但数据显示错误预测

转载 作者:太空宇宙 更新时间:2023-11-03 20:38:50 25 4
gpt4 key购买 nike

在训练中,Keras categorical_accuracy 值为 100%。但是我将其输出保存到文件中的相同训练数据显示了分类到错误类别的几个(实际上很多)数据。我检查了输入文件中的标签,它是正确的。

categorical_accuracy衡量什么?有没有更好的指标来调试 LSTM?

model = Sequential()
model.add(LSTM(64, batch_input_shape=(7763, TimeStep.TIME_STEP + 1, 10), return_sequences=True, activation='relu'))
model.add(LSTM(128, activation='relu', return_sequences=True))
model.add(LSTM(64, activation='relu', return_sequences=True))
model.add(LSTM(32, activation='relu'))
model.add(Dense(3, activation='softmax'))

model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=[categorical_accuracy])
history = model.fit(TimeStep.fodder, TimeStep.target, epochs=300, batch_size=7763)





Epoch 400/400

7763/31052 [======>.......................] - ETA: 1s - loss: 2.7971e-04 - categorical_accuracy: 1.0000
15526/31052 [==============>...............] - ETA: 1s - loss: 3.0596e-04 - categorical_accuracy: 1.0000
23289/31052 [=====================>........] - ETA: 0s - loss: 3.0003e-04 - categorical_accuracy: 1.0000
31052/31052 [==============================] - 2s 78us/step - loss: 2.9869e-04 - categorical_accuracy: 1.0000

最佳答案

来自keras github repo我们有categorical_accuracy函数。

def categorical_accuracy(y_true, y_pred):
return K.cast(K.equal(K.argmax(y_true, axis=-1),
K.argmax(y_pred, axis=-1)),
K.floatx())

这里我们可以看到,如果 y_true 最大值的位置与 y_pred 相同,则返回 1,否则返回 0。100% 的准确度应该表明 y_true 最大值的位置始终与 y_pred 相同(这里的位置是类,所以总是预测相同的类)。

造成这种情况的一个可能原因是您只有一个输出(单个二进制类)。因此 y_true 和 y_pred 的最大值位置始终为 0。

在这种情况下,请使用binary_accuracy

关于python - categorical_accuracy 值是什么意思? categorical_accuracy 100% 但数据显示错误预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56984897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com