周一早上,收货仓的检验员面前摆着 40 个待检的叶菜批次,排班表上却只有 10 个检测名额。抽哪 10 个?随机抽签最公平,可供应商的历史、进货季节和上游环境并不相同,把它们当作同等风险,检测能力就被平均摊薄了。纵横国际官网讨论抽检优先级,起点就是这个约束:名额固定,先检查谁。
两种抽法的差别在哪里
| 对比维度 | 随机抽检 | 基于风险的抽检 |
|---|---|---|
| 抽样规则 | 每批机会均等 | 按风险优先级由高到低排序 |
| 新供应商 | 与其他批次同等对待 | 无历史,标注“不确定”,进入探索名额 |
| 数据反馈 | 结果无偏,但不随经验改进 | 结果回写,下一轮更新排序 |
| 可解释性 | 不需要 | 需要说明是哪些因素推高了排序 |
| 主要风险 | 高风险批次被稀释 | 越常被查的对象越像高风险 |
一本示意账:40 批抽 10 批
下面的数字是为说明逻辑而设的示意值,不是任何真实检测结果。假设 40 个批次里实际有 4 批存在问题,但检验员事先并不知道是哪几批。
- 随机抽 10 批:平均能抽到 10 × 4 ÷ 40 = 1 批。四批问题批次一个都没抽中的概率约为 30%,也就是说,重复十周,大约有三周会空手而归。
- 按风险排序抽前 10 批:如果模型恰好把其中 3 批排进了前 10(示意),就能抽到 3 批。
这本账没有告诉我们模型有多准。它只说明,排序有效与否,差别就体现在同样的 10 个名额上。如果排序其实和抛硬币差不多,命中数会回到平均 1 批,这正是后面必须做验证的原因。
还有一点要说清楚:没被抽中的 30 批,并不因此被证明合格。风险排序不会增加检测总量,只改变名额的分配方式,其余批次的把关,仍然靠供应商资质审核、进货查验和冷链温度记录这些日常控制来完成。
风险分交出的,只是一张检查顺序表
模型的输入通常包括 Supplier(供应商)、Product(产品类别)、Season(季节)、Environment(环境,如天气与产地条件)、Inspection History(抽检历史)和 Supply Chain Stage(供应链环节)。输出是每个批次的风险分与排序,例如 B-07 为 0.81、B-02 为 0.64、B-11 为 0.38、B-05 为 0.12(示意)。0.81 并不表示 B-07 不合格,它只表示这一周里更值得先查。合格与否,依据仍然是法定检验方法与适用标准,以现行版本为准。输入还有时效问题:天气、季节和到货信息如果滞后,排序就会建立在过期的世界上,所以这些字段要随批次到货及时更新,而不是每季度整理一次。
分数怎样被拆成各项贡献,82 分从哪里来有一张拆解图;历史抽检记录怎样被整理成模型能读的特征,抽检历史怎样变成检查优先级讲了完整的闭环。
没有历史的批次怎么办
再设想一个场景:一家新合作的供应商,抽检历史是空白(示意)。只按历史不合格次数排序,它的次数是 0,会被排到队尾,这恰恰是最不该有的结论。没有记录,说明没有证据,并不等于没有风险。
更合理的做法有两步。先用同产品类别、同产地或同季节的整体水平作为先验,给它一个起点,并同时标出“不确定”。再把这类批次放进探索名额,优先抽几批,让系统尽快补上第一批数据。模型对自己不熟的对象应当能说“把握不大”,这就是拒识(reject option)。为什么不能只看不合格次数,这一篇列出了三种典型的判断失误。
抽样偏差:越常被查,越像“高风险”
风险抽检最隐蔽的陷阱,是只有被抽中的批次才有检测结果。设想供应商 X 因为历史上出过一次问题,每周被抽 3 次;供应商 Y 从没被抽过(示意)。一年后,X 名下有几条不合格记录,Y 名下一条也没有。模型据此认定 X 风险高、Y 风险低,可 Y 的“干净”只是没人去查过,而不是真的没有问题。被查得多,记录就多;记录多,分数就高;分数高,又会被查得更多,一个自我强化的循环就此形成。“没检出”本身也有边界:检测项目没覆盖到的风险,不会在记录里留下任何异常,模型也就学不到。
对策有三类:
- 保留随机名额:假设每周 10 份里留 2 份做完全随机抽检(示意),这部分样本没有被排序筛选过,可以用来补上盲区,也可以用来评估模型。
- 探索与利用并行:多数名额用于检查已知高风险对象(利用),少量名额用于抽查没有数据的对象(探索)。
- 样本加权:被抽中概率越低的样本,训练时权重越大,用来抵消抽样方式本身带来的偏斜。
怎样验证排序真的有用
- 用时间切分:只拿过去的记录训练,拿之后的记录检验,避免未来信息泄漏。随机打乱数据后再切分,会让模型偷看到未来。
- 看命中率的提升:排在前四分之一的批次,实际异常率是否明显高于随机抽出的批次?高不出来,排序就没有价值。
- 检查分数是否可信:分数 0.8 的批次,长期来看是否大约有八成出现问题?可以用 Brier 分数与 ECE 来量化,必要时做概率校准。
- 分季节、分品类看:整体指标好看,某个品类或某个季节却可能崩掉。
- 排序要赶得上决策:收货口通常要在批次入库前决定抽哪些,模型必须在这个时间点之前给出排序。检验员有充分理由时可以调整排序,调整的原因和结果要记录下来,作为下一轮的反馈。
2026 年 9 月发表在 Frontiers in Food Science and Technology 的一项研究,在欧盟 RASFF 2019–2025 年共 22,643 条通报上做严重程度分类,用概率校准把 ECE 由 0.267 降到 0.043,并输出共形预测集。它面对的是通报的严重程度,并不是批次抽检排序,但做法说明了两点:分数要校准之后才有资格被当作概率;作者也明确这是原型,假设时间平稳,需要部署验证。
排序只决定企业自主检验预算里的先后,法规规定的抽样与检验要求不会因为模型而改变。如果排序靠前的批次检出率并不比随机抽出的更高,这个模型现阶段只能作为参考,不能改变抽检方案。