小编Abh*_*mar的帖子

ValueError:在Keras中使用自定义指标时,未知指标函数

Keras 2.x消除了我需要使用的许多有用指标,因此我将功能从旧的metrics.py文件复制到了我的代码中,然后按如下方式包含了它们。

def precision(y_true, y_pred): #taken from old keras source code
     true_positives = K.sum(K.round(K.clip(y_true * y_pred, 0, 1)))
     predicted_positives = K.sum(K.round(K.clip(y_pred, 0, 1)))
     precision = true_positives / (predicted_positives + K.epsilon())
     return precision
def recall(y_true, y_pred): #taken from old keras source code
     true_positives = K.sum(K.round(K.clip(y_true * y_pred, 0, 1)))
     possible_positives = K.sum(K.round(K.clip(y_true, 0, 1)))
     recall = true_positives / (possible_positives + K.epsilon())
     return recall
Run Code Online (Sandbox Code Playgroud)

...

model.compile(loss='categorical_crossentropy', optimizer='adam', 
metrics=['accuracy', precision, recall])
Run Code Online (Sandbox Code Playgroud)

这导致

ValueError: Unknown metric function:precision
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?根据Keras文档,我看不到我做错了什么。

编辑:

这是完整的回溯:

 Traceback (most recent call …
Run Code Online (Sandbox Code Playgroud)

python machine-learning keras

8
推荐指数
2
解决办法
3127
查看次数

标签 统计

keras ×1

machine-learning ×1

python ×1