零样本学习指标

一、零样本学习(Zero-Shot Learning, ZSL)概念总览

**零样本学习(ZSL)**指的是:

训练阶段从未见过目标类别的样本的情况下,模型仍能对这些类别进行正确识别。

实现手段通常依赖:

  • 语义侧信息

    • 属性向量(Attributes)
    • 文本描述
    • 词嵌入(word2vec, GloVe)
    • CLIP 类图文嵌入
  • 对齐机制

    • 将视觉特征映射到语义空间
    • 或将语义嵌入映射到视觉空间
    • 或联合嵌入(vision--language joint embedding)


二、狭义零样本学习(Conventional ZSL)

1. 定义

狭义零样本(Conventional ZSL)最早、最理想化的一种ZSL设定:

测试阶段仅包含"未见类(Unseen Classes)"样本。

即:

text 复制代码
训练集 = Seen Classes
测试集 = Unseen Classes

模型完全不用考虑对已见类的判断偏置问题。


2. 数学表述

  • 训练类别集合:

    \\mathcal{Y}_s = {y_1, y_2, ..., y_S}

  • 测试类别集合:

    \\mathcal{Y}*u = {y* {S+1}, ..., y_{S+U}}, \\quad \\mathcal{Y}_s \\cap \\mathcal{Y}_u = \\emptyset

  • 测试标签预测范围仅限:

\\hat y \\in \\mathcal{Y}_u


3. 特点

✅ 优点

  • 评估简单
  • 无类别间严重偏置
  • 易于展示模型的"语义迁移能力"

❌ 局限

  • 严重不符合真实应用

现实中:
模型既要面对见过类,也要面对没见过类。


4. 农业场景举例

假设你训练模型仅见过:

text 复制代码
Seen: 稻瘟病、稻曲病、白叶枯病

测试时只让模型识别:

text 复制代码
Unseen: 稻条纹叶枯病、纹枯病

👉 这就是狭义ZSL。

模型不会需要判断输入是不是"老病害"还是"新病害",因此任务容易很多。



三、广义零样本学习(Generalized ZSL, GZSL)


1. 定义

**广义零样本(GZSL)**是现实世界的零样本版本:

测试阶段同时包含 Seen 类和 Unseen 类样本。

即:

text 复制代码
训练集 = Seen Classes  
测试集 = Seen ∪ Unseen

并且:

\\hat y \\in \\mathcal{Y}_s \\cup \\mathcal{Y}_u



2. 核心难点:Bias Problem(类别偏置)

在普通训练下:

模型对 Seen 类天然更熟悉

因而会严重偏向预测 Seen 类。

典型现象:

  • Unseen 类准确率很低
  • 几乎所有样本都会被强行判为 Seen 类


3. GZSL 为什么更难?

本质难度

GZSL = 同时解决:

  1. 语义迁移(Seen → Unseen)
  2. 分布偏置校正
  3. 开放集感知(novelty detection)


4. 农业场景举例

部署无人机病害识别系统时,模型面临:

text 复制代码
输入样本 = 老病害 + 新病害混合

模型必须:

✅ 既能正确识别:稻瘟病

✅ 还能识别:从未训练过的稻条纹叶枯病


实际应用中 你们做的 SCLOD + MoE + CLIP 微调 基本都是 GZSL 场景



四、H-Mean 评价指标


1. 为什么要 H-Mean?

因为在 GZSL 中:

  • seen 类准确率 ( Acc_s ) 通常很高
  • unseen 类准确率 ( Acc_u ) 通常很低

如果只看总体准确率:

Acc = \\frac{N_{correct}}{N_{total}}

👉 会被 seen 类"掩盖",对 unseen 完全不敏感。



2. H-Mean 定义

**H-Mean(调和平均)**专门用于平衡 seen / unseen 性能:

\\boxed{ H = \\frac{2 \\cdot Acc_s \\cdot Acc_u}{Acc_s + Acc_u} }



