这篇论文是旷视科技发表在CVPR 2018上的文章,研究内容是语义分割。论文原文《Learning a Discriminative Feature Network for Semantic Segmentation》。
文章提出现有的大部分语义分割方法都存在两个方面的挑战:intra-class inconsistency(类内不一致)和inter-class indistinction(类间无差别)。针对这两个挑战,提出了Discriminative Feature Network(判别特征网络,DFN)。DFN由;两个子网络构成:Smooth Network和Border Network。其中的Smooth Network带有Channel Attention Block(通道注意力模块,CAB)和全局平均池化可以选择更有判别力的特征。而Border Network借助多层语义边界监督区分边界两边的特征。
下面是DFN的网络结构。
Smooth Network
大部分方法都将语义分割看做是一个密集预测问题。但是有时候预测结果在某些部分上错误的,尤其是当图像块属于较大的区域和复杂场景之时。
类内不一致问题主要是由于缺乏语境信息,所以文章引入了全局平均池化。然而,全局语境只具有高语境信息,对复原空间信息没有帮助。正如大多数现有方法那样,作者需要多尺度感受野和语境来优化空间信息。然而,由于不同尺度的感受野其判别力也各不相同,从而造成不一致的结果,从而需要选择更具判别力的特征预测某个特定类别的统一语义标签。
论文使用ResNet作为基础的识别模型,根据特征图的大小,该模型可以划分为5个阶段。低级阶段有更精确的空间预测,高级阶段有更精确的语义预测,Smooth Network就是整合了这两者的优势,利用高级阶段的一致性指导低级阶段获得最优的预测。
Channel Attention Block
CAB的目的是改变每一个阶段的特征权重以优化一致性。
在FCN架构中,卷积操作的输出是score map,给出的是每一个类别在每个像素上的概率,这里实际有一个默认的设定是不同通道的权重是一样的。
其中x就是网络输出的特征图,w表示卷积操作。k∈{1,2,..K},K表示通道数。D表示所有像素位置的集合。
其中σ表示预测的概率值,y表示网络的输出。
最终的预测标签是有着最大概率值的类别。假设对某一区域的预测标签为y0,而真正的标签为y1。论文引入了参数α用于改变最高的概率值从y0到y1,
其中y¯表示新的预测值,而α=Sigmod(x;w)。
前面提到过,不同的阶段有不同的特征判别力,造成预测的一致性各不相同。为实现类内一致预测,应该提取判别特征,并抑制非判别特征,从而可以逐阶段地获取判别特征以实现预测类内一致。因此,使用公式(3)在CAB中进行特征选择。
Refinement Residual Block
特征网络中每一阶段的特征图全都经过Refinement Residual Block(优化残差模块,RRB)。该模块的第1个组件是1 x 1 卷积层,论文把它通道数量统一为512。同时,它可以整合所有通道的信息。接着是一个基本的残差模块,它可以优化特征图。此外,受 ResNet 启发,该模块还可以强化每一阶段的识别能力。
Border Network
在语义分割任务中,预测经常混淆外观相似的不同类别,尤其当它们在空间上相近之时,因此需要加大特征的差别。论文采用语义边界指导特征学习,同时应用显式监督提取精确的语义边界,使网络学习类间差别能力强大的特征,提出了Border Network。
Border Network可以同时从低级阶段获取精确的边界信息和从高级阶段获取语义信息,从而消除一些缺乏语义信息的原始边界。
为了弥补正负样本的不平衡,论文使用了focal loss来监督Border Network的输出。
其中 pk是类k的预测概率。
Smooth Network借助 softmax loss 监督每一阶段的上采样输出(全局平均池化层除外),借助 focal loss 监督 Border Network 的输出。两个子网络在一起联合训练,其 loss 通过一个参数控制两者的权重。
论文训练使用的是mini-batch的SGD,batch size为32,momentum为0.9, weight decay为0.0001.learning rate使用“poly”策略,初始learning rate设为4e-3,乘上
power设为0.9。 λ经过实验比较最后设为0.1。
Data augmentation使用的是减去均值和随机水平翻转。然后采用了5个尺度的缩放,{0.5,0.75,1,1.5,1.75}。随机的尺度缩放对结果的提升很明显。
下面是一些实验结果。
感觉Border Network的作用非常有限啊。