【问题标题】:Share operation result between Keras metrics在 Keras 指标之间共享操作结果
【发布时间】:2020-09-16 05:49:27
【问题描述】:

我有多个指标共有的(耗时的)操作。在指标之间共享运算结果避免每次重新计算的开销的最佳方法是什么?

【问题讨论】:

    标签: numpy tensorflow keras deep-learning tf.keras


    【解决方案1】:

    您应该创建一个特殊的类来覆盖tf.keras.callback.Callback()(从而实现您自己的回调类)并通过覆盖方法on_epoch_end()来计算您需要的指标。

    然后,您可以在验证集上计算一些指标,从而手动确保如果您计算例如TP + FP,您确实使用这个总和来计算精度(TP / (TP + FP))而不是而不是重新计算。

    手动执行此操作可确保不会进行额外/多余的计算。

    【讨论】:

    • 感谢您的快速回复 Timbus。我是否必须将验证集传递给回调才能获取指标,或者回调是否可以访问提供的数据集以 .fit()?
    • 是的,拉蒙。看看我的回复:stackoverflow.com/questions/60616842/…。如果它解决了您的问题,请接受我的回答作为解决问题(按我的回答下方的绿色勾号)。
    猜你喜欢
    • 2017-11-28
    • 1970-01-01
    • 2023-04-01
    • 2021-04-10
    • 2017-10-03
    • 2012-04-12
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    相关资源
    最近更新 更多