SER进行推理预测后,只能将图片一部分的实体进行识别,后面的实体都会标注为other #14959
Replies: 1 comment
-
针对你提出的 SER(结构化实体识别)推理后只能识别图像部分实体,其余都标注为 other 的问题,根据你提供的描述及参考的 Issue(https://github.com/PaddlePaddle/PaddleOCR/issues/14275),以下是可能的原因及对应的改进建议: 🔍 问题原因分析:
SER 模型依赖于 Transformer 编码器(如 LayoutXLM),该类模型有最大输入长度限制(如512 tokens)。如果图片信息在 token 编码后超过最大长度,则超出的部分会被截断,导致后部实体被丢弃或识别为 other。 ⮕ 判断依据:你提到“前面部分可以识别,但后面都为 other”,同时 SER 所使用的模型如 LayoutXLM、LayoutLMv2 等都存在这种问题。
在构建 SER 输入时,若文本块顺序未优化或不符合横向纵向文档排布(如未根据 layout 对 box 进行合理排序),可能导致信息无效利用,一部分 token 被序列长度限制截断。
如果类别标签(class_list_xfun.txt)未包含全部实体类型,新增的实体也可能被标注为 other。你可以检查 ser_dict_path 对应的文件确认。
也可能是 OCR 的 box/rec 阶段未准确地识别全部文本区域,从而影响后续 KIE 模型。你可以打印 OCR 结果(boxes + texts)确认有无遗漏。 ✅ 解决方案建议: 方案一:优化输入顺序 & 提前截断无效文本
方案二:换用长文档支持模型(高级)
但这需要对底层代码做出一定深度修改。 方案三:改为多段式处理
方案四:升级 PaddleOCR 版本 你当前使用的是 2.8 版本(release-2.8),建议升级至至少 2.9 或 2.10,修复过一些相关文本截断处理逻辑。如由 OCR 底层处理造成的 box 丢失问题,可能已在新版中优化。 🛠️ 附加建议设置:
🔗 参考: 相关 Issue:#14275 此问题与其他用户提出的“部分内容无法识别”具有高度一致性,因此建议从文档截断与输入排序两方面作为优先优化对象。 如需更深入帮助,推荐提供完整图片的 OCR+KIE 中间结果,包括 boxes, predictions 与 tokens 数量统计。这样可更快定位截断瓶颈。 希望以上解答对你解决问题有所帮助!如果还有具体代码文件路径或位置不清,可继续追问~ Response generated by 🤖 feifei-bot | chatgpt-4o-latest |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
🔎 Search before asking
🐛 Bug (问题描述)
SER进行推理预测后,只能将图片一部分的实体进行识别,后面的实体都会标注为other,在过往的issue里有类似的问题,请问该如何修改代码得到全部的序列?
🏃♂️ Environment (运行环境)
硬件信息
CPU:
2核
AI加速卡:
Tesla V100-SXM2-32GB
总显存:
16 GB
总内存:
16 GB
总硬盘:
100 GB
环境配置
Python:
3.10.10
框架信息
PaddlePaddle 2.5.2
paddlenlp 2.5.2
PaddleOCR release-2.8
🌰 Minimal Reproducible Example (最小可复现问题的Demo)
nothing
Beta Was this translation helpful? Give feedback.
All reactions