SCOLD 模型最终正确率总结

SCOLD 模型最终正确率总结

以下是论文中最关键的最终结果总结(包括 Zero-shot、Few-shot、Fine-tune、Retrieval):


一、Zero-shot Classification(零样本分类准确率)

零样本是你最关心的指标,直接体现模型无需训练即可分类叶片病害的能力。

论文 Table 4 中,SCOLD 在 10 个 OOD 数据集上的平均准确率是:

📌 SCOLD Zero-shot 平均准确率:34.80%(最高)

对比:

模型 平均 Zero-shot Acc (%)
SCOLD(Ours) 34.80
SigLIP2 33.92
CLIP-L 31.70
BioCLIP 29.66

SCOLD 在 10 个数据集里有 6 个拿到第一名

数据集 SCOLD Zero-shot (%) 备注
Wheat 42.26(最高)
Chili 17.22(最高)
Onion 20.39(最高)
Eggplant 36.64(最高)
Guava 59.24(最高)
Spinach 48.39(最高)

➡️ 整体结果:SCOLD 是所有模型中零样本表现最好的。


二、Few-shot Classification(少样本)

论文给出了 1-shot、4-shot、16-shot 准确率。

📌 最重要结论:

  • SCOLD 在 16-shot 时几乎所有数据集达到 95%--98% accuracy
  • 明显强于 BioCLIP / SigLIP2 / CLIP

例如 16-shot:

数据集 SCOLD (%)
Black gram 97.22
Durian 97.09
Eggplant 54.55(最难数据集之一)
Guava 84.22
Radish 95.82
Soursop 98.61

三、Fine-tuning(全微调)

论文 Figure 8:

  • 多数数据集 SCOLD 达到 90〜100% accuracy

  • 在最难的 Eggplant / Guava / Spinach 上优势特别明显:

    • Eggplant:65.62%(CLIP 只有 53.51%)
    • Guava:82.55%(CLIP 55.66%)
    • Spinach:74.34%(CLIP 42.76%)

四、Image-Text Retrieval(图文检索)

SCOLD 在 LeafNet 测试集上:

Image→Text

  • R@1:95.49%(比 CLIP 高 0.48%)
  • R@5:98.85%(+0.96%)

Text→Image

  • R@1:95.46%(+0.15%)
  • R@5:99.70%(+1.52%)

➡️ SCOLD 在检索任务中全面超过原版 CLIP。


🎯 最终总体结论(最简版)

项目 最终表现
Zero-shot 34.80%(10 个 OOD 集群平均,最高)
Few-shot (16-shot) 多数数据集达到 95%--98%+
Fine-tune 多数数据集达到 90%--100%
Retrieval R@1 ≈ 95.5%,显著超过 CLIP

➡️ Zero-shot:SCOLD 是当前农业领域最强的开放词汇病害分类基础模型。

➡️ Few-shot / Fine-tune 也保持优势,说明特征泛化能力强。


SCOLD 的训练方式

论文中的 SCOLD 使用 对比学习(Contrastive Learning)+ Soft Target + 图文对齐 进行训练,本质上是一个类似 CLIP 的图文模型,但做了农业领域的增强。


🔧 训练组成

(1)训练数据:LeafNet(作者构建)

  • 超过 186,000 张叶片图像
  • 搭配 97 个类别对应的长文本描述(疾病症状描述)

图像 + 文本 = 一对训练样本

用于图文对齐。


🔧 (2)训练模型结构

模块 使用的架构
视觉编码器 Swin-T(Swin Transformer Tiny)
文本编码器 RoBERTa-base
图文对齐方式 类似 CLIP 的双塔模型(Dual Encoder)

两者输出 512 维 embedding,通过对比学习对齐。


🔧 (3)训练方式(核心)

a)CLIP-style 对比学习 Loss(Image--Text Contrastive Loss)

每个 batch 内:

  • 图像 embedding 和文本 embedding 做 cosine similarity
  • 正样本(图像与其对应文本)相似度应最高
  • 其余文本是负样本

b)Context-aware Soft Target(CST 软标签)← 论文的创新点

不同于 CLIP 的 one-hot:

  • 相同作物但不同病害 → 给一点权重
  • 同病害不同作物 → 给另一点权重
  • 完全无关的类别 → 权重 0

这让模型在农业领域更鲁棒,因为:
同一类作物的病害往往视觉上很相似


🔧 (4)训练参数

  • 从零训练(no ImageNet 初始化)
  • Batch size = 16
  • Epoch = 20
  • Optimizer = AdamW
  • Warmup + Cosine Annealing
  • GPU:RTX 3060 Ti

(说明该模型可落地,资源需求不高)


🧪 ② 零样本(Zero-shot)是怎么验证的?

零样本验证 不需要再训练模型

它的流程完全等同于 CLIP 的 zero-shot 测试方式:


Zero-shot Evaluation 流程

步骤 1:为每个类别生成文本描述(Prompt)

论文使用了长文本模板,例如:

复制代码
An image of [crop name] leaves diseased by [disease name] with symptoms of [detailed symptom description].

例如:

复制代码
An image of tomato leaves diseased by Late Blight with symptoms of brown irregular lesions...

每个类别都会生成对应的文本向量(text embedding)。


步骤 2:将 OOD 图像输入视觉编码器 → 得到 image embedding

例如:

  • 你把一张从未见过的 "Guava Anthracnose" 叶片图片传进去
  • 模型提取其向量

步骤 3:图像向量与所有类别文本向量做相似度比较

算一个图像与所有类别文本的 cosine similarity:

复制代码
sim(image, text_class_1)
sim(image, text_class_2)
...
sim(image, text_class_K)

最大值对应的类别即模型预测。


步骤 4:与 ground truth 对比 → 得到 zero-shot accuracy

所有数据集的预测结果和标签比对即可。

这就是论文 Table 4 的来源。


🎯 为什么这叫 Zero-shot?

因为:

  • 测试数据(如 Chili、Durian、Guava)从没出现在训练中
  • 甚至作物类别都完全是新作物
  • 不需要微调,直接用预训练模型分类

体现模型的真实泛化能力。


📌 总结(一句话版本,可直接写入论文)

SCOLD 通过图文对比学习在 LeafNet 上进行预训练,并采用 Swin-T 与 RoBERTa 作为双编码器结构。训练后,通过将 OOD 测试图像 embedding 与各类别的文本描述 embedding 做相似度匹配,实现零样本分类评估,无需额外训练。


相关推荐
西岸行者5 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意5 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码5 天前
嵌入式学习路线
学习
呆萌很5 天前
卷积神经网络的基石——基础卷积模块
神经网络
毛小茛5 天前
计算机系统概论——校验码
学习
babe小鑫5 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms5 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下5 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。5 天前
2026.2.25监控学习
学习
im_AMBER5 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode