【发布时间】:2020-10-20 20:37:06
【问题描述】:
在光学字符识别的背景下,我将尽力总结我的问题:
-
我有参考句和预测句。
-
使用Levenshtein editops function,我创建了一个列表,其中包含一个元组,其中包含:步骤类型(插入、替换、替换)、参考序列中修改的字符、预测序列中修改的字符,最后是在所有参考句子中进行这些更改的次数(实际上,这些错误对返回的最大出现次数)
[(('insert', 'e', 'm'), 11), (('insert', 't', 'a'), 8), (('insert', 'r', 'o'), 5), (('replace', 'a', 'e'), 2), (('replace', 't', 'T'), 1), (('replace', 'r', 'R'), 1), (('replace', 'M', 'm'), 1), (('delete', ' ', 'a'), 1), (('replace', 'p', 'o'), 1), (('replace', 't', 'a'), 1), (('replace', 'e', 'e'), 1), (('replace', ' ', 'r'), 1), (('insert', ' ', 'd'), 1), (('replace', ' ', 'd'), 1), (('replace', 'i', 'e'), 1), (('replace', 'l', 's'), 1)]
- 是否可以从上一个列表中用这些错误对和最大出现次数制作一种“混淆矩阵”?像这样:
输出示例
Predicted e m t a r ...continue
Reference
e 1 11 0 0 0
m 0 0 0 0 0
t 0 0 0 8 0
a 2 0 0 0 0
r 0 0 0 0 0
...continue
或像这样(不带标签):
[[1 11 0 0 0
0 0 0 0 0
0 0 0 8 0
2 0 0 0 0
0 0 0 0 0]]
注意:当未遇到字符错误对时,此“矩阵”示例中默认替换值 0。
- 第二次,是否有可能获得这个“矩阵”的可视化?例如,使用 matplotlib 或 seaborn。
解决它的轨道?提前致谢。
【问题讨论】:
标签: python-3.x