供应商报的准确率通常没写清口径:算的是字符级还是字段级?含不含空字段?漏检怎么计?口径不一致,两份测试报告就没有任何可比性。这篇文章给出一套可复现的验收方法——样本抽取原则、标注规范、字段级正确率与漏检率的算法,以及怎样用一份验收表把口径固定下来。

同一批图纸、同一套识别结果,换三种统计口径去算,准确率分别是 99.1%、94.3% 和 86.7%。三个数字都不算造假,差别全在口径。验收的第一件事不是跑测试,而是把口径写清楚。

一、为什么「准确率 99%」这句话没有意义

标题栏十几个字段的重要性差异极大:图号错一个字符,整张图就挂不上物料;「设计」栏人名错一个字几乎没有业务影响。字符级准确率把两类错误等权平均,风险完全没被度量。更隐蔽的是分母不清——某个字段整体漏检就从分母里剔掉,漏得越多准确率反而越高。

二、先把口径定死:字符级 vs 字段级

字符级

用编辑距离衡量识别文本与真值的差异,适合评估引擎本身、定位版面问题,但与业务风险脱节。

字段级

一个字段完全正确才算对,一字之差即为错,对应的是「能不能直接入库」。验收应以字段级为主指标,字符级作诊断辅助。

判定前必须约定归一化规则:全角半角、前后空格、连字符、大小写是否敏感。规则要写成可执行的比较函数,而不是留在会议记录里。

三、样本怎么抽才算数

用一批干净的新图去测,得到的是上限而不是交付水平。样本要按真实来料分布分层,并刻意保留难例。

  • 按来源分层:矢量 PDF、高质量扫描、低质量蓝图、现场拍照,占比与实际一致。
  • 按年代与模板分层:格式差异的影响常大于图面质量。
  • 规模下限:不少于 150 张图,每个待验收字段有效样本不少于 100 个。
  • 难例单列:手写批注、盖章遮挡、旋转、拼接扫描单独出报告,不要混进主指标。

四、标注规范:谁来标、标什么、怎么裁决分歧

  1. 谁来标:由熟悉图纸的业务人员标注,算法团队标注会不自觉迁就模型输出。
  2. 标什么:字段真值加字段框位置,有位置才能区分「认错了」和「没找到」。
  3. 空字段:图上为空要标成显式空值并计入分母;在空字段上输出内容属于虚检,必须扣分。
  4. 分歧裁决:关键字段双人标注,不一致交第三人仲裁并回写规范。一致率低于 98% 说明规范有歧义。

五、字段级正确率与漏检率的算法

先把每个字段归入四类:正确、错误、漏检(真值非空无输出)、虚检(真值为空有输出)。然后:

  • 字段级正确率 = 正确 ÷(正确 + 错误 + 漏检),漏检必须留在分母里。
  • 漏检率 = 漏检 ÷ 真值非空字段总数。
  • 虚检率 = 虚检 ÷ 真值为空字段总数。
  • 可自动入库率 = 高置信度且正确的字段数 ÷ 全部字段数。

报告要按字段逐项列出,再给一个按业务风险加权的总分,并单独给出「整张图全字段无错」的比例,它才对应真正不需要复核的图纸占比。

一份合格的验收报告至少包含三组数字:分字段正确率、按风险加权总分、整图零错误率。只报一个平均准确率,基本可以判定为没有认真测过。

六、把口径固定成一份验收表

把上面的约定压成一张表附在合同后,至少包含:字段名、是否必填、归一化规则、业务权重、正确率目标、漏检率上限、置信度阈值、未达标处理方式;再加三行全局约定:样本集版本与哈希、评测脚本版本、复核工时上限。

评测脚本和冻结样本集一起纳入版本管理,每次迭代跑同一条命令出报告。口径固定之后,两次迭代之间的差值才是真实进步。

七、常见的三个测试陷阱

  • 样本泄漏。调参用过的图出现在验收集里,指标会虚高好几个点。
  • 只测有值字段。排除空字段,虚检就永远不会暴露,而它在下游更难排查。
  • 用平均掩盖长尾。整体 96% 可能是九成模板接近满分、一类老模板只有 50%,必须按模板拆开看分布。

小结

准确率不是一个数字,而是一套口径。先把字段级判定规则、样本分层、标注规范与指标公式定下来,验收才不会变成扯皮。