
项目背景:一个看似简单的文本检测任务Martin Goodson领导的团队曾承诺客户实现“人类级别”的文档数据提取精度,但生产环境中的模型却接连出错,客户投诉不断。错误分析显示,多数问题源于管道早期的“文本检测”环节——即从扫描图像中定位每个单词的坐标(文本框)。现有开源和商业方案均不达标,团队决定基于卷积神经网络对象检测模型构建全新的文本检测器。他们曾认为问题很简单:只需要用合成数据(在新生成的文档图像上标注已知坐标)训练模型即可,无需昂贵的人工标注。然而,项目很快就陷入了复杂性泥潭,团队成员不止一次表示“这根本不可能”。最终,团队在经历了18个月的挫折后凭借一系列关键教训取得了成功。这些教训的核心是:最大的性能提升往往不是来自优化代码,而是来自重新定义问题本身。教训一:不要跳过数据审视——合成数据生成的Bug项目初期,团队急于训练模型,没有花足够时间仔细检查训练数据。神经网络的训练本就缓慢,而他们经常在训练一周甚至更久之后才发现模型存在致命缺陷。绝大多数情况下,缺陷都源于数据生成过程中的微小错误——如果花一两个小时先“肉眼观察”训练数据,这些错误完全可以提前发现。例如,合成文本生成脚本会删除超出页面边缘的文本行,却没有同步删除对应的真值标注,导致训练图像与标注不匹配。因此模型学会了忽略边缘文本,但评测时却按照错误的标注计算损失。团队在浪费数周计算资源后才意识到这个问题——而早期简单抽样几张图像就能立刻暴露这个Bug。实践建议:开始复杂训练之前,务必抽取一批