Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

无需contrastive学习,微软亚研提出基于实例分类的无监督预训练方法


在本文中,微软亚洲研究院的研究员和实习生们提出了一个简单且高效的无监督预训练方法——参数化实例分类(PIC)。和目前最常用的非参数化对比学习方法不同,PIC 采用了类似于有监督图片分类的框架,将每个实例或图片看作一个独立的类别进行实例分类从而进行无监督学习。与 SimCLR 或 MoCo 这类方法相比,PIC 不需要处理潜在的信息泄漏问题,因此结构简单直观。研究者在实验中证明了 PIC 可以在 ImageNet 数据集中取得与这些非参数化对比学习方法相匹配的性能。

论文地址:https://arxiv.org/abs/2006.14618

面对着自然世界中越来越多的无标注数据,研究者们都希望找到一种正确的方式,从中学习对于视觉任务有帮助的特征,从而使得各类视觉任务能有进一步的突破,也使各类算法和模型能在实际生产环境中有更加充分的应用。最近的研究已经证明,在一些下游任务上,无监督的视觉特征学习可以取得与有监督学习同等甚至更高的迁移学习性能。

在本文中,微软亚洲研究院的研究员和实习生们提出了一个简单且高效的无监督预训练方法——参数化实例分类(Parametric Instance Classification,简称 PIC)。和目前最常用的非参数化对比学习方法不同,PIC 采用了类似于有监督图片分类的框架,将每个实例或图片看作一个独立的类别进行实例分类,从而进行无监督学习

方法介绍

如图 1 所示,PIC 的框架非常简单,通过将每一个实例看作一个独立的类别即可驱动网络训练,完成特征表示的学习。与大多数常见的有监督分类框架相似,PIC 也包含如下五个主要的组成部分:

  1. Data Scheduler:用来从数据集中采样需要传入网络中的图片;

  2. Data augmentation module:用来对采样出来的图片进行随机数据增强,使网络学到更具区分度的特征;

  3. Backbone network:用来对每个增强后的图像进行特征提取,同时这一部分网络也会在下游任务中使用;

  4. Small projection head:用来将高维的特征投影到低维空间,并且在投影后的特征上施加实例分类的损失函数

  5. Instance classification loss:整个网络中唯一的损失函数,用于驱动整个网络训练。


作者发现,完全采用有监督分类的设计模块会导致训练效果不太理想。因此,他们对各个模块进行适当的调整,使其适应实例分类问题,从而使得 PIC 学到的特征质量大幅度提高。

具体而言,作者借鉴了最近一些无监督预训练的工作,比如 SimCLR 与 MoCo,采用了合适的数据增强方法和强度,使用两层 MLP 作为 projection head,以及使用 cosine soft-max loss 作为损失函数等。

除此之外,在 PIC 框架中仍然有许多挑战,比如对每个实例类别的优化频率过低或者面对大数据集时负样本过多等。这些挑战也给 PIC 在走向实用的过程中带来了一些问题,如训练时间过长、显存消耗过大等。因此,为了在提升特征质量的同时增强实用性,作者提出了两项新技术。

滑动窗数据调度方法(Sliding window data scheduler):具体做法如图 2 所示,将完整训练过程中使用到的数据看作是周期重复出现的连续数据,然后在连续数据上有重叠地进行采样,保证两个训练周期中会有相同的样本出现。这一调度方法可以帮助解决对于某个实例类别采样间隔过大的问题,使训练稳定的同时更加有效。

负实例类别采样和分类权重校正(Negative instance class sampling and classification weight correction):负实例类别采样即在计算损失函数时,只将最近采样到的 K 个样本作为负样本进行计算,而分类权重校正即为了解决在 SGD 优化过程中因为动量(momentum)和权重衰减(weight decay)的存在依然需要对未被采样样本进行梯度计算的问题。由此可以使得训练时间和显存消耗不会随着训练数据的增长而线性增长,而是与训练数据大小无关,同时可以保持 PIC 模型的性能表现。

实验结果

消融实验

采用不同的通用模块设定:表 1 展示了更合适的数据增强、两层 MLP 的 project head 和 cosine soft-max 损失函数均可大幅度提高框架的有效性,尤其是 cosine soft-max 损失函数带来了接近 20% 的 top-1 acc 的提升。

负实例类别采样和分类权重校正:从表 2 中可以看到,当没有分类权重校正时,随着负样本的减少,准确度会出现明显的下降;而当采用分类权重校正后,即使大幅度减少负样本数,其准确度的下降幅度依然很小。

滑动窗数据调度方法:表 3 展示了当选取滑动窗数据调度方法中不同的超参数时模型的性能表现。表 4 则展示了对于不同长度的训练轮数,滑动窗数据调度方法均能带来一定的性能提升,短轮数的实验性能提升更为明显。

与其他框架的性能比较

