旷视科技提出新方法:通过实例级显著性检测和图划分实现弱监督语义分割

本文提出了一种通过关联图像显著性实例而实现弱监督语义分割的新方法。

论文名称:《Associating Inter-Image Salient Instances for Weakly Supervised Semantic Segmentation》

论文链接:http://mftp.mmcheng.net/Papers/18ECCVGraphPartition.pdf

目录

  • 导语

  • 背景

  • 设计思想

  • 网络架构

  • 实验

  • 结论

  • 参考文献

  • 往期解读

导语

深度学习方法分为有监督学习和无监督学习,前者为深度学习“攻下一座座城池”,硕果累累,而后者则是希望和未来所在。然而,介于两者之间的弱监督学习同样不容忽视,潜力巨大。在本文中,旷视科技和清华大学通过原创性地整合显著性检测和图划分算法等多种技术,提出一种新型弱监督学习方法,加速语义分割发展,推动该技术在自动驾驶、安防、新零售、物流等行业的落地和普及。

这一方法的最大技术亮点是既利用的每个显著性实例的内在属性,又挖掘了整个数据集范围内不同显著性实例的相互关系。实验结果表明了该方法的有效性和高效性。正是通过一个个技术难点的攻克,不断积淀,相互共振,促成 AI 原创技术矩阵,形成 AI+IoT 体系,助力旷视科技以非凡科技持续为客户和社会创造最大价值。

背景

语义分割是计算机视觉领域最为重要的任务之一,其目的是为图像的每个像素标注语义信息。卷积神经网络强大的学习能力使这一领域取得了巨大的进展,但神经网络的训练需要大量的像素级标注的训练数据,比如 PASCAL VOC 和 MS COCO。

弱监督语义分割作为一种降低对像素级标注数据需求的新方法,近期备受关注。这一方法只需要诸如关键词(keywords)、边界框(bounding boxes)、线条(scribbles)、点(points)等标注信息,即可轻松完成数据的构建。本文研究的是只有关键词作为标注信息的弱监督框架。

在弱监督语义分割中,一个主要挑战是在关键词与相应的语义目标之间建立有效的连接。绝大多数先前方法使用各种低层信息检测器(low-level cue detectors)捕捉像素级信息以从原始图像中生成辅助(proxy)ground-truth。显著性模型和注意力机制都是常用的方法。由于上述方法只给到像素级显著性/注意力信息,很难把不同前景目标目标区分开。因此,判别语义实例的能力尤为关键。

随着显著性检测算法的快速发展,一些显著性检测器,比如 MSRNet 和 S^4Net,不仅可以实现显著性区域的像素级预测,还可以提取显著实例。通过借鉴上述实例级显著目标检测器的优点,本文提出利用 S^4Net 从而在早期显著性检测阶段执行实例提取任务,这极大地简化了pipeline,一些由 S^4Net 生成的实例级显著性图像如图 1(b) 所示。

图 1:本文方法图示。

由于通过显著性检测等低层特征检测器获得的前景不含语义信息,对于多标签训练样本,为每个前景目标分配正确的关键词(标签)是需要解决的重要任务。传统方法处理弱监督问题时,着眼于独立处理每一张图像。本文不仅利用了每个显著性实例的内在特征,而且借助在整个数据集范围内所有显著性实例的语义相互关系,为每个显著性实例分配正确的语义标签,生成 proxy ground-truth。这一算法可以使用图划分建模。

设计思想

为了利用带有边界框的显著性实例掩码,需要克服两个主要困难。第一,一张图像可能标注多个关键词,因此要解决关键词和显著性实例的对应问题。第二,并不是所有的由显著性实例检测器生成的实例都是在语义上有意义的,纳入这些噪声实例会影响后续操作的准确性。因为识别和去除这些噪声实例在本文方法中很重要。上述两个困难都可以表示为标签分配问题,即分别为语义实例和噪声实例打上正确的标签。

本文在整个训练集内,综合考虑一个显著性实例的内在信息和显著性实例间的相互关系。通过注意力机制等方法,仅仅考虑 RoI 的内部信息,即显著性实例的本质特征,对显著性实例赋予正确的标签也是可能的。但是,除了每个 RoI 的内在属性,每个显著性实例之间还有语义上的相互关系:同一类别的显著性实例通常有着相似的语义特征。将其考虑在内对标签分配很重要。

具体而言,一方面,这一新框架包含一个注意力模块,基于内在属性预测某个显著性实例属于各个标签的概率;另一方面,通过一个提取器为每个显著性实例预测语义特征,以获取语义关系。在语义上相似的显著性实例有着近似的语义特征向量。

基于语义特征可以得到一张相似性图,其中顶点表示显著性实例,边权重记录一对显著性实例之间的语义相似性。本文通过一个图划分算法把图分为若干个子图,其中每个子图表示一个具体的类别。图划分流程被建模为一个混合整数二次规划问题(MIQP),从而获得一个全局最优解。其目标是使每个子图内部的顶点尽可能相似。图划分过程也会把显著性实例的内在属性考虑在内。

本方法给出了高质量的 proxy-ground-truth 数据,可训练全监督语义分割模型。当在 DeepLab 上处理语义分割任务之时,本文方法在 PASCAL VOC 2012 测试集上 mIoU 为 65.6%,优于当前最优方法。在像素级语义分割之外,本文还利用实例级 proxy-ground-truth 数据训练了实例级分割模型,首次证明了只使用关键词标注的弱监督框架进行实例级分割的能力。

