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 做相似度匹配,实现零样本分类评估,无需额外训练。


相关推荐
代码游侠25 分钟前
复习笔记——C语言指针
linux·c语言·开发语言·笔记·学习
Arctic.acc42 分钟前
Datawhale:HelloAgent,学习打卡6
学习
LO嘉嘉VE1 小时前
学习笔记十七:神经网络基础概念
笔记·神经网络·学习·机器学习
孤狼warrior1 小时前
我想拥有作家的思想 循环神经网络及变型
人工智能·rnn·深度学习·神经网络·lstm
不羁的木木1 小时前
【开源鸿蒙跨平台开发学习笔记】Day02:React Native 开发 HarmonyOS-环境搭建篇(填坑记录)
笔记·学习·react native·harmonyos·har
东皇太星1 小时前
VGGNet (2014)(卷积神经网络)
人工智能·神经网络·cnn·卷积神经网络
交流QQ:4877392782 小时前
C# WinForm上位机打造智慧小区远程监控系统:串口与Modbus的奇妙之旅
神经网络
云栈开源日记4 小时前
Python 开发技术栈梳理:从数据库、爬虫到 Django 与机器学习
数据库·爬虫·python·学习·机器学习·django
青衫码上行4 小时前
【Java Web学习 | 第15篇】jQuery(万字长文警告)
java·开发语言·前端·学习·jquery