弱监督分割的约束卷积神经网络
摘要
我们提出了一种从图像级标签学习密集像素级标签的方法。每个图像级标签都对卷积神经网络(CNN)分类器的输出标签施加约束。我们提出约束CNN(CCNN),一种利用新的损失函数对输出空间上的任意一组线性约束进行运算定时的方法(即预测标签分布)的CNN。我们的损失形式很容易优化,可以直接纳入标准随机梯度下降优化。其核心思想是将训练目标描述为线性模型的双线性化,然后将其松弛到非线性耳深网络中。大量的实验证明了我们新的学习框架的通用性。在弱监督的语义图像分割中,约束损失产生了最先进的结果。我们进一步证明,稍微增加一些监督可以大大提高学习算法的性能。
1. Introduction
近年来,标准的计算机视觉任务,如识别或分类,已经取得了巨大的进展。这主要是由于卷积神经网络(Convolutional Neural Networks, CNNs)的广泛应用[11,19,20]。现有模型的优势在于它们能够利用大量的完全监督的训练数据[28]。这种对完全监督的依赖是对类或任务数量的可伸缩性的主要限制。对于结构化的预测问题,如语义分割、全监督、像素级等,标签的获取既昂贵又费时。从弱监督的角度对语义标签进行概括,图像级标记或包围框注释的成本通常较低。充分利用这些弱注释的全部潜力是具有挑战性的,并且现有的方法很容易转向糟糕的局部最优,从中恢复是困难的[6,16,25]。
在本文中,我们提出了一个框架,通过一系列线性约束将弱监督纳入到学习过程中。一般来说,在输出空间上表达简单的约束比编写规范器或特殊的培训程序来指导学习更容易。在语义分割中,这种约束可以描述图像标高标签的存在性和期望分布。例如,给定一幅图像中有一辆车,那么一定数量的像素应该标记为car。
提出了一种基于约束的CNN (CCNN)算法,该算法利用一种新的损失函数对具有任意线性约束的卷积网络进行优化。深度网络的非凸性使得约束的直接优化变得困难。我们的主要观点是建立一个潜在分布的模型“ground truth”标签,而深度网络的输出则尽可能地遵循这种潜在的分布。这允许我们对潜在分布而不是网络输出强制执行约束,从而大大简化了最终的优化问题。结果的目标是一个线性模型的双凸问题。对于深度非线性模型,它产生了一种基于交替凸和梯度的优化,可以自然地集成到标准随机梯度下降(SGD)中。如图1所示,每次迭代之后,输出都被拉向似是而非的语义分割的约束流形上的最近点。我们受约束的CNN是由弱注解引导和端到端训练的。
(图1:我们从输出变量上的一组线性约束训练卷积神经网络。网络输出被鼓励遵循一个潜在的概率分布,它位于约束流形中。由此产生的损失易于优化,并可以纳入任意线性约束。)
针对不同线性约束条件下弱监督程度不同的多类语义分割问题,对CCNN进行了评价。与其他学习方法相比,我们的方法在Pascal VOC 2012上取得了最先进的性能。它在训练期间不需要任何对象的像素级标签,而是直接从图像级标签推断它们。我们证明,我们的约束优化框架可以包含其他形式的弱监督,如对象大小的粗略估计。所提出的技术是通用的,可以包含多种形式的弱监督。
2. Related Work
弱监督学习试图捕捉所有积极因素共同但所有消极因素都不存在的信号。这是一个挑战,因为讨厌的变量,如姿势,遮挡,和类内变化。使用弱标签学习通常被描述为多个实例学习[8]。虽然boosting[1,36]和NoisyOR模型[15]也被研究过,但它最常被表述为一个最大边缘问题。多实例最大边缘分类问题是非凸的,其解是双凸目标[2]的交替极小化。MI-SVM[2]和LSVM[10]是该范式中的两种经典方法。这种设置自然适用于弱标记检测[31,34]。然而,这些方法中的大多数都对检测器的初始化很敏感[6]。已经提出了几种启发式方法来解决这些问题[30,31],但是它们通常是特定于检测的。
传统上,图像级标签的弱分割和场景解析问题主要通过图形模型和参数结构模型来解决。大多数作品利用底层图像信息来连接外观类似于[32]的区域。Chen等人利用基于视觉子类别的自顶向下分割先验进行对象发现。Pinheiro等人和Pathak等人将多实例学习框架从检测扩展到语义分割CNNs。他们的方法迭代地增强预测良好的输出,同时抑制与图像级标签相矛盾的错误分段。这两种算法都对初始化非常敏感,并依赖于卷积网络中所有层的经过仔细训练的分类器。相比之下,我们的约束优化要敏感得多,并且可以从分类层的任意随机初始化中恢复一个好的解决方案。
Papandreou等人的[24]在多实例学习框架中引入了自适应偏差。他们的算法增加已知的类,并抑制所有其他类。我们证明了这种简单的启发式可以看作是约束优化的一个特例,其中自适应偏差控制约束满足。然而,可由这种自适应偏差建模的约束是有限的,不能充分利用弱标签的功能。在本文中,我们展示了如何应用更多的一般线性约束,从而获得更好的分割性能。
约束优化问题长期以来被人工神经网络[35]逼近。这些模型通常是非参数的,只解决线性程序的一个实例。Platt等人展示了如何优化神经网络输出的等式约束。然而,最终的目标是非凸的,这使得直接最小化非常困难。在本文中,我们展示了如何优化一个约束目标之间的交替凸和梯度为基础的优化。
得到的算法相似于,自然语言处理中的广义期望[22]和后正则化[12]。这两种方法都通过对目标函数施加惩罚来训练匹配特定期望约束的参数模型。广义期望将期望约束惩罚直接加到目标上,这对于卷积网络来说是难以直接计算且代价昂贵的。Ganchev等人的[12]约束了一个辅助变量,该变量产生的算法类似于对偶空间中的目标。
3. Preliminaries
我们将图像I定义为一组随机变量X = {x0,…, xn},其中n为图像中像素的个数。xi ∈ L取m个离散标签中的一个L ={1,…,m}。CNN模型概率分布Q (X |θ,I)是基于这些随机变量的,
θ是网络的参数。这个分布通常被建模为独立边缘Q(X|θ, I) = Πi(xi|θ, I),其中,每一个边际代表一个softmax概率:
其中,为像素
i的配分函数,函数f(i)表示神经网络的实值分数。得分越高,可能性越大。
标准学习算法的目标是最大化模型下观察到的训练数据的可能性。这需要充分了解ground truth标记,而这在弱监督设置中是不可用的。在下一节中,我们将展示如何使用输出标记分布上的一些高级约束来优化CNN的参数。图2给出了这方面的概述。在第5节中,我们将给出一些用于弱标记的有用约束的例子。
4. Constrained Optimization
为了方便, 表示
Q(X|θ, I)网络输出的向量形式,受约束的CNN(CCNN)优化可表示为:
其中对图像i上的卷积网络的输出分布施加k个单独的线性约束。理论上,许多输出
满足这些约束。然而所有的网络输出参数化的一个参数向量θ,将不同的输出空间
紧密结合在一起的。在实践中,这会导致输出既与输入图像一致,又与弱标签施加的约束一致。
为了说明问题的简单性,我们推导了的单幅图像的推理算法。整个推导可以推广到任意数量的图像和约束。约束包含,例如场景中前景和背景像素标签的期望数量的上下界。有关更多示例,请参见第5节。在本节的第一部分,我们假设所有的约束都可以满足的,这意味着总是存在一个参数设置θ,满足
。在4.3节中,我们通过在每个约束中添加松弛变量来提升这个假设。
虽然问题(2)在网络输出 Q中是凸的,但对于网络参数θ,它通常不是凸的。对于任何非线性函数Q,可以选择矩阵A,使约束为Q的上界或下界,其中一个是非凸的。这使得直接优化变得困难。事实上,即使是对数线性模型,如逻辑回归,也不能在这个目标下直接优化。或者,可以优化(2)的拉格朗日对偶,但这在计算上非常昂贵,因为我们需要在对偶下降算法的内循环中优化整个卷积神经网络。
为了有效地优化问题(2),我们在语义标签X上引入了一个潜在的概率分布P(X),我们将P(X)约束在约束目标的可行性区域内,同时去除网络输出Q的约束。然后,我们鼓励P和Q通过最小化各自的kl -散度来对相同的概率分布建模。产生的问题定义为:
如果满足(2)中的约束条件,则问题(2)和(3)与P的解(3)相等,该解等于可行Q。这个等式意味着P(X)可以被建模为独立边值的乘积:
补充材料中提供了详细的证明。
新目标更容易优化,因为它将约束与网络输出解耦。固定网络参数θ,问题是在P。对于一个固定的潜在分布P问题降低一个标准的交叉熵损失是使用随机梯度下降优化。
在本节的其余部分中,我们推导了一个使用块坐标下降优化问题(3)的算法。4.1节解决约束优化P在保持网络参数θ固定。4.2节包含了这种优化到标准随机梯度下降,保持P固定θ而优化。每步保证降低问题的整体能量(3),收敛到较好的局部最优。在本节的最后,我们将展示如何通过在损失中添加一个松弛变量来处理不能直接满足的约束。
4.1. Latent distribution optimization
首先,我们展示了如何在保持卷积网络输出不变的情况下,对P进行优化(3)。目标函数是带有线性约束的凸函数,这意味着只要约束满足[3],板条条件和强对偶性就成立。因此,我们可以通过最大化问题(3)的对偶函数,即:
该对偶函数为凹函数,可采用投影梯度上升[3]全局优化。
直观地说,投影梯度下降算法增加了所有不满足约束的对偶变量。这些对偶变量依次调整分布pi以满足约束条件。投影双梯度下降算法通常在不到50次迭代内收敛,使得优化效率很高。
接下来,我们将展示如何将P(X)的估计数合并到标准随机梯度下降算法中。
4.2. SGD
对于一个固定的潜在分布P,问题(3)降为标准交叉熵损失:
对于线性模型,损失函数(5)为凸函数,可以使用任何基于梯度的优化方法进行优化。对于多层深度网络,我们采用带动量的反向传播和随机梯度下降(SGD)对其进行优化,并在Caffe[17]中实现。
理论上,我们需要保持潜在分布P固定为几个迭代的SGD,直到目标值下降。否则,我们不能严格保证总目标(3)下降。但是,在实际应用中,我们发现在SGD的每一步都推断出一个新的潜在分布并不会影响性能,并且会导致更快的收敛速度。
综上所述,我们使用SGD优化问题(3),在每次迭代中,我们推断出一个潜在的分布P,它定义了我们的损失和损失梯度。图3显示了培训过程的概述。有关更多细节,请参见第六节。
(图三 说明了t = 0时的交替凸优化和梯度下降优化。在每次迭代t时,我们计算一个潜在的概率分布P(t)作为约束区域的最近点。然后,我们使用随机梯度下降法(SGD)更新convnet参数,以尽可能接近地跟踪P(t),该方法将convnet输出从Q(t)取到Q(t+1)。)
到目前为止,我们假设所有的约束条件都可以同时满足。虽然这可能适用于精心选择的约束,但我们的优化应该对任意线性约束具有鲁棒性。在下一节中,我们通过在约束集中添加一个松弛变量来放松这个假设,并说明这个松弛变量可以很容易地集成到优化中。
4.3. Constraints with slack variable
我们放松的问题(3)通过添加一个松弛线性约束。缺口是正规化用铰链损失重量
。得到优化结果如下:
这个目标现在被保证可以满足任何赋值给P和任何线性约束。与(4)类似,这是使用投影双坐标上升进行优化的。双目标函数是完全一样的(4)。铰链的加权项损失β仅仅充当上限双变量即0≤λ≤β。这一损失的详细推导见补充资料。
这种slack relaxed的损失允许优化忽略某些约束,如果它们变得难以执行。它还在各种相互竞争的约束之间进行权衡。
5. Constraints for Weak Semantic Segmentation
现在,我们描述了用于弱监督语义分割的所有约束。对于每个训练图像I,我们得到一组图像级标签LI。我们的约束根据图像级标签影响输出空间的不同部分。所有的约束都是互补的,并且每个约束都以不同的方式利用一组图像级标签。
Suppression constraint 最自然的约束是抑制图像中没有出现的任何标签l。
仅此约束是不够的,因为涉及所有背景标签的解决方案完全满足此约束。我们可以通过为图像中的标签添加一个下界约束来轻松解决这个问题。
Foreground constraint
这种前景约束非常类似于常用的多实例学习(multi instance learning, MIL)范式,其中至少有一个像素被约束为正[2,16,25,26]。不像MIL,我们的前景约束可以鼓励多个像素采取特定的前景标签通过增加。在实践中,我们设置al = 0.05n的松弛β= 2,其中n是我们网络的输出。
虽然这个前景约束鼓励某些像素使用特定的标签,但它通常不够强大,无法鼓励对象中的所有像素使用正确的标签。我们可以增加al来鼓励更多的前景标签,但是这会过分强调小对象。
更自然的解决方案是限制输出中前台标签的总数,这相当于限制后台标签的整个区域。
Background constraint
这里假设l = 0是背景标签。我们在背景标签上同时应用了下界和上界。这间接地控制了所有前台标签的最小和最大组合区域。我们发现a0 = 0.3n和b0 = 0.7n在实际应用中效果良好。
以上约束条件都是互补的,确保最终的标签尽可能地遵循图像级标签LI。如果我们也可以访问对象的粗略大小,我们可以在训练期间利用这些信息。在我们的实验中,我们表明,只要知道某个对象类覆盖了图像的10%或10%以下,就可以获得可观的收益。
Size constraint 我们以两种方式利用大小约束:我们通过设置al = 0.1n来增强所有大于图像10%的类。我们还对保证小的类l设置了一个上界约束:
在实践中,阈值bl < 0.01n比紧阈值稍微好一些。
Papandreou等人提出的EM-Adapt算法可以看作是具有抑制和前景约束的约束优化问题的特例。然后自适应偏置参数对应于拉格朗日对偶变量约束优化的λ。然而,在帕潘德里欧等人的原始算法中,约束条件并没有严格执行,特别是当其中一些约束条件发生冲突时。在第7节中,我们展示了这些约束的原则优化,CCNN,导致性能的显著提高。
6. Implementation Details
在本节中,我们将讨论应用于语义图像分割的算法的总体流程。我们考虑弱监督设置,即在训练中只出现图像级标签。在测试时,任务是预测给定图像的语义分割掩码。
Learning 我们实验中使用的CNN架构来自于VGG 16层网络[29]。在Imagenet 1K类数据集上进行预训练,在ILSVRC14上取得了较好的性能。我们按照[21]中建议的方式将完全连接的层转换成卷积,最后一个输出为1K的fc8层被替换为包含21个输出,对应于Pascal VOC和background类中的20个对象类。
这个全卷积网络的网络步长是32。然而,我们注意到,在弱监督训练中,[4]中提出的带有更密集的8网络步幅的稍微改进的体系结构可以取得更好的效果。不像[25, 26],我们没有从Imagenet中学习任何最后一层的权值。除了原始的预训练外,所有的参数只在Pascal VOC上进行微调。我们用随机高斯噪声初始化最后一层的权值。
FCN接收任意大小的图像,并生成与数据集中每个类对应的粗热图。我们将凸约束优化应用于这些粗糙的热图,降低了计算成本。该网络使用SGD进行动量训练。我们遵循[21],训练我们的模型批量大小为1,动量为0.99,初始学习率为1e-6。我们的训练60000次迭代,大约相当于5次回合,每20000次迭代将学习率降低0.1倍。我们发现,该设置的性能优于批量为20且动量为0.9[4]的情况。单一图像的约束优化在CPU单核上需要不到30毫秒的时间,可以使用GPU加速。总训练时间为8-9小时,相当于[21,24]。
Inference 在推理时,我们可以选择使用一个完全连接的条件随机场模型[18]来细化最终的分割。我们在所有实验中都使用了作者提供的默认参数。
7. Experiments
我们分析并比较了我们的约束优化在不同级别的监督下的性能:图像级标签和额外的监督,如对象大小信息。目标是学习预测密集多类语义分割的模型,即对任何新图像进行像素级标记。我们使用所提供的监控,对输出没有多少简单的空间限制,并且在训练中不使用任何额外的基于低级图割的方法。我们的目标是证明使用约束的输出进行训练的优势,以及它如何有助于提高监督水平。
7.1. Dataset
在PASCAL VOC数据集[9]上对CCNNs进行语义图像分割。数据集包含20个对象类和一个单独的背景类的像素级标签。为了与之前的工作进行公平的比较,我们使用类似的模型来训练所有模型。结合2012年VOC训练集和Hariharan等人收集的较大数据集[13]进行训练,共计10582张训练图像。在消融研究中,VOC12验证集包含了总共1449张图像。在ILSVRC数据集[28]上对算法使用的VGG网络结构进行了预训练,用于1K类[29]的分类任务。
结果报告的形式为标准交叉的联合(IoU)度量,也称为Jaccard指数。它定义为每个类在标记或分类为该类的总像素中正确预测的像素百分比。消融研究和与基线方法的比较,这两种弱设置在以下小节中介绍。
7.2. Training from imagelevel tags
我们首先使用图像级别的标记来训练我们的模型。我们从像素方向的ground truth分割掩码中的类的存在中获得这些标记。此设置中使用的约束用方程(7)、(8)和(9)描述。由于一些基线方法报告了VOC12验证集的结果,所以我们同时给出了验证集和测试集的性能。为了进行公平的比较,我们给出了包含和不包含密集CRF的结果。
表1比较了所有当代的弱分割方法。在弱标记语义分割中,我们提出的CCNN方法比以往的所有方法都有明显的优势。MIL- fcn[25]是基于最大得分实例的学习扩展到多类分割。由
Pinheiro等人介绍了MIL的一个软版本。它对来自ILSVRC13的21个类的70万张图像进行训练,这是所有其他方法的70倍。它们通过使用图像级先验重新调整像素概率来提高性能
(ILP),即类在图像中出现的概率。这将抑制负面类并平滑预测的分割掩码。对于EM-Adapt[24]算法,我们使用它们的公共可用实现1重新生成了模型。我们对EM-Adapt应用了类似的约束,以确保它只是对方法的比较。注意,基于无约束MIL的方法需要很好地初始化最后的21个类分类器,以获得合理的性能。
我们还将我们的算法与Papandreou等人报道的EMAdapt弱分割结果进行了直接比较。然而,他们的训练程序同时使用原始图像和分割掩模的随机作物。然后从这些随机作物中计算出弱标签。这就引入了关于弱标记空间位置的有限信息。在极端情况下,1×1产量作物减少到完全监督。因此,我们将在下一小节中介绍这一结果。
7.3. Training with additional supervision
现在,我们考虑的不仅仅是图像级别的标签。首先,我们借鉴帕潘德里欧等人的方法,对原始图像的随机作物进行带标签的训练。我们使用随机作物对EM-Adapt体系结构进行了约束优化,并与它们发布的caffemodel的结果进行了比较,如表3所示。利用有限的空间信息,我们的算法略优于EM-Adapt,主要是由于更强大的背景约束。注意,这种差异不像在纯弱标签设置中那么明显。
我们认为这是由于空间信息与前景先验相结合模拟了上层对背景的绑定约束,因为随机裁剪可能包含更少的标签。
CCNN的主要优点是不受线性约束类型的限制。为了进一步说明这一点,我们合并了一个简单的大小约束。对于每个标签,我们使用一个额外的信息:某个类是否占图像的10%以上。这个附加约束如式(10)所示。如表3所示,使用这一额外的信息可以显著提高准确性。不幸的是,EM-Adapt启发式不能直接包含这个更有意义的大小约束。
表2报告了我们在PASCAL VOC 2012测试服务器上的结果,并将其与完全监督的方法进行了比较。为了更好地与这些方法进行比较,我们进一步添加了一个结果,其中CRF参数在100个验证图像上进行了调优。作为最后一个实验,我们在弱目标的基础上逐步添加全监督图像并对模型进行评价,即,semi-supervised学习。图表在补充资料中显示。我们的模型很好地利用了额外的监督。
我们还评估了模型对约束参数的敏感性。我们沿着每个边界执行行搜索,同时保持其他边界不变。一般来说,由于松弛变量的存在,我们的方法对大范围的约束边界非常不敏感。所有参数的平均精度标准差为0.73%。补充资料中有详细说明。
定性结果如图4所示。
(图4:不同监管水平下VOC 2012数据集的定性结果。我们显示原始图像,地面真相,我们的训练分类器与图像水平标签和大小限制。请注意,尺寸约束对对象的本地化效果要比仅使用图像级别的标记好得多,而代价是在少数示例中丢失小对象。)
7.4. Discussion
我们进一步试验了边界框约束。我们在边界框中约束75%的像素以获取特定的标签,同时在边界框外抑制任何标签。这种额外的监督允许我们将IoU的准确性提高到54%。这个数字与我们在一个边界框内的所有像素上训练模型的基线相比较,得到52.3%的[24]。然而,它还没有与更复杂的系统竞争,使用更多的分割信息在边界框[7,24]。这些系统的性能大致相同IoU准确度为58.5 - 62.0%。我们认为这一性能的关键是更强地利用像素级分割信息。
综上所述,我们提出了一种用于卷积网络优化的约束优化框架CCNN。该框架是通用的,可以包含任意线性约束。它自然地集成到标准中随机梯度下降,可以很容易地用于公共可用的框架,如Caffe[17]。
我们证明了约束是描述标签期望输出空间的一种自然的方法,并且可以减少CNNs所需的强监督量。