【论文学习记录】Learning to Segment Every Thing

何凯明团队2018 CVPR的新文章,论文原文《Learning to Segment Every Thing》。

文章提出了一种部分监督学习分割的方法。就是学习一个将检测参数迁移为分割参数的函数,从而实现在分割信息不完整的数据集上训练,并且测试阶段能对训练阶段没有分割信息的类别也能预测其实例分割mask。

首先,给定一个数据集,其中某些类别组成的子集包含完整的instance mask annotation,而剩余类别组成的子集只包含bounding boxes信息。

然后,实例分割算法需要利用这个数据集训练一个模型,能对所有的类别进行分割。

假设C是一些想要训练的类别的集合,A是其中一个子集,这个子集拥有完整的分割标注,而B是剩余的一个子集,B只包含Bounding Boxes,没有分割标注信息。C=AUB。

作者提出的Mask* R-CNN模型。Mask* R-CNN通过迁移函数T(·),从Wdet预测其对应类别的分割参数Wseg,在训练的时候,T只需要A的mask标注,和B的boxes信息,但是在测试时,可以在AUB上进行预测。同时,Mask Head还有个互补的MLP,这个MLP的参数与类别无关。

【论文学习记录】Learning to Segment Every Thing

权重迁移函数的表示方法如下:

 【论文学习记录】Learning to Segment Every Thing

其中c代表某一类别,Wseg代表这一类别的mask参数,Wdet代表这一类别的bbox参数。theta是需要学习的参数,使得对那些即使在训练中没有出现mask annotation的类别也能很好地泛化。

训练时作者采用了两种训练方式。

1. Stage-wise training。先用AUB的数据集训练好一个Faster RCNN;第二阶段,固定CNN主体网络和目标检测分支的参数,训练实例分割分支。

2. End-to-End joint training。在A的mask损失进行梯度反向传播时,只对参数θ进行求导,不对Wdet进行求导。