如何按每个标签计算pos标签器的准确性

时间:2018-10-31 17:35:18

标签: python-3.x tensorflow keras nltk pos-tagger

我已经使用NLP4Hackers的article作为基准制作了一个keras模型pos标记器。目前,我可以直接通过keras model.evaluate 方法计算准确性。准确地说,我想按标签计算准确性,如下所示:

'JJ':准确度为98.56,

“ NNS”:精度为99.01

“ NN”:准确度96.43

...

任何建议将不胜感激。

谢谢。

1 个答案:

答案 0 :(得分:2)

您可以想象的所有评估指标都在Scikit学习中

您有两种可能性,要么计算confusion matrix 然后您会看到对角线值。

y_true = ["cat", "ant", "cat", "cat", "ant", "bird"]
y_pred = ["ant", "ant", "cat", "cat", "ant", "cat"]
confusion_matrix(y_true, y_pred, labels=["ant", "bird", "cat"])
array([[2, 0, 0],
       [0, 0, 1],
       [1, 0, 2]])

或者您可以按标签计算F1 score标签

from sklearn.metrics import f1_score
y_true = [0, 1, 2, 0, 1, 2]
y_pred = [0, 2, 1, 0, 0, 1]
f1_score(y_true, y_pred, average=None)