← 返回叶护卫

田间实测报告:76.5% 是怎么来的?

模型的 6 代演进过程与每代落差:看可视化 →

我们把线上正在跑的模型,直接拿到 公开田间数据集 PlantDoc(网络/田间实拍,非实验室棚拍)上跑了一遍, 并把结果、置信度行为和改进对照全部公开。这一页可能不好看,但它是真的——而且它决定了产品该怎么设计。

数据:PlantDoc(CC-BY-4.0) 测试集 236 图 / 451 个叶片实例 27 类映射到我们的 39 类 模型:线上 best_model.onnx

📉 核心结论:实验室与田间存在巨大落差

—PlantVillage 验证集 Top-1(实验室)
—PlantDoc 田间 Top-1
—PlantDoc 田间 Top-3
—田间平均置信度

说明:实验室成绩来自 PlantVillage 数据集验证集(干净背景、单叶居中、均匀光照); 田间成绩来自 PlantDoc(真实背景、多角度、遮挡与逆光)。两者不可混为一谈—— 公开文献里用 PlantVillage 训练的模型在 PlantDoc 上也会大幅掉点,Detection 类基准的 mAP50 也仅在 38–48% 区间。

⚠️ 更要紧的发现:模型在田间「又错又自信」

—平均 Top-1 置信度
—置信度 ≥60% 的样本占比
—高置信度下的误判率
—触发「不确定」提示的比例

如果置信度不可靠,那么「置信度低于 60% 就提示不确定」这层安全网在田间几乎失效。 这条发现直接改变了我们的产品设计(见下方「我们怎么应对」)。

📊 置信度分布与校准(田间样本)

左列是模型自报置信度的分布,右列是该档位下的实际判对率——两者一起看才是"它知不知道自己不确定"的证据。 理想情况下置信度越高、判对率应单调上升;如果最高档的判对率反而下降,说明存在"过度自信尾巴"。 这里如实给出,不做挑选。

🧪 改进对照实验(同一测试集 A/B/C)

方案Top-1Top-3平均置信度高置信度误判率校准误差 ECE(前 → 后)
加载中…(实验完成后自动显示)
⚠️ 先看清这张表是在哪个模型上做的:下面 A/B/C 三项对照实验用的是初版模型(只在实验室数据上训练,田间 Top-1 仅 11%), 目的是回答一个问题 ——「靠后处理(裁背景、翻转、多尺度)能不能补救领域差异?」 答案是不能。它不代表现网水平;现网(田间域适应 + PlantWild)的指标见上方「置信度分布」与「混淆矩阵」两节。

实验结论(老实说): 简单的后处理对准确率提升有限(Top-1 11.0% → 11.5%,都是初版模型的数字),因为领域差异(实验室棚拍 vs 田间实拍)不是裁剪或增强能补上的, 真正有效的是用田间数据做微调;
但实验暴露了另一个更关键的问题并给出了解法:模型原始置信度极度过度自信——田间样本上的校准误差 ECE 高达 64.6%, 经温度校准后降到 3.8%。也就是说:置信度本身是可以被"修正诚实"的, 修正之后"置信度低就提示不确定"这条安全防线才真正可用。
注:本对照实验在 200 实例子集上完成(服务器为 2 核,全量 451 实例耗时过长);温度 T 由一半样本拟合、另一半评估。

A 叶片分割裁剪:用绿度+饱和度投影定位叶片包围盒,裁掉杂乱背景再送模型; B TTA:水平翻转 + 双尺度推理后概率平均; C:A+B 叠加。校准误差 ECE 越小说明"置信度越诚实"。

🛡️ 我们怎么应对(产品侧策略)

1. 把「Top-3 候选」当主输出

不再只给一个病名,而是给出三个候选与各自置信度,让人来做最后判断。

2. 关键区域热力图

让使用者看到模型在看哪里;关注点明显跑偏时可以推翻结论。

3. 不确定就明说

低置信度时明确提示"可能不在覆盖范围内,建议换角度重拍或咨询农技员"。

4. 用户纠正闭环

结果页提供「识别不对?点这里纠正」,反馈进入改进闭环(已上线)。

明确边界:本系统是辅助判断工具,不是诊断结论。田间实拍下准确率显著低于实验室水平, 用药请以当地植保部门指导与农药标签为准。

🖼 实测样例(左:原始田间图 / 右:裁切与模型判断)

样例由实测脚本自动生成,绿框为 Top-1 正确,红框为 Top-1 错误。

🧩 交互式混淆矩阵(当前线上模型 · 336 输入)

行=真实类别,列=预测类别,对角线为判对;每行按该类样本数归一化上色。 鼠标悬浮可看具体数量与占比,点击左侧类别名可高亮该行。 下方逐类指标表按 F1 从低到高排序——把最弱的类别直接摆在最上面,不做美化。

数据源 /evi/confusion.json:用线上部署的同一份权重(best_model.onnx)、 与服务端逐行一致的预处理(等比缩放 + 中心裁剪 336)在本测试切分上实测,逐张预测明细可复算。

🔬 复现方式(可核验)

数据:PlantDoc(Singh et al., 2020,CC-BY-4.0)→ Hugging Face agyaatcoder/PlantDoc test split(236 图 / 451 实例); 模型:线上部署的 best_model.onnx(DINOv2 ViT-S/14,39 类,336×336 输入); 预处理:EXIF 纠正 → 等比缩放 + 中心裁剪 336 → ImageNet 归一化(与服务端 _preprocess 完全一致); 评测:按数据集标注框裁出叶片(外扩 8%)后送入模型,仅统计能映射到我们 39 类的标签。

打开叶护卫 → 去田间课堂答题 → 项目价值 →

🚀 模型改进历程(每一行都是实测)

方案实验室 Top-1田间 Top-1田间 Top-3单张延迟说明
结论:真实田间 Top-1 从 11.31% 提到 76.5%(约 6.8 倍), 而最快的轻量路线(知识蒸馏版)单张只要 159 ms,比初版还快约 1.9 倍—— 精度和速度是同时改善的,靠的是「基础模型 + 数据域适应 + 知识蒸馏」三件事。上表每一行都有对应评测产物,可复算。
怎么更准
怎么更快