from seqeval.metrics import f1_score
from seqeval.metrics import precision_score
from seqeval.metrics import accuracy_score
from seqeval.metrics import recall_score
from seqeval.metrics import classification_report
y_true = [['O', 'O', 'O', 'B-MISC', 'I-MISC', 'I-MISC', 'O', 'B-PER', 'I-PER']]
y_pred = [['O', 'O', 'B-MISC', 'I-MISC', 'B-MISC', 'I-MISC', 'O', 'B-PER', 'I-PER']]
# 10个槽位,8个预测争取,acc = 8 / 10
# 预测了三个实体,有一个是预测对的, p = 1 / 3
# 争取答案是两个实体,有一个被预测出来了,r = 1 / 2
# F1 = (2*p*r)/(p+r)
print('accuracy:',accuracy_score(y_true,y_pred))
print('p:',precision_score(y_true,y_pred))
print('r:',recall_score(y_true,y_pred))
print('f1:',f1_score(y_true,y_pred))
print(classification_report(y_true,y_pred))
小黑NER一步步摸索:seqeval包进行序列模型评测
于 2022-03-02 17:33:58 首次发布