如何优化含缩写与OCR错误的发票文档类型到数字的映射质量?
提升发票文档类型映射质量的方法
先做缩写与OCR错误的预处理映射
建立专属映射表覆盖常见缩写和OCR识别误差:- 缩写映射:
Συνδ.→Συνδρομών,Παρ.Υπη.→Παροχής Υπηρεσιών - OCR错误映射:
6→δ(希腊语字符δ与数字6形似),Y→Υ,nn→ηη,直接剔除....δ这类无意义噪声
预处理时先将待匹配文本转换为标准形式,从根源上避免缩写导致的长度差异问题。
- 缩写映射:
优先采用关键词匹配策略
每个文档类型都有独特核心关键词:- 00对应
Εισιτηρίων(门票) - 01对应
Συνδρομών(订阅) - 02对应
Παροχής Υπηρεσιών(服务提供) - 03对应无后缀的
ΤΙΜΟΛΟΓΙΟ(普通发票)
先提取待匹配文本中的关键词,只要匹配到独特关键词就直接映射对应类型,跳过全文本的Levenshtein距离计算,避免前缀相同引发的误判。
- 00对应
优化Levenshtein距离的计算逻辑
由于多个类型共享Τιμολόγιο前缀,计算距离时可以:- 先统一将待匹配文本和标准类型文本转为小写(或大写),去除共同前缀
τιμολόγιο - 仅对剩余部分计算Levenshtein距离,这样
Τιμολόγιο Παρ.Υπη.处理后剩余παρ.υπη.,与παροχής υπηρεσιών的距离会远小于与空字符串(ΤΙΜΟΛΟΓΙΟ处理后剩余内容)的距离,避免误匹配。
- 先统一将待匹配文本和标准类型文本转为小写(或大写),去除共同前缀
多规则融合兜底
按以下顺序执行匹配:- 预处理替换缩写和OCR错误
- 检查是否匹配独特关键词,匹配则直接返回对应数字
- 若未匹配到关键词,再用优化后的Levenshtein距离计算相似度,取最匹配的类型
这种分层策略兼顾了准确性和鲁棒性。
基于标注数据训练轻量分类模型(可选)
如果有足够的标注样本,可以训练字符级的分类模型(比如朴素贝叶斯分类器、小型CNN),输入预处理后的文本,直接输出对应的映射数字。模型能自动学习不同类型的字符特征,比纯规则方法更适配复杂的OCR错误场景。
内容的提问来源于stack exchange,提问作者niksonxs
相关产品推荐
相关产品推荐

