社区计算机视觉课程文档

零样本学习

Hugging Face's logo
加入 Hugging Face 社区

并获得增强文档体验

开始使用

零样本学习

在介绍性章节之后,我们将在下一节更详细地解释零样本学习 (ZSL)。本章旨在涵盖

  • 各种类型 ZSL 的定义及其之间的差异。
  • 一个使用语义嵌入 [1] 的 ZSL 深入示例。

零样本学习与广义零样本学习

零样本学习和广义零样本学习 (GZSL) 属于机器学习算法的一种类型,其中图像分类模型需要对训练中未包含的标签进行分类。ZSL 和 GZSL 非常相似,主要区别在于模型的评估方式 [2]。

对于 ZSL,模型纯粹根据其对未见类别的图像进行分类的能力进行评估 - ZSL 测试数据集中仅包含未见类别的观察结果。对于 GZSL,模型在可见类别和未见类别上都进行评估 - 这被认为更接近于现实世界的用例。总的来说,GZSL 更具挑战性,因为模型需要确定观察结果是属于新类别还是已知类别。

归纳式零样本学习与转导式零样本学习

根据训练数据的类型,零样本学习有两种

在归纳式 ZSL 中,模型仅在包含可见类别的训练数据集上进行训练,而无法访问未见类别的任何数据。学习过程侧重于从训练数据中提取和泛化模式,然后将其应用于对未见类别的实例进行分类。该方法假设在训练期间可见数据和未见数据之间存在清晰的分割,强调模型从训练数据泛化到未见类别的能力。

转导式 ZSL 的区别在于允许模型在训练期间访问有关未见类别的某些信息,通常是未见类别的属性或未标记示例,但不是标签。这种方法利用有关未见数据结构的附加信息来训练更具泛化能力的模型。

在下一节中,我们将遵循 Google [1] 中一篇经典研究论文的主要概念,并提供归纳式 ZSL 的示例。

使用语义嵌入的零样本学习示例

如前一章所述,开发成功的 ZSL 模型不仅需要图像和类别标签。仅根据图像对未见类别进行分类几乎是不可能的。ZSL 利用辅助信息,例如语义属性或嵌入,来帮助对来自未见类别的图像进行分类。在深入细节之前,以下是对不熟悉该术语的读者关于语义嵌入的简要介绍。

什么是语义嵌入?

语义嵌入是语义信息的向量表示,它承载着数据的含义和解释。例如,通过口语文本传递的信息是一种语义信息。语义信息不仅包括单词或句子的直接含义,还包括上下文和文化含义。

嵌入是指将语义信息映射到实数向量中的过程。语义嵌入通常使用无监督机器学习模型学习,例如 Word2Vec [3] 或 GloVe [4]。所有类型的文本信息,例如单词、短语或句子,都可以根据设定的程序转换为数值向量。语义嵌入在高维空间中描述单词,其中单词之间的距离和方向反映了它们的语义关系。这使得机器能够通过对词嵌入进行数学运算来理解每个词的用法、同义词和上下文。

使用语义嵌入实现零样本学习

在训练期间,ZSL 模型学习将来自可见类别的图像的视觉特征与其相应的语义嵌入相关联。目标是最小化图像的投影视觉特征与其类别的语义嵌入之间的距离。此过程有助于模型学习图像和语义信息之间的对应关系。

由于模型已经学习将图像特征投影到语义空间,因此它可以通过将未见类别的图像特征投影到同一空间并将其与未见类别的嵌入进行比较来尝试对这些图像进行分类。对于未见类别的图像,模型计算其投影嵌入,然后在未见类别中搜索最近的语义嵌入。具有最近嵌入的未见类别是图像的预测标签。

总而言之,语义嵌入是 ZSL 的核心,使模型能够扩展其分类能力。这种方法允许以更灵活和可扩展的方式对大量现实世界类别进行分类,而无需标记数据集。

与 CLIP 的比较

ZSL(零样本学习)与CLIP(对比语言-图像预训练)[5] 之间的关系源于它们共同的目标:使模型能够识别和分类训练数据中不存在的类别图像。然而,CLIP 代表了 ZSL 核心原理的重大进步和更广泛的应用,它利用了一种新颖的学习和泛化方法。

CLIP 和 ZSL 之间的关系可以描述为

  • ZSL 和 CLIP 都旨在将图像分类到训练期间未见过的类别中。然而,传统的 ZSL 方法可能依赖于预定义的语义嵌入或属性来弥合已知类别和未知类别之间的差距,而 CLIP 直接从自然语言描述中学习,使其能够泛化到更广泛的任务,而无需特定于任务的嵌入。

  • CLIP 是多模态学习的典型例子,其中模型同时从文本和视觉数据中学习。这种方法与 ZSL 一致,ZSL 中也使用辅助信息来提高分类性能。CLIP 通过直接从原始文本和图像中学习将这一概念推进一步,使其能够理解和表示视觉内容与描述性语言之间的关系。

零样本学习评估数据集

每年都会提出新的 ZSL 方法,由于评估方法的不同,难以确定哪种方法更优。为了评估不同的 ZSL 方法,首选标准化的评估框架和数据集。[6] 中介绍了经典 ZSL 方法的比较研究。常用的 ZSL 评估数据集包括:

  • 动物属性数据集 (AwA)

用于对迁移学习算法进行基准测试的数据集,特别是基于属性的分类 [7]。它包含 50 个动物类别的 30475 张图像,每个图像具有六种特征表示。

  • 加州理工学院-加州大学圣地亚哥分校-鸟类-200-2011(CUB)

用于细粒度视觉分类任务的数据集。它包含 200 个鸟类亚类别的 11788 张图像。每个图像具有 1 个亚类别标签、15 个部件位置、312 个二元属性和 1 个边界框。此外,还通过亚马逊的 Mechanical Turk 收集了每个图像的十句话描述,并且这些描述被精心构造,不包含任何亚类别信息。

  • 太阳数据库(SUN)

第一个大规模场景属性数据库。该数据集包含 130519 张图像,具有 899 个类别,可用于高级场景理解和细粒度场景识别。

  • 属性 Pascal 和 Yahoo 数据集(aPY)

一个粗粒度数据集,由来自 3 个广泛类别(动物、物体和车辆)的 15339 张图像组成,进一步细分为总共 32 个子类别。

  • ILSVRC2012/ILSVRC2010(ImNet-2)

ImageNet 大规模视觉识别挑战赛 (ILSVRC) 对用于目标检测和图像分类的大规模算法进行评估 [8]。

参考文献

  • [1] Frome 等人,DeViSE:一种深度视觉语义嵌入模型,NIPS,(2013)
  • [2] Pourpanah 等人,广义零样本学习方法综述 (2022)。
  • [3] Mikilov 等人,向量空间中词表示的有效估计,ICLR (2013)。
  • [4] Pennington 等人,Glove:词表示的全局向量,EMNLP (2014)。
  • [5] Radford 等人,从自然语言监督中学习可迁移视觉模型,arXiv (2021)。
  • [6] Xian 等人,零样本学习 - 好处、坏处和丑陋之处,CVPR (2017)。
  • [7] Lampert 等人,通过类间属性迁移学习检测未见物体类别,CVPR (2009)。
  • [8] Deng 等人,ImageNet:一个大规模分层图像数据库,CVPR (2012)。
< > 在 GitHub 上更新