前言
本期由中科院自动化所的云水禅心博士给大家简要介绍一下零样本学习(zero-shot learning)和零样本物体检测(zero-shot object detection)的研究内容。
1.引言
说起人工智能,可能最先想到的是智能机器人(intelligent robot),机器的拟人化。而对一个机器人来说,最重要的是对机器人所处场景的感知、理解,进一步具体到关键技术,即为物体识别/检测(object recognition/detection)。通过物体检测,机器人能够识别并且定位物体,以获得对周围环境的感知能力。在感知周围环境之后,机器人才能在此基础上完成对物体的抓取及抓取之后的一系列任务,才能真正地服务于人类。
而目前的检测方法,虽然在Pascal VOC、COCO数据集上取得了相对较好的检测效果和成绩,但仍然需要进一步改进,存在检测精度有待提高、无法检测部分遮挡的物体、受光照影响等。同时,经典的检测框架如Faster RCNN,YOLO,SSD,RetinaNet等训练时需要大量的训练样本。但存在以下问题:
●基于某一场景需要训练出来的模型,对该场景下的物体检测效果很好,当需要迁移到其他场景时,需要重新对需要检测的物体进行图像采集和标注。
●对图像的采集和标注需要耗费大量的时间、人力、物力和财力等。
●对于有些类别,其样本数据难以获取,或者获取的成本很高
●除此之外,传统意义下的物体检测框架,只能检测出在训练中所见到(seen)的物体,对于训练中未见到(unseen)的物体难以检测。
而针对以上问题,从原有的监督学习(supervised learning)/迁移学习(Transfer learning)分出零样本学习(zero-shot learning)。这种没有样本数据的物体类别检测,称之为零样本物体检测(zero-shot object detection)。
2.零样本学习
总体来说,零样本学习是一种特殊的迁移学习。迁移学习存在源域(source domain)和目标域(target domain),主要目的是实现从源域到目标域的迁移,对源域和目标域的样本无明显的要求。而零样本学习,则是将源域上训练完成的模型,迁移到没有标注数据的目标域中。因为缺少标注数据,所以在迁移过程,源域模型不能对目标域数据进行拟合训练,即源域模型需要直接在目标域上进行测试。
零样本学习定义更准确一点为,依据一些可见类别(seen classes)的数据,辅以相关常识信息或先验知识(称为辅助信息,side information),用于训练某种学习模型,实现对未见类别(unseen classes,指数据标注完全缺失的类别,或训练时没有训练过类别)的数据进行类别预测和识别的一类技术。更直观一点,假设y和z分别表示训练样本和测试样本,Y和Z分别表示训练数据和测试数据所属的类别,零样本下的学习与传统的有监督学习可表示如图1。零样本学习是测试样本所属的类别和训练数据所属的类别是不相交的,而传统的有监督学习中测试样本所属的类别包含于训练类别的集合。
图1:(网络版彩图)零样本分类与传统的目标分类的区别
一个简单的例子如图2所示,对于零样本学习模型,老虎、花豹两类用于模型训练(即训练时可见),而猫作为测试类别(即训练时不可见,不用作训练)。那么在添加额外的辅助信息(如词向量,类别属性特征)后,用老虎、花豹的样本数据对模型进行训练,之后利用猫类别相关的辅助信息,实现模型对猫类别实例的识别。
图2:零样本学习示例
其实,这种学习思想来源于人类的学习过程,例如我们告诉一个从没见过斑马的小朋友:“斑马是一种长得像马,身上有黑白色条纹的动物”,他就可以很轻松地在动物园里找出来哪个是斑马。
图3:马与斑马
这也体现着人工智能从弱人工智能向强人工智能发展的趋势,越来越拟人化,甚至超越人类智能,如图像分类中学习方法的发展趋势,图4所示。即从传统的训练、测试类别同属于一个类别集合,逐渐向两者属于不同集合,或者集合交叉的复杂情况发展,从需要多样本向小样本(few/one-shot)、零样本(zero-shot)迈进。
图4:图像分类中学习方法的发展趋势
3.零样本物体检测
零样本下的物体检测,则是零样本学习方法在图像分类的运用迁移到物体检测任务。但是由于任务改变,零样本学习方法并不能简单的从图像分类迁移至物体检测。例如,零样本识别或分类(zero-shot recognition)任务中,往往是一张图片只有一个物体,而在零样本物体检测中,一张图片则可能包含多个物体,可能存在多个未见(unseen)的物体。除此之外,零样本识别只需要分类即可,而在零样本检测任务中,还需要对未见的物体进行定位(bounding box)。其任务相比零样本识别难度更大,因为对于未见的物体,传统的检测框架容易将其归类为背景(background),无法定位,进而检测失败,如图5所示。
针对这个任务,近年来也有一些学者进行研究,也取得了不错的研究成果。如Rahman等人[1]、Bansal等人[2]和Li等人[3]则是沿用了零样本学习在图像识别中的方法,主要思想是将检测物体的词向量作为零样本检测的辅助语意信息,通过语意空间与视觉空间之间的映射,利用相似度度量函数来描述映射后的向量相似度,以此作为分类的score。而对于检测的bounding box,处理方式有所不同,有所改进的,也有直接利用原有框架的detector,将零样本检测转化为检测与零样本识别的混合体。也即是将零样本检测任务拆分为物体定位和物体识别两个子任务,物体定位则采用传统的定位方法,物体识别部分则参考零样本识别部分的方法,如图6和7。
图6:Rahman等人零样本物体检测框架
图7:Li等人零样本物体检测框架
或者利用生成对抗网络来合成未见类别的特征,以便进行训练,如Zhu等人[4](图8)。或者基于针对本检测任务,提出基于IOU感知的生成对抗网络,如Zhao等人[5](图9)。
图8:Zhu等人零样本物体检测框架
图9:Zhao等人零样本物体检测框架
给两个零样本检测下的实际例子:
从其中的两个短视频的效果来看,既能检测可见类物体(黄色框),也能检测未见类物体(粉色框)。但其中存在较多漏检,或者错检,检测成功率并不是很高。与传统的检测结果相比,虽然目前零样本检测的性能还无法匹及,需要进一步的研究和探索,但是该方向将向检测模型迁移、实用化方向进一步迈进,朝更实用化的人工智能方向迈向一个新的台阶!
四.参考文献
[1]RAHMAN S, KHAN S, PORIKLI F. Zero-Shot Object Detection: Learning to Simultaneously Recognize and Localize Novel Concepts; proceedings of the ACCV2018, Cham, F, 2019 [C]. Springer International Publishing.
[2]BANSAL A, SIKKA K, SHARMA G, et al. Zero-shot object detection; proceedings of the Proceedings of the European Conference on Computer Vision (ECCV), F, 2018 [C].
[3]LI Z, YAO L, ZHANG X, et al. Zero-Shot Object Detection with Textual Descriptions [M]. AAAI2019. 2019.
[4]ZHU P, WANG H, SALIGRAMA V. Dont Even Look Once: Synthesizing Features for Zero-Shot Detection [J/OL] 2019.
[5]ZHAO S, GAO C, SHAO Y, et al. GTNet: Generative Transfer Network for Zero-Shot Object Detection [J]. arXiv preprint arXiv:200106812, 2020,
[6] 王晋东,迁移学习简明手册
[7] CSDN博客,Zero-Shot 物体检测,https://blog.csdn.net/qq_21157073/article/details/105807312
[8] Ji Z, Wang H R, Yu Y L, et al. A decadal survey of zero-shot image classification (in Chinese). Sci Sin Inform, 2019, 49: 1299{1320, doi: 10.1360/N112018-00312
扫码关注我们
纯真学者出神入化
微信号|RPIBMEPhD
写在后面
这是一群致力于科研传播的faculty & PhD记录分享点滴思考的平台,这里有我们在各自领域(机器学习,医疗影像,材料科学,凝聚态物理,生物信息,光学成像等)涉猎研究的点滴感悟,有我们在国内,海外求学工作奋斗的酸甜苦辣,亦有偶尔的风月和我们的诗与远方。
——纯真学者团队