【问题标题】:How does Keras compute validation accuracy and training accuracy for multi-class classification problems?Keras 如何计算多类分类问题的验证准确率和训练准确率?
【发布时间】:2018-07-20 18:14:55
【问题描述】:

我想知道 Keras 如何计算多类分类问题(即使用的函数)的验证和训练精度。我设置我的模型编译如下:

model.compile(optimizer=Adam(lr=0.001), loss='categorical_crossentropy', metrics=['accuracy'])

但我想了解如何计算验证准确度和训练准确度(即显式公式)。

我知道验证和训练损失由categorical_crossentropy 决定,但我不确定准确度。

注意:这不是 post 的副本。我的问题是寻找 Keras 用于计算准确性的 Python 函数的解释,而不是上述帖子中给出的理论细节。

【问题讨论】:

    标签: python machine-learning deep-learning keras


    【解决方案1】:

    您可以在 Keras github 存储库中找到指标 file 及其实现。在这种情况下,以下指标适用:

    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) 对的准确度。它这样做是为了比较 y_pred 向量中得分最高的类的索引和 y_true 向量中实际类的索引。它返回 0 或 1。

    它使用这个函数计算数据集的整体准确度,通过使用常规的准确度公式,定义为

    (amount of correct guesses)/(total amount of guesses) 
    

    【讨论】:

      猜你喜欢
      • 2019-02-14
      • 2018-09-18
      • 2023-03-17
      • 2021-10-13
      • 2020-03-28
      • 1970-01-01
      • 2018-12-20
      • 1970-01-01
      • 2019-06-09
      相关资源
      最近更新 更多