我正在尝试使用 huggingface 的seqeval度量实现来评估我的 POS 标记器,但是由于我的标记不是为 NER 制作的,因此它们的格式不符合图书馆的预期。因此,当我尝试阅读分类报告的结果时,特定类别结果的标签始终缺少第一个字符(如果我通过 ,则为最后一个字符suffix=True)。
有没有办法禁用标签中的实体识别,或者我必须通过我的所有标签和起始空间来解决这个问题?(鉴于该库应该适合 POS 标记,我希望有一个内置的解决方案)
SSCCE:
from seqeval.metrics import accuracy_score
from seqeval.metrics import classification_report
from seqeval.metrics import f1_score
y_true = [['INT', 'PRO', 'PRO', 'VER:pres'], ['ADV', 'PRP', 'PRP', 'ADV']]
y_pred = [['INT', 'PRO', 'PRO', 'VER:pres'], ['ADV', 'PRP', 'PRP', 'ADV']]
print(classification_report(y_true, y_pred))
输出:
| 精确 | 记起 | f1-分数 | 支持 | |
|---|---|---|---|---|
| DV | 1.00 | 1.00 | 1.00 | 2 |
| ER:压力 | 1.00 | 1.00 | 1.00 | 1 |
| 新台币 | 1.00 | 1.00 | 1.00 | 1 |
| 反渗透 | 1.00 | 1.00 | 1.00 | 1 |
| 反相 | 1.00 | 1.00 | 1.00 | 1 |
| 微平均 | 1.00 | 1.00 | 1.00 | 6 |
| 宏平均 | 1.00 | 1.00 | 1.00 | 6 |
| 加权平均 | 1.00 | 1.00 | 1.00 | 6 |