【发布时间】:2019-07-16 18:45:32
【问题描述】:
我的理解是keras需要损失函数才能有签名:
def custom_loss(y_true, y_pred):
我正在尝试使用sklearn.metrics.cohen_kappa_score,这需要
(y1, y2, labels=None, weights=None, sample_weight=None)`
如果我按原样使用它:
model.compile(loss=metrics.cohen_kappa_score,
optimizer='adam', metrics=['accuracy'])
那么weights 将不会被设置。我想将其设置为quadtratic。有什么可以通过的吗?
【问题讨论】:
-
sklearn.metrics.cohen_kappa_score不是有效的 Keras 损失,因为它不适用于 Keras 张量 -
@rvinas 可以通过keras.io/scikit-learn-api(Keras 的 Scikit Learn API)访问类似 sklearn.metrics.cohen_kappa_score 的内容吗?这可能允许 OP 基本上以这种方式做到这一点
-
@seisvelas 我不这么认为——这些包装器允许在您的 Scikit-learn 工作流程中使用 Keras 模型,但不能相反。我看到的唯一解决方案是使用 Keras 操作实现
sklearn.metrics.cohen_kappa_score -
@seisvelas 如何使用 Keras 操作实现?
-
也许this question 中的答案正是您想要的。
标签: python keras scikit-learn