什么是零样本学习?(二)

翻译2018年6月18日SMITA SINHA的一篇文章
https://www.analyticsindiamag.com/what-is-zero-shot-learning/

什么是零样本学习?

什么是零样本学习?(二)_第1张图片
在过去的几十年里机器变得更聪明了,但是没有一定量的标注训练数据,机器是无法区分两个很相似的物体的。另一方面,
人类能够识别将近3万个基本物体类别。在机器学习中,这被称为零样本学习(ZSL)。考虑一个例子,一个小孩可以很容易识别一个斑马,如果他之前就看过马并且了解到斑马和马很像,但是有黑白的条纹。

对机器来说,零样本识别依赖于可见类的一个标注数据集和关于每个不可见类如何与可见类语义相关的知识的存在。根据一篇研究论文,人类能够实现零样本学习是因为已有的语言知识基础,这为一个新的或不可见的类别提供了高层描述,并且建立了不可见类、可见类和视觉概念(马,条纹)的关联。受人类这项能力的激发,人们对机器零样本学习越来越感兴趣,以扩大视觉识别领域。

零样本学习 101

有研究称,零样本机器学习是用来构建没有标注训练数据的不可见目标类的识别模型。ZSL利用类别属性作为辅助信息,迁移从带有标注样本的源类的信息。ZSL包含两个阶段:

①训练:这个阶段获取属性的知识
②推理:用获取的知识识别新类别的实例

最近,由于包含元数据信息的数据的可用性,人们对属性的自动识别兴趣大增。一篇研究论文称,已被证明这对识别图像是特别有用的。

一项研究称,零样本学习方法设计的目的是学习中间语义层,他们的属性,并在推理阶段应用他们来预测数据的类别。

另一项研究进一步解释,零样本学习也依赖于可见类和不可见类的一个标注数据集。可见类和不可见类在一个高维向量空间是相关的,这个空间叫做语义空间,在这个空间里可见类的知识可以迁移到不可见类。

利用语义空间和图像内容的视觉特征表示,一组研究人员用两步来解决ZSL问题:

  • 学习一个联合的嵌入空间,其中语义向量(原型)和视觉特征向量都被投影到这个空间。
  • 使用最近邻搜索在嵌入空间匹配图像特征的投影和未见类的原型的投影。

实现零样本学习

为了使ZSL更高效,将关键特征(图像和文本)分类[提取]成向量。这意味着要预先为项目寻找特定的向量。一旦收集完毕,就给他们提供一个描述,使得算法能够进行相应地分类。训练是对这些向量进行对应类别的分类。测试阶段识别新输入,并再次识别成新的类别,忽略训练数据。

实现中步骤

一个教程描述了一个模型实现ZSL的三个步骤:

  1. 得到类别向量V:
      - 属性:描述了概念或者实例的视觉外观,通过设定标注的视觉特性,他们可以很容易从可见类迁移到不可见类。
      - 词向量:它是对其他数据类型的直接应用,比如视频、文本和音频,
    什么是零样本学习?(二)_第2张图片
  2. 训练:
      - 给定一些已知类的类别向量V和图像X
      - 学习图像,通过将他们分类为向量分类器或者回归器 V=F(X)
  3. 测试:
      - 为要识别的新类指定向量V
      - 映射测试数据F(X)到类别向量空间
      - V 和 F(X)的最近邻匹配

深度零样本学习

从前,ZSL工作使用物体的手工特征表示。在过去两年手工特征已经被CNN特征取代来作为视觉特征表示。这里,使用预训练的CNN模型来提取特征。深度CNN特征也是嵌入模型的输入。现有的基于深度网络的ZSL工作的不同之处在于他们是否使用了语义空间或者一个中间表示作为嵌入空间。

怎么训练一个深度的端到端的ZSL

  • 训练E(X, Z),对于匹配的数据对是大的,对于不匹配的对是小的
  • 让E(X, Z)是一个网络而不是一个双线性模型
  • 连接(X, Z)并输入到一个深度网络里
  • 在X和Z上做表示学习,然后是內积

在Timothy的教程中解释的一个简单的ZSL深度网络

Train a max-margin ranker. Or Y=(1,0) for (matching, mismatching pair) pairs.

什么是零样本学习?(二)_第3张图片

根据一项研究,尽管深度神经网络在其他视觉问题上比如图像描述的成功,它学习了文本和图像间的端到端的模型,但是深度的ZSL模型还很少。深度ZSL模型相对于只利用深度特征表示而不进行端到端嵌入学习的ZSL模型并没有显示出很多的优势。

你可能感兴趣的:(paper)