系统级性能比较:如表 5 所示,PIC 在短轮数的实验上表现非常出色,相比于之前的最优方法能获得 1.5%~3.2% 不等的性能提升。表 6 则展示了与更多前沿方法的比较。综合来看,PIC 能取得与 MoCo v2 相当的性能表现,同时远高于其他的无监督预训练方法。

下游视觉任务的性能比较:如表 7 和表 8 所示,PIC 在半监督学习、iNaturalist18 细粒度分类、Pascal VOC 检测任务和 Cityscapes 语义分割任务上都展示出了一致优异的表现,性能均与之前最好的方法相当或优于之前的方法。

分析

作者表示,PIC 框架和有监督分类框架的相似性促使他们去找寻这两者之间的关联,并希望通过这些关联来更好地理解 PIC 框架。他们首先对这两项任务所使用的卷积神经网络输出的特征对不同区域的显著性进行可视化,如图 3(a) 所示,可以看出 PIC 关注的显著区域和有监督分类所关注的显著区域非常相似,由此进一步统计两者所关注的显著区域的重合度,如图 3(b) 所示,可以发现绝大部分图片的显著区域重合度大于 0.6,平均值达到了 0.762,这展现出了两个方法在显著区域上具有统计意义上的相似性。图 3(c) 则揭示了显著区域重合度与 PIC 模型准确度之间的关联,从图中可以明确地看出这两者之间的正相关性。显著区域重合度越高,PIC 的性能表现也就越好。

此外,作者还特意寻找了一些 PIC 和有监督分类方法输出的显著区域存在较明显差异的图片,如图 3(a) 右侧所示。可以发现,这些显著区域的差异主要是由图片中包含多个物体所造成的。在这种情况下,有监督分类方法所输出的显著区域主要集中在特定的单个物体上,通常这一物体与标注的类别相符,而 PIC 则倾向于将注意力分散在所有具备显著性的物体上,这种不受标注信息干扰的显著区域或许是 PIC 在下游视觉任务上有更好表现的原因之一。

总结

本文针对无监督特征学习提出了参数化实例分类(Parametric Instance Classification,PIC)这样一个简单而又高效的框架。相比于之前方法需要考虑信息泄漏的问题,PIC 并没有任何内在的限制。通过结合一些现有框架中的组成部分,和文中提出的滑动窗数据调度方法、以及负实例类别采样与分类权重校正这两项技术,PIC 可以达到非常高的性能表现,并且可以应用在各种训练场景中。对于无监督学习与预训练这一领域而言,PIC 可以作为一个简单、实用、高效且易于复现的基准方法,使得领域内未来的研究得以受益。


理论微软亚洲研究院无监督学习预训练模型计算机视觉
相关数据
微软亚洲研究院机构

微软亚洲研究院于1998年在北京成立,是微软公司在亚太地区设立的基础及应用研究机构,也是微软在美国本土以外规模最大的一个研究院。微软亚洲研究院从事自然用户界面、智能多媒体、大数据与知识挖掘、人工智能、云和边缘计算、计算机科学基础等领域的研究,致力于推动计算机科学前沿发展,着眼下一代革命性技术的创新,助力微软实现长远发展战略。

http://www.msra.cn
Microsoft机构

微软是美国一家跨国计算机科技公司,以研发、制造、授权和提供广泛的计算机软件服务为主。总部位于美国华盛顿州的雷德蒙德,最为著名和畅销的产品为Microsoft Windows操作系统和Microsoft Office办公室软件,以及Xbox的游戏业务。微软是美国《财富》杂志2015年评选的世界500强企业排行榜中的第95名。

https://www.microsoft.com/en-us/about
半监督学习技术

半监督学习属于无监督学习(没有任何标记的训练数据)和监督学习(完全标记的训练数据)之间。许多机器学习研究人员发现,将未标记数据与少量标记数据结合使用可以显着提高学习准确性。对于学习问题的标记数据的获取通常需要熟练的人类代理(例如转录音频片段)或物理实验(例如,确定蛋白质的3D结构或确定在特定位置处是否存在油)。因此与标签处理相关的成本可能使得完全标注的训练集不可行,而获取未标记的数据相对便宜。在这种情况下,半监督学习可能具有很大的实用价值。半监督学习对机器学习也是理论上的兴趣,也是人类学习的典范。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

调度技术

调度在计算机中是分配工作所需资源的方法。资源可以指虚拟的计算资源,如线程、进程或数据流;也可以指硬件资源,如处理器、网络连接或扩展卡。 进行调度工作的程序叫做调度器。调度器通常的实现使得所有计算资源都处于忙碌状态,允许多位用户有效地同时共享系统资源,或达到指定的服务质量。 see planning for more details

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

语义分割技术

语义分割,简单来说就是给定一张图片,对图片中的每一个像素点进行分类。图像语义分割是AI领域中一个重要的分支,是机器视觉技术中关于图像理解的重要一环。

动量技术

优化器的一种,是模拟物理里动量的概念,其在相关方向可以加速SGD,抑制振荡,从而加快收敛

合合信息机构
推荐文章
暂无评论
暂无评论~