最近刚刚研究零样本学习相关内容,本次笔记列出来一些零样本学习相关概念,只有理解了这些概念才能更是顺畅的阅读和理解文章。
zero-shot learning
一言以蔽之,zero-shot learning零样本学习就是让学习器对其从来没有见过的类别进行分类。比如:给学习器一堆马和老虎的图片进行训练,训练完毕后,我们输入一张斑马的照片,并希望学习器告诉我们“这是斑马!”。乍一听,这显然是不现实的。
但其实,我们输入的训练数据与希望识别的类别的并不会是完全无关的。显然,我们不会奢求学习器学习一些人脸、飞机等与斑马毫无关联的数据就可以在第一次看到斑马的图片的时候就能够识别出这是一匹斑马。另外,我们还会在零样本学习的过程中利用一些已有的知识,比如“斑马的外形像马,身上有条纹”。像这样,根据现有的马、老虎的照片以及“斑马的外形像马,身上有条纹”这条信息,我们尝试让学习器通过马的数据可以识别出马的外形,通过老虎的数据让学习器可以识别出动物身上的条纹,如果学习器发现一张输入的照片有马的外形+身上有条纹,那么学习器就有足够的信心认为这就是斑马,即使它之前从未见到过斑马的照片。怎么样,是不是刚才无厘头的ZSL任务,现在变得有了一些头。
(会自己搞清楚什么是零样本学习)
基本概念
定义
上面用通俗易懂的语言介绍了ZSL,下面我们给出一些在正式学习之前需要了解的概念。
- 特征空间
输入具体的实例通常用特征向量表示,所有特征向量存在的空间就称为特征空间。 - 可见类& 不可见类
在ZSL问题中,特征空间(feature space)包含一些带标签的训练实例,这些实例所涵盖的的类别就称为可见类(seen classes);同时,特征空间中还包含一些不带标签的测试实例,这些实例所属的类别称为不可见类(unseen classes).
接着我们就可以给出ZSL的具体定义:
带标签测试实例、不带标签测试实例。 - Zero-Shot Learning
对于给定属于可见类集合 S S