3. 指标性质

✅ 平衡敏感

任何一方准确率趋近 0,整体得分即趋近 0:

text 复制代码
Acc_s = 90%
Acc_u = 5% → H ≈ 9.5%

逼迫模型必须兼顾两类。


✅ 比算术均值更严格

算数均值:

M = \\frac{Acc_s + Acc_u}{2}

无法严厉惩罚极端失衡。


H-Mean 能有效揭示:

模型是否真正实现了 "Seen 与 Unseen 双均衡"。



4. 使用方式

在 GZSL 实验中,通常汇报:

text 复制代码
Acc_s  (Seen Accuracy)
Acc_u  (Unseen Accuracy)
H-Mean

三项同时汇报,缺一不可。



五、三者关系速查表

项目 狭义 ZSL 广义 GZSL
测试类别 只有 Unseen Seen + Unseen
是否存在偏置问题 ❌ 否 ✅ 严重
实验难度 ⭐⭐ ⭐⭐⭐⭐⭐
现实适用性 ❌ 较弱 ✅ 极强
是否需要 H-Mean ❌ 不需要 ✅ 必须


指标 适用范围 作用
Acc_u ZSL + GZSL 测 unseen 类能力
Acc_s GZSL 测已知类记忆能力
H-Mean GZSL 专用 综合平衡度评价


六、与你当前研究的关联

你目前在做:

  • 病害零样本识别(SCLOD + MoE / CLIP)
  • 多病害、多作物、跨域泛化

几乎全部属于 GZSL 的研究范式。

评估时:

✅ 你一定要使用:
Acc_s, Acc_u, H-Mean

❌ 只报单一准确率 = 论文不规范



七、论文可用标准表述模板

你可以直接用下面这一小段话写论文:


狭义零样本学习(Conventional ZSL)是指在测试阶段仅包含未见类别样本的识别任务设置,而广义零样本学习(Generalized ZSL, GZSL)则更贴合真实应用场景,其测试阶段同时包含已见类与未见类样本。由于模型在训练阶段仅见过已知类别,往往对 seen 类产生明显偏置,因此需分别评估两类识别准确率,并采用调和平均指标(H-Mean)对模型在 seen / unseen 类之间的综合平衡性能进行度量,其定义为:

H = \\frac{2 \\cdot Acc_s \\cdot Acc_u}{Acc_s + Acc_u}.


相关推荐
小弥儿12 小时前
GitHub今日热榜 | 2026-08-11:图原生基础设施首日登顶
学习·开源·github
不爱学英文的码字机器13 小时前
推荐算法梳理,六种主流模型与九步训练流程
算法·机器学习·推荐算法
狂奔solar13 小时前
PCA主成分分析 —— 用更少的维度保留最多的信息
机器学习·pca
Mr.huang14 小时前
自注意力机制(Self‑Attention)
人工智能·深度学习
for_ever_love__15 小时前
python基础语法学习: 数据容器
windows·python·学习
云空16 小时前
《电子专业完整学习路线图(分两套:本科四年版 / 零基础自学速成版)》
科技·学习·学习方法·高考
min(a,b)16 小时前
学习第16天:LangGraph 与 Agent 工作流编排
学习
woshihuanglaoshi16 小时前
鸿蒙技术进阶全景高级成长体系:从初中级到架构师的技能树/学习路径/项目实战/认证体系系统性方法论
学习·华为·harmonyos
AI即插即用16 小时前
即插即用系列 | IEEE TMI PLG-HN:原型学习引导的 CNN-Transformer 混合网络,攻克乳腺肿瘤分割难题
人工智能·深度学习·神经网络·学习·目标检测·cnn·transformer
别动我齐刘海17 小时前
机器学习基础2——C++、OpenCV、点云、Open3D
c++·人工智能·opencv·机器学习·计算机视觉·机器人·ros2