聊聊zero-shot learning 和 one-shot learning

Palatucci, Mark, et al. "Zero-shot learning with semantic output codes." Advances in neural information processing systems. 2009.
首先来看一篇比较经典的zero-shot learning相关的paper (http://101.96.10.65/www.cs.cmu.edu/afs/cs/project/theo-73/www/papers/zero-shot-learning.pdf)。
这篇paper是NIPS 2009中的一篇论文,作者来自CMU,Intel及多伦多大学。文章所要处理的问题是针对训练集中缺失标签的样本,如何预测其标签或类别。其思路是对类别标签建立由语义信息构成的知识库,进而可以推测新的类别。
什么是zero-shot learning呢?zero-shot learning即为训练样本中的类别变量有某种程度的缺失。本篇论文之前,学者 Larochelle et al. (2008) 也研究了zero-shot learning,其中可以对训练集中缺失的数字所对应的新类别进行预测。更简洁地来讲,比如你没见过某种动物,但是,你从其他地方得知了对这种动物的描述,见了之后一眼就能做出判断,这就是zero-shot learning。
作者所提模型可以学习输入数据和语义特征之间的关系。可以利用所学关系通过两个阶段对新输入的数据预测其类别。给定新的输入数据,模型可以预测输入对应的语义特征集合,然后在知识库中寻找与预测特征匹配度最好的类别。值得注意的是,对于一个新的类别,如果语义知识库中包含了这种类别,该过程同样可以有效。
什么是语义特征空间呢?p维的语义特征空间是一个度量空间,其中每一维度都是对一个语义属性的编码。这些属性,可能是离散的类别数据,也可能包含实数类数据。
什么是语义知识库呢? 包含M个样本的语义知识库是一个由拓扑对构成的集合,其中每个拓扑对中的一个元素是语义空间中的样本点,另一个元素是类别标签。
具体的分类模型如下。zero-shot分类器首先将原始输入映射到语义空间中,然后将语义编码映射到类别标签。
实验结果如下:

下面来介绍下one-shot learning。两篇比较经典的paper如下:
L. Fei-Fei, R. Fergus, and P. Perona, “A Bayesian Approach to Unsupervised One-Shot Learning of Object Categories,” Proc. Ninth Int’l Conf. Computer Vision, pp. 1134-1141, Oct. 2003.
http://vision.stanford.edu/documents/Fei-Fei_ICCV03.pdf
Li, Fei-Fei, Rob Fergus, and Pietro Perona. "One-shot learning of object categories." IEEE Transactions on Pattern Analysis and Machine Intelligence 28.4 (2006): 594-611.
http://vision.stanford.edu/documents/Fei-FeiFergusPerona2006.pdf
什么是one-shot learning 呢?简单来讲,one-shot learning 即为只通过一个或少数训练样本就可以识别某个类别。
one-shot learning 这种模型依赖于先验知识,比如在物体识别中,需要形状和外观的先验知识。终止条件是参数的变化小于事先给定的阈值,或者迭代次数达到预先设定的次数。这种模型是生成式(generative)的,而不是判别式(discriminative)的。
来自TPAMI 2006的实验结果如下:

one-shot learning 这种模型需要特征探测器,不同的对象对应的特征不同。

在物体识别中,可以将注意力放在形状和外观上,one-shot learning 这种方法可以通过这两种特征来实现。


图五对应的是学习过程。

图十二给出了两种效果较差的类别,鳄鱼和蜉蝣。

图十三中左边给出了先验知识中物体类别数目对模型效果的影响。右图给出了特征检测的质量跟物体检测性能在不同训练样本数情形下的对比。

图十四给出了只利用形状,只利用外观这两种单独的特征相对二者结合的效果在不同训练样本情形下的对比。