网络架构

在这一部分,首先给出 pipeline 概述,接着讨论网络结构和标签分配算法。该框架如图 2 所示。绝大多数依赖于像素级线索(比如显著性、边缘、注意力图)的先前工作把实例判别作为一项关键任务。但是,随着深度学习的发展,显著性检测器可以预测显著性图以及实例边界框。在给定只标有关键词的训练图像的情况下,研究者借助实例级显著性分割网络 S^4Net 从每张图像中提取显著性实例。每个显著性实例有一个边界框和一个掩码,表明图像中有一个视觉可见的前景目标。这些显著性实例是类别不可知的,因此提取器 S^4Net 无需针对本文训练集进行训练。尽管显著性实例包含训练分割掩码的 ground-truth 掩码,但是使用这些显著性实例训练分割网络有两个主要的限制。

首先,一张图像可以标注多个关键词。其次,由 S^4Net 检测的实例不一定在训练集的类别之中。本文把这些显著性实例看作是噪声实例,消除它们是本文 pipeline 不可或缺的一部分。两个限制可通过解决标签分配问题而解决,其中研究者把显著性实例与基于图像关键词的正确标签相联,并把其他实例标为噪音

图 2:Pipeline。

本文 pipeline 同时考虑了一个单一区域的内在属性和所有显著性实例之间的关系。一个分类网络输出的分值图中,目标所在区域(像素)内会有对正确的类别的较强响应。因此,在类激活映射(class activation mapping/CAM)的启发下,本文利用注意力模块直接根据其内在属性识别显著性实例的标签。

现有弱监督分割工作的一个弱点是一张张处理训练集,忽略了整个训练集中显著性实例之间的关系。但是,属于同一类别的显著性实例有着相似的语义信息,可在标签分配中发挥作用。本文架构提取每个显著性实例的语义特征,语义信息相似的区域有着相似的语义特征,并由此构建一个相似性图。标签分配现在变成了一个图划分问题,同时利用了单一显著性实例的内在属性和所有显著性实例的整体关系。

实验

本节展示了该方法在 PASCAL VOC 2012 语义分割基准上的结果,同时与一些当前最佳方法做了对比。结果表明该框架大幅超出所有现有的弱监督方法。本文同样也通过一系列实验分析每一组件的重要性。本文进而给出了在 MS COCO 实例分割任务上的初步结果。

表 3 给出了在 PASCAL VOC 2012 验证集和测试集上新的当前最优结果。具体而言,相较于 Mining Pixels 的基线结果,该方法在测试集和验证集上分别实现了 6% 和 5.8% 的提升。另外,值得注意的是,该方法甚至优于(以线条和点的形式)带有额外监督的其他方法。

除了语义分割结果,本文还展示了只使用关键词的弱监督方法的实例分割结果。表 4 把本文方法与当前最优的全监督方法进行了结果对比。只借助带有关键词的原始 RGB 图像,即可实现实例级分割。

表 3:本文方法在 PASCAL VOC 2012 验证集和测试集上的像素级分割结果及与现有最佳方法的对比。

表 4:本文方法在 COCO 测试集上的实例分割结果及对比。

结论

本文提出一个全新的弱监督分割框架,旨在基于提取自训练图像的显著性实例和被分配的标签,生成精确的 proxy-ground-truth 数据。本文把显著性实例引入弱监督分割,极大地简化了现有工作中的目标判别流程,并使得该框架可执行实例级分割。本文把标签分配任务建模为一个网络划分问题,通过整数二次规划对这一问题进行求解。为提升标签分配的准确性,来自单一的显著性实例的内在信息和整个数据集中所有目标的关系同时被考虑在内。

实验表明该方法在 PASCAL VOC 2012 语义分割基准上取得了新的当前最优结果,并首次展示了只有关键词作为标注信息的弱监督方法在 MS COCO 实例级语义分割任务中所取得的结果。

旷视科技
旷视科技

Power Human with AI

理论语义分割旷视科技
31
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

自动驾驶技术技术

从 20 世纪 80 年代首次成功演示以来(Dickmanns & Mysliwetz (1992); Dickmanns & Graefe (1988); Thorpe et al. (1988)),自动驾驶汽车领域已经取得了巨大进展。尽管有了这些进展,但在任意复杂环境中实现完全自动驾驶导航仍被认为还需要数十年的发展。原因有两个:首先,在复杂的动态环境中运行的自动驾驶系统需要人工智能归纳不可预测的情境,从而进行实时推论。第二,信息性决策需要准确的感知,目前大部分已有的计算机视觉系统有一定的错误率,这是自动驾驶导航所无法接受的。

权重技术

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

基准技术

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

二次规划技术

二次规划(Quadratic programming),在运筹学当中,是一种特殊类型的最佳化问题。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

验证集技术

验证数据集是用于调整分类器超参数(即模型结构)的一组数据集,它有时也被称为开发集(dev set)。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

卷积神经网络技术

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

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

监督学习技术

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

噪音技术

噪音是一个随机误差或观测变量的方差。在拟合数据的过程中,我们常见的公式$y=f(x)+\epsilon$中$\epsilon$即为噪音。 数据通常包含噪音,错误,例外或不确定性,或者不完整。 错误和噪音可能会混淆数据挖掘过程,从而导致错误模式的衍生。去除噪音是数据挖掘(data mining)或知识发现(Knowledge Discovery in Database,KDD)的一个重要步骤。

推荐文章
小编,请问有这篇文章的代码可以提供下吗?