首页 文章

如何在Keras中实现Sklearn Metric作为度量?

提问于
浏览
2

尝试谷歌搜索,但无法找到如何在keras中实现像cohen kappa,roc,f1score这样的Sklearn指标作为不 balancer 数据的指标 .

如何在Keras中实现Sklearn Metric作为度量?

1 回答

  • 4

    Keras和Sklearn中的度量标准意味着不同的东西 .

    在Keras中,指标几乎与损失相同 . 它们在每个批次结束时的训练期间被调用,并且每个时期用于报告和记录目的 . 使用示例是丢失'mse',但您仍然希望看到'mae' . 在这种情况下,您可以将“mae”作为指标添加到模型中 .

    在Sklearn中,度量函数根据定义“度量模块实现为特定目的评估预测误差的函数”应用于预测 . 虽然存在重叠,但Sklearn的统计函数不适合Keras中度量的定义 . Sklearn指标可以返回两个维度大于1的浮点数组,数组,二维数组 . 预测方法在Keras中没有这样的对象 .

    回答你的问题:
    这取决于您想要触发的位置:

    • 每批或每个纪元结束
      您可以编写在批处理结束时触发的自定义回调 .

    • 预测后
      这似乎更容易 . 让Keras预测整个数据集,捕获结果,然后将y_true和y_pred数组提供给相应的Sklearn指标 .

相关问题