【发布时间】:2018-11-07 04:01:34
【问题描述】:
我想知道我的模型的特异性和敏感性。目前,我正在评估所有 epoch 完成后的模型:
from sklearn.metrics import confusion_matrix
predictions = model.predict(x_test)
y_test = np.argmax(y_test, axis=-1)
predictions = np.argmax(predictions, axis=-1)
c = confusion_matrix(y_test, predictions)
print('Confusion matrix:\n', c)
print('sensitivity', c[0, 0] / (c[0, 1] + c[0, 0]))
print('specificity', c[1, 1] / (c[1, 1] + c[1, 0]))
这种方法的缺点是,我只在训练完成后才能得到我关心的输出。宁愿每 10 个 epoch 左右获取一次指标。
顺便说一句:尝试使用 metrics=[] here。可能是callback 是要走的路吗?
【问题讨论】:
-
自定义回调确实是在训练期间完成自定义操作的好方法,请考虑实现一个并确保将其添加到模型训练中。与每个课程一样,您可以将测试集传递给回调,以便在训练中检查指标时使用它
标签: python tensorflow keras performance-testing keras-2