语义分割之Loss Max-Pooling

abstract

  • 论文地址:Loss Max-Pooling for Semantic Image Segmentation
  • 论文中提出了loss max-pooling的概念,用于解决在语义分割中像素个数类别分布不均匀的情况,即实际情况中,大部分的数据都是符合长尾分布的,少量的类别对应的样本占据了所有样本个数中的大部分。
  • 论文中提出的方法可以根据每个像素的loss对他们的权重进行自适应地调整,这也可以间接解决训练数据分布不均匀的情况。
  • 提供了理论证明,同时在Pascal VOC和cityscapes上做了实验,超过了传统loss function所得到的模型的精度。

introduction

class imbalance

  • 之前对于类别不均衡现象的处理主要有以下几种方向。
    • 在数据采集的过程中就考虑到这种情况,即尽可能使所有的样本类别对应的数量比较均衡。
    • 对于不同类别的样本,它们训练得到的loss的权重设置成不同的值,比如说不同类别的loss weight与它们的样本数量成反比等。
  • 因为在语义分割中,像素之间可能还有更多的相关性,因此在语义分割任务中使用第二种方法会更好一些。

contribution

  • 提出了一个用于处理类别不均衡的语义分割任务的深度学习方法,导致更高loss的像素点的权重更大,而且本文中的方法不需要知道像素类别的统计信息。
  • max pooling和本文中的loss function都是在于怎么去划分weighting functions。本文主要基于p-norm的问题给出了loss function的理论推导。
  • 本文中还给出了一个基于性能的采样方法,并证明了稍微改变采样策略,就能够加快模型训练的收敛速度,同时提升模型性能。

Pixel-Loss Max-Pooling

Standard setting

  • 标准的目标函数如下

$$\min {\kern 4pt} \sum {L({f_\theta }(x),y) + \lambda R(\theta )}$$

前面是经验风险,后面是模型的正则化项,表示结构风险。在语义分割中,前面的loss如下,表示所有像素loss的均值。

$$L(\hat y,y) = \frac{1}{n}\left\langle {\ell _{\hat yy}} \right\rangle$$

论文里假设每个像素的loss是非负且有界的。

Loss max-pooling

  • 在标准的loss function中,每个loss的weight是相同的。这对像素个数很多的类别的训练有利,为了避免这个问题,对每个像素的weight基于其loss进行reweight,pixel loss可以修改为

$$L_w(\hat y,y) = w \cdot {\ell _{\hat yy}} $$

$w \in W$。定义新的loss function,使得对于不同的weighting functions,loss可以取得最大值。

$${L_W}(\hat y,y) = max{ {L_w}(\hat y,y):w \in W} $$

这种loss可以被视为在pixel loss上进行max pooling的操作。之前标准的loss则可以视为average pooling操作。

The space W of weighting functions

  • 论文中主要对weight function进行讨论,weight function的边界在论文中为

$$|w|p \le \gamma ,|w| \infty \le \tau$$

设置p-norm的bound为$\gamma = n^{-1/q}$,其中$q=\frac {p} {p-1}$

最终$p$和$\tau$是超参数。

  • 一方面,$p$可以控制pixel selectivity degree of the pooling operation
    • $p=1$,optimal weight会focus on single pixel(类似于那种L1正则化过程)
    • $p=\infty$,optimal weight对所有pixel都会均匀关注。
  • 另一方面,$\tau$可以通过$m = \frac {\gamma} {\tau}$控制被optimal weight function支持的最小的像素个数(最少可以保证被赋予权重的像素个数)。
  • 下面给出了不同超参数下,weight function的形状。

weight function shape

  • 下面给出了控制变量时,$p$和$m/n$对最终loss weight的影响。

optimal weights.png

Computation of $L_W$

  • 在$p \ge 1$的时候,可以将原始问题转化为对偶问题进行求解,论文中针对$p \gt 1$和$p = 1$分情况进行了讨论与求解。

experiment

  • 主要是基于deeplab V2进行的实验。
  • 数据集为cityscapes和Pascal VOC 2012。
  • 采用论文中的loss max-pooling方法之后,在绝大部分类别上的精度都有提升(truck稍微降低了一些)。

conclusion

  • 论文主要是提出了一种处理不均衡数据的新的方法,提出了一种新的loss function,用于对pixel-specific loss进行max-pooling的操作,这是传统loss function的上限,它是一种adaptive weighting scheme,因而也可以表面类别不均衡的问题。
  • weight functions space进行研究,通过控制超参数,可以控制pixel selectivity and the extent of the supported pixels,对这种方法进行了公式推导,并用实验验证了其正确性。