计算机系统应用  2024, Vol. 33 Issue (1): 219-230   PDF    
面向RGB-D语义分割的多模态任意旋转自监督学习
李鸿宇1,2, 张宜飞1,2, 杨东宝1,2     
1. 中国科学院 信息工程研究所, 北京 100085;
2. 中国科学院大学 网络空间安全学院, 北京 100049
摘要:基于RGB-D数据的自监督学习受到广泛关注, 然而大多数方法侧重全局级别的表示学习, 会丢失对识别对象至关重要的局部细节信息. 由于RGB-D数据中图像和深度具有几何一致性, 因此这可以作为线索来指导RGB-D数据的自监督特征表示学习. 在本文中, 我们提出了ArbRot, 它可以无限制地旋转角度并为代理任务生成多个伪标签用于自监督学习, 而且还建立了全局和局部之间的上下文联系. 本文所提出的ArbRot可以与其他对比学习方法联合训练, 构建多模态多代理任务自监督学习框架, 以增强图像和深度视图的特征表示一致性, 从而为RGB-D语义分割任务提供有效的初始化. 在SUN RGB-D和NYU Depth Dataset V2数据集上的实验结果表明, 多模态任意旋转自监督学习得到的特征表示质量均高于基线模型. 开源代码: https://github.com/Physu/ArbRot.
关键词: 自监督学习    代理任务    对比学习    RGB-D    多模态    
Self-supervised Learning Based on Multi-modal Arbitrary Rotation for RGB-D Semantic Segmentation
LI Hong-Yu1,2, ZHANG Yi-Fei1,2, YANG Dong-Bao1,2     
1. Institute of Information Engineering, Chinese Academy of Sciences, Beijing 100085, China;
2. School of Cyber Security, University of Chinese Academy of Sciences, Beijing 100049, China
Abstract: Self-supervised learning on RGB-D datasets has attracted extensive attention. However, most methods focus on global-level representation learning, which tends to lose local details that are crucial for recognizing the objects. The geometric consistency between image and depth in RGB-D data can be used as a clue to guide self-supervised feature learning for the RGB-D data. In this study, ArbRot is proposed, which can not only rotate the angle without restriction and generate multiple pseudo-labels for pretext tasks, but also establish the relationship between global and local context. The ArbRot can be jointly trained with contrastive learning methods for establishing a multi-modal, multiple pretext task self-supervised learning framework, so as to enforce feature consistency within image and depth views, thereby providing an effective initialization for RGB-D semantic segmentation. The experimental results on the datasets of SUN RGB-D and NYU Depth Dataset V2 show that the quality of feature representation obtained by multi-modal, arbitrary-orientation rotation self-supervised learning is better than the baseline models.
Key words: self-supervised learning     pretext task     contrastive learning     RGB-D     multi-modal    

RGB-D场景的语义分割[13]是计算机视觉和多媒体领域的基本任务, 在增强现实、室内场景理解和机器人环境感知等领域得到了广泛的应用. RGB-D数据[4]结合了RGB (红色、绿色、蓝色)彩色信息和Depth深度信息, RGB-D数据得益于颜色、纹理和几何结构间的互补信息, 可以提供更多信息用于分析. 预训练学习得到的特征提取模型作为下游任务网络的权重初始化可以提高任务的准确率和训练效率, 减少收敛到最佳性能所需的时间. 因此, 选择适当的初始化权重对于RGB-D语义分割模型十分重要.

深度学习的训练过程需要大量的标注数据 (如ImageNet[5])以获得满意的性能表现. 多数情况下, 数量众多且高质量的标注数据是难以获得的. 自监督学习利用数据本身的特点来设计代理任务, 可以在没有数据标注的情况下进行自监督训练, 获得特征提取模型用于下游任务权重初始化. 例如图片缺失区域恢复(图片修复)[6], 将图片切块打乱顺序然后恢复图片(拼图问题)[7], 对图片加入不同的噪声后去噪修复(图片去噪)[8], 对图片进行灰度处理后恢复图片颜色(图片上色)[9]等自监督代理任务. 近年来, 关于RGB-D数据自监督代理任务的研究得到广泛关注, 例如通过彩色图和深度图互相恢复[10], 彩色图和深度图经过数据增广后进行对比学习[11]以及通过掩膜自编码器恢复图像[12]等自监督代理任务.

旋转预测是自监督学习中常见的代理任务[13,14], 通过让模型学习识别应用于输入图像的旋转角度, 进而获得有效的特征表示. 现有工作受限于旋转方式, 可供旋转的角度有限, 代理任务难度较低. 然而, 提升代理任务的难度有益于提高自监督学习的性能[15]. 相对于单代理任务自监督学习方法, 多代理任务自监督学习可以提供多样的监督信号, 得到更鲁棒的特征表示, 提高模型的泛化能力, 使其能够更好地适应在实际应用场景中遇到的不同变换和干扰[16]. 然而, 代理任务也存在着设计难度大和生成伪标签不准确等一系列问题. 基于数据特征设计的代理任务需要对数据有着深入的了解, 使得模型可以根据数据自身的特性来进行特征表示学习.

因此, 本文针对旋转预测代理任务中旋转角度受限和代理任务单一的问题, 提出任意角度旋转代理任务, 克服旋转角度的限制, 提升了代理任务的难度同时, 还可以同时产生旋转角度和位置伪标签用于多代理任务自监督学习. 在基于任意角度旋转代理任务上, 我们构建了多模态多代理任务自监督表示学习框架, 辅助自监督学习得到更好的特征表示. 实验结果表明, 与以往方法相比, 本文提出的基于任意旋转代理任务的多模态多代理任务自监督表示学习框架可以提高模型在RGB-D 数据上的特征表示能力, 在RGB-D 语义分割下游任务中取得更好的结果.

1 相关工作 1.1 基于数据特征设计的代理任务

目前多数自监督学习方法通过定义一个代理任务来辅助编码器学习有意义的视觉特征. 用于自监督训练的伪标签信息可以根据数据的特性自动生成, 无需引入人工标注. 当训练完成后, 将编码器的权重提取出来作为特征提取模型, 用于下游任务训练时的权重初始化.

基于数据特征设计的代理任务需要对数据有深入了解, 根据数据特点设计生成伪标签来训练模型. 一些工作设计代理任务来识别数据的变换类型, 比如图像旋转角度预测代理任务. 干扰后恢复原始输入[16]. 旋转预测代理任务首先由RotNet[13]提出, 该代理任务首先将输入图像整体旋转90×N, N∈{0, 1, 2, 3}, 即随机选取 {0, 90°, 180°, 270°} 中一个角度, 旋转角度类别即作为伪标签. 卷积神经网络为了识别出图片上的旋转角度需要学习图片中物体结构和上下文信息. 训练时, 生成伪标签只需要极少的时间消耗, 可以做到实时训练. 然而这种方法旋转角度类别少, 代理任务较为简单, 因此不利于学习细粒度特征表示. 尽管如此, 旋转代理任务得到了广泛的应用, Hendrycks等人[17]发现添加旋转代理任务作为辅助后, 可以提升特征提取模型的鲁棒性和显著改善目标检测性能. PIRL (pretext invariant representation learning)[14]发现加入旋转代理任务不会改变图像的语义表征, 而多代理任务联合训练可以改善特征表示的质量. Chen等人[18]将旋转代理任务引入对抗生成网络中, 辅助编码器获取在训练中容易被遗忘的特征表示. SelfAugment[19]发现旋转代理任务避免了训练时产生特征混杂的问题. 以上工作表明旋转代理任务对于自监督学习有显著的促进意义, 然而旋转代理任务存在3个问题: (1)无法实现任意角度旋转, 否则会出现边缘碰撞(图片补丁部分区域超出了图像的边框)的情况; (2)旋转预测代理任务仅通过全局的自监督训练任务来学习场景层面的特征, 忽视了彩色图像和深度信息在全局和局部之间的互补关系, 难以学习到更细粒度特征; (3) 现有旋转数据增广方法比较简单, 无法为特征表示学习提供多样的监督信号.

1.2 对比学习代理任务

对比学习(contrastive learning)是基于实例判别的自监督方法, 旨在拉近相似样本的特征距离, 推远不同样本间的特征距离. 对比学习具有出色的扩展性和泛化能力, 可应用于不同领域的任务. 对比学习代理任务在训练时, 首先对输入样本进行数据增广(如随机裁剪、随机旋转、颜色抖动等)操作得到正样本对, 同一批其他输入样本作为负样本. 然后将样本输入孪生网络, 将其映射到低维向量空间中, 通过最大化正样本与负样本之间的距离, 最小化正样本之间的距离, 完成特征表示的学习.

近年来有许多基于实例判别的对比学习自监督学习方法被提出. MoCo (momentum contrast)[20]通过孪生网络将不同的数据样本映射到相同的特征空间, 利用实例判别从无标签数据中获得有意义的特征表示. MoCo使用了梯度和动量两种权重更新策略, 网络能够更好地捕捉到数据的长期特征, 从而得到更加鲁棒和语义丰富的特征表示. SimCLR (simple framework for contrastive learning of visual representations)[21]同样使用孪生网络结构, 表明不同的数据增强组合对于获得高质量的特征表示非常重要. 此外, 在进行对比损失之前引入一个可学习的非线性变换可以提高特征表示的质量. 不同于MoCo方法, SimCLR未使用缓冲区存储向量特征, 因此训练时需要较大的数据批作为输入. BYOL (Bootstrap your own latent)[22]与上述两种对比学习不同之处在于训练时无需负样本, 只采用正样本进行对比学习. 由于训练集中不存在负样本, 如果上下网络分支结构完全相同, 训练就有可能出现“捷径解”问题, “捷径解”指的是对不同的输入, 输出的特征向量完全相同. 为了解决这一问题, BYOL采用了非对称网络架构, 并将对比学习的实例判别代理任务替换为近似任务, 即孪生网络最终得到的特征要尽可能地相似. BYOL表明无需负样本, 网络依然可以学习到有效的特征表示, 而且这种方式对数据批处理大小不敏感, 适合实际应用. SimSiam (simple Siamese)[23]在孪生网络架构的基础上, 提出梯度停止操作是防止模型坍塌的关键. 在不使用负样本和动量更新策略情况下, 训练时直接最大化一张图片的两个视图的相似性来进行特征表示学习. SimSiam使用了两个相同的神经网络, 完全共享网络参数, 并且将一个数据增广后的两个不同样本作为输入. 与之前对比学习方法不同, SimSiam采用交替停止孪生网络梯度回传, 再交替使用梯度更新策略, 侧面证实了孪生网络架构是对比学习方法成功的关键性因素. 得益于对比学习良好的扩展性, 本文利用任意旋转代理任务结合对比学习构建了多代理任务自监督学习框架.

2 任意旋转多代理任务自监督框架介绍

本文提出的多模态多代理任务自监督学习框架主要包括3个组件: (1) 多模态数据增强方法ArbRot, 负责生成彩色图像、深度图像正样本对和伪标签信息, 详见图1(a)下侧. (2) 一个孪生网络作为编码器提取不同层次和尺度的特征信息, 促进特征表示收敛到统一的特征空间. (3) 通过多代理任务联合训练实现自监督学习, 从而提高特征提取模型的鲁棒性, 总体框架如图2所示. RGB-D数据首先经过任意旋转数据增广操作得到一对RGB-D数据和相应的旋转角度以及位置两个伪标签, 然后分别将这一对RGB-D分别输入到编码器中. 其中图2上方编码器和解码器采用梯度更新权重, 编码器的输出会输入到解码器当中, 二者采用U-Net[24]中应用的跳跃连接完成不同层之间信息的传递, 解码器的输出作为图像恢复头和深度估计头的输入. 此外, 编码器的输出经过平均池化后经过全连接层后输入到旋转预测头、位置预测头和对比学习头中计算损失. 图2中下方编码器采用动量更新权重, 编码器的输出经过平均池化后输入全连接层用于对比学习损失计算.

2.1 RGB-D任意旋转

RotNet对整图进行90°倍数的旋转, 即选取{0, 90°, 180°, 270°}中角度进行旋转, 旋转角度作为伪标签用于自监督学习. 我们还设置了PatchRot旋转方法, 按照设定的尺寸均匀分割图片得到图片补丁, 此时可以对补丁进行旋转, 可选择的旋转角度和RotNet相同, 否则在图片边缘可能会产生边缘碰撞问题 (即补丁的边缘超出了图像边框), 如图1红圈位置所示. ArbRot首先将输入的RGB-D数据进行圆形裁剪然后缩放到指定尺寸, 随后对圆形补丁任意旋转并在候选位置中随机选择一个作为贴回位置. 与矩形旋转相比, ArbRot 可以实现在 RGB-D 数据上进行任意角度旋转, 并且不会产生边缘碰撞, 同时得到位置和旋转角度两个伪标签用于自监督学习. ArbRot增强样本多样性的同时也提升了代理任务的难度.

图 1 不同旋转方式对比图

图 2 多模态多代理任务自监督表示学习框架图

2.2 多模态多代理任务头的具体构成

虽然多代理任务训练时不同代理任务之间共享编码器, 但是对应的代理任务头相互独立. 在训练时, 它们会根据伪标签和对应代理任务头的输出计算损失, 完成网络的权重更新. 它们的具体组成如下.

旋转预测头: 旋转预测头负责预测补丁相对于整体图像的旋转角度. 旋转预测代理任务促进了整体和局部、彩色图像和深度信息不同模态数据间的信息交互. 预测结果输出尺寸为$N \times D$, $N$表示输入样本数量, $D$表示预测的旋转类别概率和角度残差, 本文采用3DSSD[25]中设置, D设置为24, 其中前12维向量表示旋转类别概率, 后12维向量表示预测的角度残差, 具体损失设置参见本文第3.1节.

位置预测头: 位置预测头负责预测补丁在整体图片中的位置, 加强模型对空间上下文的理解. 首先将编码器的输出特征进行自适应平均池化, 然后将特征调整为指定维度输入到全连接层 (FC) 得到位置预测. 位置预测代理任务相对简单, 可以为模型训练时提供良好的初始权重调整.

图像恢复和深度估计预测头: 图像恢复和深度估计同为像素级别的预测任务, 因此我们同时介绍这两部分预测头的组成. 我们采用U-Net[24]编码器-解码器架构, 其中包含两个部分: 1) 共享的解码器和编码器, 2) 不共享的代理任务预测头分别对应图像恢复和深度估计代理任务. 图像恢复和深度估计代理任务让模型学习两种模态之间有意义的语义信息和形状线索.

对比学习头: 一个RGB-D数据经过任意旋转 (ArbRot)数据增广方法可以直接生成正样本对用于对比学习, 辅助编码器获得不同模态间一致的特征表示. 本文中使用不同对比学习方法, 除非特别说明, 否则使用官方设置.

3 损失函数的具体构成 3.1 旋转损失

旋转损失由旋转预测损失${L_{{\rm{rot}}}}$和多模态旋转损失${L_{{\rm{rotmut}}}}$组成. 旋转预测损失${L_{{\rm{rot}}}}$由负责旋转角度分类的交叉熵(CrossEntropy)损失和负责缩小角度残差的平滑L1损失组成. 其中, 交叉熵损失用于计算旋转方向的类别差异, 平滑L1损失用于预测旋转角度残差. 这两部分损失共同优化旋转预测任务, 使模型能够准确地预测物体的旋转角度. 受3DSSD[25]启发, 我们将360°分为12个角度区间(即每30°为一个区间), 并以此区间中心分为 [−15°, 15°], 把角度残差标准化到 [−0.5, 0.5] 范围内, 以进行损失计算.

$ {L_{{\rm{rot}}}} = \frac{1}{N}\sum\limits_{i = 1}^N {({\textit{CE}}({d_c}, {t_c}) + {\textit{SmoothL}}1({d_r}, {t_r}))} $ (1)
$ {{L}_{{\rm{rotmut}}}}=\frac{1}{N}\sum\limits_{i=1}^{N}\left(\left| Rot(d_{c}^{{\rm{RGB}}},d_{r}^{{\rm{RGB}}})-Rot(d_{c}^{{\rm{Dep}}},d_{r}^{{\rm{Dep}}}) \right|\bigg/360\right) $ (2)

其中, ${d_c}$${d_r}$表示旋转类别和残差的预测值, ${t_c}$${t_r}$是目标值. 例如旋转角度278°, 则${t_c} = 9$, ${t_r} = - 0.23$. ${L_{{\rm{rotmut}}}}$负责解决两种模态下旋转角度预测值不一致的问题, 促进不同模态间的信息交互. N表示输入样本数量.

3.2 位置预测损失

我们对整体图像按照网格进行均匀划分, 并对网格进行编号, 选择其中某个网格贴回补丁图片. 如此位置预测转换为一个分类问题, 因此我们采用交叉熵损失来监督物体位置预测. 位置预测损失${L_{{\rm{loc}}}}$:

$ {L_{{\rm{loc}}}} = \frac{1}{N}\sum\limits_{i = 1}^N {\sum\limits_{j = 1}^C {{x_j}\log ({y_j})} } $ (3)

其中, ${{{x}}_j}$表示位置类别标签, ${y_j}$表示位置预测的概率. 当只用位置预测代理任务来进行自监督训练时, 我们将不同网格划分设置下得到的特征提取模型在下游CIFAR10[26]分类任务上进行测试, 结果如图3(b)所示. 在CIFAR10[26]上冻结主干网微调全连接层训练50轮时, 发现5×5网格划分时分类性能最好.

图 3 代理任务间相似度对比图和下游分类任务性能图

3.3 图像恢复和深度估计采用的损失

我们使用感知损失和风格损失来衡量生成的图像与真实图像之间的差异. 感知损失衡量生成图像和真实图像在语义特征上的差异. 风格损失衡量生成图像和真实图像在纹理和风格上的差异, 二者保证生成的图像与真实图像保持一致.

我们的 RGB 生成深度 (深度生成 RGB)的损失函数为:

$ {L_{{\rm{per}}}} = \frac{1}{N}\sum\limits_{i = 1}^N \left(\frac{1}{{{H_i}{W_i}{C_i}}} {\left| {\Phi _i^{{\rm{gt}}} - \Phi _i^{{\rm{pred}}}} \right|_1}\right) $ (4)
$ {L_{{\rm{sty}}}} = \frac{1}{N}\sum\limits_{i = 1}^N \left(\frac{1}{{{C_i} \times {C_i}}} {\left| {\frac{1}{{{H_i}{W_i}{C_i}}}\left( {\Phi _i^{{\rm{gt}}}\Phi {{_i^{{\rm{gt}}}}^{^{\rm{T}}}} - \Phi _{_i}^{{\rm{pred}}}\Phi {{_{_i}^{{\rm{pred}}}}^{^{\rm{T}}}}} \right)} \right|_1}\right) $ (5)
$ {L_{{\rm{RGD}}({\rm{DGR}})}} = {\lambda _{{\rm{per}}}}{L_{{\rm{per}}}} + {\lambda _{{\rm{sty}}}}{L_{{\rm{sty}}}} $ (6)

其中, ${\Phi ^{{\rm{gt}}}}$, ${\Phi ^{{\rm{pred}}}}$表示RGB彩色图像(Depth深度图像)真实值和预测值; ${H_i}$, ${W_i}$, ${C_i}$表示第i个输出的高, 宽和通道数, 数值分别为256, 256, 3. ${\lambda _{{\rm{per}}}}$${\lambda _{{\rm{sty}}}}$表示感知损失和风格损失的权重, 参考文献[27]分别设置为0.05和120. 真实值和预测值可视化结果如图4所示.

图 4 图像恢复和深度估计的可视化结果

3.4 对比学习损失

我们采用InfoNCE[20]作为对比学习的损失函数. $ X $表示训练数据集合, $ {x_0} $表示当前给定输入数据, 通过在其上应用ArbRot数据增强方法, 我们可以生成与其相似度较高的正样本${x^ + }, \;{y^ + } \sim {\rm{ArbRot}}\left( {{x_0}} \right)$, 同时输入数据批中其他数据(或者缓冲队列中的向量)作为负样本$ x_1^ - , \cdot \cdot \cdot , x_N^ - \sim p\left( X \right) $. 对比学习${L_{{\rm{con}}}}$损失函数可以表示如下:

$ {L_{{\rm{con}}}} = - \frac{1}{N}\log \frac{{\exp ({x^ + } \cdot {y^ + }/\tau )}}{{\displaystyle\sum\nolimits_i^N {\exp ({x^ + } \cdot x_i^ - /\tau )} }} $ (7)

其中, $\tau $表示温度超参数, 设置为0.2.

多模态多代理任务自监督的总体训练损失函数${{L}}$可以表示为:

$ L = {\lambda _1}{L_{{\rm{rotrot}}}} + {\lambda _2}{L_{{\rm{mut}}}} + {\lambda _3}{L_{{\rm{loc}}}} + {\lambda _4}{L_{{\rm{RGD}}}} + {\lambda _5}{L_{{\rm{DGR}}}} + {\lambda _6}{L_{{\rm{con}}}} $ (8)
4 实验分析 4.1 数据集

我们在SUN RGB-D数据集[28]和NYU Depth Dataset V2数据集[29]上进行了实验.

SUN RGB-D数据集[28]一共包含10 335张RGB-D图像, 整个数据集包含146 617个2D多边形和64 595个带有准确物体方向的3D边界框, 以及每个场景的3D房间布局和场景类别, 图片中像素均有类别标签, 共有37类别. 我们利用训练集 (5 285张图像)和验证集(5 050张图像)进行自监督训练, 未使用任何标注信息.

NYU Depth Dataset V2数据集[29]由纽约大学创建, 通过微软Kinect体感外设采集了各种室内场景视频序列, 其中包含了同一室内场景的彩色信息和深度信息. 其中, 数据集包括1449张标注的RGB图片和深度图, 来自于3个城市, 464个场景, 407024张无标注图片, 每个对象都有一个类和一个实例号码. 数据集分为795张图片用于训练, 654张用于测试. 我们采用40类像素级别标签进行下游任务训练. 上述两个数据集中的深度图使用参考文献[2]中的方法将其编码为HHA图像.

4.2 实现细节

我们将每张RGB彩色图像和HHA深度图像的高度和宽度调整为256像素. 在ArbRot数据增强方法中, 网格采用5×5划分, 还采用了随机裁剪和颜色抖动两种数据增强方法. 我们采用ResNet-50[30]作为编码器, 预训练时权重采用随机初始化. 解码器使用了U-Net[24]中解码器设置, 由3个上采样卷积模块(UpConvBlock)组成. 上采样卷积模块由一个上采样模块和一个卷积模块组成. 上采样模块将高层低分辨率特征图进行上采样, 卷积模块融合来自编码器的低层高分辨率特征图和上采样的高层低分辨特征图. 解码器的输出作为图像恢复和深度估计预测头的输入. 此外, 编码器的输出特征经过平均池化后, 输入3个独立的全连接层(FC), 得到3个不同特征向量(维度分别为N×24, N×25, N×128, N表示数据批大小)用于旋转预测, 位置预测和实例判别任务.

我们在SUN RGB-D数据集上进行多模态多代理任务自监督训练. 对于优化器, 我们采用随机梯度下降(SGD)优化器, 学习率设置为0.1, 动量设置为0.9, 权重衰减为0.0001, 并使用步长(step learner)学习率调节器. 网络训练开始阶段采用热身(warm-up)策略缓慢增大学习率到指定大小. 自监督训练300轮(epoch), 在训练到180和270轮时乘以0.1降低学习率, 并将整体损失函数中的超参数${\lambda _1}$, ${\lambda _2}$, ${\lambda _3}$, ${\lambda _4}$, ${\lambda _5}$, ${\lambda _6}$设置为0.8、0.8、1.0、0.8、0.2、0.2. 我们在2个NVIDIA 2080进行预训练, 每个GPU的批处理大小为8.

我们将预训练得到的特征提取模型作为ShapeConv和DeepLabv3+模型的主干网络的权重初始化, 然后进行有监督训练微调下游任务性能. 二者的优化器选择随机梯度下降(SGD), 学习率设置为0.007, 动量设置为0.9, 权重衰减系数为1E–4, 采用PolyLR[31]调节学习率, 一共训练500轮. 我们在2个NVIDIA 2080上进行微调, 每个GPU的批处理大小为4, 具体设置参考文献[2].

4.3 评价指标及基准模型

在RGB-D语义分割任务中, 我们采用了与FCN[32]相同的评估标准, 即像素准确率 (Pixel Acc)、平均准确率 (Mean Acc)、平均区域交并比 (Mean IoU)和加权交并比 (f.w. IoU)这4个指标.

表1中我们对其他的旋转代理任务进行了测试, 并和我们提出的任意旋转代理任务进行了对比. 可以发现和整图矩形旋转的RotNet相比, PatchRot性能更好. 而ArbRot的性能又优于RotNet和PatchRot两个代理任务. 对于任意旋转代理任务, 我们发现整体补丁优于局部补丁. 其中局部补丁是指补丁所在位置图像直接旋转, 整体补丁是指将整图缩小到补丁尺寸后旋转.

我们把从SimCLR、SimSiam、BYOL和MoCo预训练得到的4个特征提取模型分别在SUN RGB-D和 NYU Depth Dataset V2数据集上使用ShapeConv语义分割方法微调, 作为基线性能. 然后, 将ArbRot用于上述4个对比学习方法中构建多模态多代理任务自监督学习框架在SUN RGB-D进行预训练, 将得到的特征提取模型用于SUN RGB-D和 NYU Depth Dataset V2数据集中语义分割下游任务, 结果见表2表3, 各行上方为基线性能, 下方为我们提出框架的性能. 表2中在SUN RGB-D数据集上的平均交并比 (mIoU)结果分别比SimCLR、SimSiam、BYOL和MoCo这4个基线性能提高了1.75%、6.39%、4.92%和6.99%. 在SUN-RGB-D数据集上的结果表明了我们方法的有效性. 表3中在 NYU Depth Dataset V2数据集上的平均交并比 (mIoU)结果分别比SimCLR、SimSiam、BYOL和MoCo这4个基线性能提高了6.82%、10.38%、10.32%和11.22%. 在 NYU Depth Dataset V2数据集上的结果表明了我们方法在其他数据集上展现出良好的泛化性.

表 1 不同旋转预测代理任务在 NYU Depth Dataset V2数据集上语义分割性能(自监督训练300轮) (%)

表 2 使用ShapeConv模型在SUN RGB-D数据集上语义分割性能(自监督训练300轮) (%)

表 3 使用ShapeConv模型在NYU Depth Dataset V2数据集上语义分割性能(自监督训练300轮) (%)

5 消融实验设置

为了揭示多模态多代理任务学习范式的潜力, 我们使用MoCo作为对比学习的代表在SUN RGB-D数据集上进行了多模态多代理任务的消融实验. 优化器采用随机梯度下降(SGD), ArbRot中网格采用5×5划分. 我们设置每个GPU上批处理大小为8、学习率为0.1, 自监督训练100轮, 在训练到60和90轮的时候乘以0.1减少学习率; 动量系数设置为0.9, 权值衰减系数设置为0.000 1. 为了分析组合不同代理任务对下游任务影响, 我们将整体损失函数中的超参数 ${\lambda _1}$, ${\lambda _2}$, ${\lambda _3}$, ${\lambda _4}$, ${\lambda _5}$, ${\lambda _6}$都设置为1, 即每个代理任务对模型的贡献相同, 观察不同任务组合对语义分割下游任务性能的影响.

5.1 消融实验及模型分析

为了验证基于任意旋转的多模态多代理任务自监督学习的有效性, 我们研究了以下两个问题.

RQ1: 多代理任务是否可以获得比对比学习单代理任务更好的结果?

通过表4表5中前5行的结果(表4表5中各代理任务损失权重均设置为1, 自监督训练100轮), 表明MoCo+ArbRot双代理任务在DeepLabv3+[33]和ShapeConv[2]两个语义分割方法在像素准确率上结果优于单代理任务, 证明ArbRot与对比学习方法进行联合训练可以得到更细粒度的语义特征. 通过表4表5中第5–11行结果, MoCo+loc+ArbRot三代理任务组合优于双代理任务组合. 通过表4表5中第12–15行结果, MoCo+loc+ArbRot+RGD四代理任务组合获得的特征提取模型优于三代理任务. 表4表5最后一行结果表明随着代理任务的增加, 性能总体呈现上升趋势, 但是联合训练过程中不同代理任务之间的干扰也愈发严重.

综上, 多代理任务可以获得比对比学习单代理任务更好的结果, 相对于现有的对比学习单代理任务自监督学习更具实用价值.

RQ2: 多代理任务之间是否存在互相干扰以及如何克服这些干扰?

通过表4, 表5中的实验结果可以发现, 如果各个代理任务产生的损失权重都置为1, 即${\lambda _1}$, ${\lambda _2}$, ${\lambda _3}$, ${\lambda _4}$, ${\lambda _5}$, ${\lambda _6}$, 权重均取值1.0, 此时随着代理任务的增加, 虽然像素准确率、平均交并比指标有所上升, 但是性能开始不稳定. 说明多代理任务之间存在着相互干扰导致特征提取模型表征能力下降.

表 4 使用DeepLabv3+模型在NYU Depth Dataset V2数据集上比较不同代理任务组合对性能的影响(%)

我们统计了各个代理任务的特征提取模型每一层神经元权重之间的平均余弦相似度, 如图3(a)所示. 可以得知彩色图像生成深度图像(RGD)更接近于深度图像生成彩色图像(DGR)代理任务, 而MoCo则更接近于ArbRot代理任务. 我们发现, 当两个代理任务越相似, 它们被组合在一起时性能越差. 我们猜测相似的任务有相似的收敛空间, 在训练过程中它们将受到其对应的相似代理任务的干扰而陷入局部最优. 此外我们注意到, 不相似的任务组合到一起后将会提高视觉表示的质量. 我们将这种提升归因于不相似的代理任务有助于获得不同的收敛空间, 减少表征学习中的干扰.

表 5 使用ShapeConv模型在NYU Depth Dataset V2数据集上比较不同代理任务组合对性能的影响(%)

为了克服不同代理任务间的干扰, 我们根据下游任务的性能确定主要和辅助任务, 并将二者的损失权重之和设置为1. 因此, 我们将ArbRot和RGD作为主要任务, 将MoCo和DGR作为辅助任务. loc任务与其他4个代理任务均不相似且训练时损失较早收敛, 因此将其损失权重设置为1. 如表6所示, 整体损失函数中的超参数${\lambda _1}$, ${\lambda _2}$, ${\lambda _3}$, ${\lambda _4}$, ${\lambda _5}$, ${\lambda _6}$, 分别设置为0.8、0.8、1.0、0.8、0.2、0.2, 可以在下游任务中获得最佳性能.

表4, 表5中发现, 当${\lambda _1}$, ${\lambda _2}$, ${\lambda _3}$, ${\lambda _4}$, ${\lambda _5}$, ${\lambda _6}$均设置为1时, 原有任务组合上额外加入DGR代理任务, 下游任务性能就会下降. 我们采用${\lambda _1}$, ${\lambda _2}$, ${\lambda _3}$, ${\lambda _4}$, ${\lambda _5}$, ${\lambda _6}$, 分别设置为0.8、0.8、1.0、0.8、0.2、0.2时测试对下游语义分割任务的影响. 从表7中的结果可以看出降低损失权重后的DGR代理任务可以辅助提升下游任务性能, 如果去除DGR代理任务会导致性能下降.

表 6 使用ShapeConv模型在NYU Depth Dataset V2数据集上比较不同自监督代理任务权重对性能的影响(自监督训练300轮) (%)

表 7 使用ShapeConv模型在NYU Depth Dataset V2数据集上比较深度恢复彩色图片任务对性能的影响(%)

5.2 不同增广方式对性能的影响

图片恢复和深度估计的预测质量很难直接观察, 为了更直观地观察其他不同数据增广方式对自监督训练的影响, 我们使用ArbRot数据增强技术在SUN RGB-D数据集上构建了一个新数据集, 称为ArbRot RGB-D. 为了提高ArbRot RGB-D数据集的多样性, 位置有9个候选位置, 旋转角度任意. ArbRot RGB-D由一个训练集 (5 285张图像对)和一个验证集 (5 050张图像对)组成, 我们使用训练集来训练模型, 使用验证集来验证性能. 旋转统计结果见表8, 我们尽量覆盖所有旋转角度. 图5呈现了ArbRot RGB-D数据集中的部分图例, 交替为彩色图和深度图.

表 8 数据集ArbRot RGB-D中旋转方向的分布表

我们测试了其他5种数据增强方法对RGB-D表示学习的影响, 分别是随机剪裁 (random crop, RC)、颜色扰动 (color jitter, CJ)、随机灰度 (random gray, RG)、高斯模糊 (Gaussian blur, GB)和随机翻转 (random flip, RF). 我们结合表9发现, 当使用RC和CJ数据增广时, 旋转分类的性能可以达到较好的效果; 当同时使用RC, CJ, RG, GB这4种数据增强方法时, 位置分类的性能得到了进一步提升. 旋转预测代理任务比位置分类代理任务难度更高, 因此我们使用RC和CJ数据增强方法用于多模态多代理任务的自监督学习.

5.3 多模态多代理任务自监督训练损失变化

多模态多代理任务自监督训练过程中, 不同损失的变化见图6. 可以发现结合SimCLR方法时总体损失下降最慢. 而当结合SimSiam、BYOL和MoCo的方法时, 总体损失下降较快. 位置预测损失最快收敛; 图片恢复、深度估计和旋转预测对应损失抖动下降, 表明三者为难代理任务.

图 5 ArbRot RGB-D数据集图例

表 9 数据集ArbRot RGB-D中使用不同数据增广方法后旋转和位置预测准确率(%)

图 6 多模态多代理任务和对比学习结合后训练过程中损失的变化

6 结论

本文提出了一种新颖的RGB-D数据增强方法, 可以在训练中通过任意旋转补丁图片创建彩色图像和深度图像数据对, 增广后的数据可以促进对RGB-D数据中整体和局部关系的理解, 有助于提升特征提取模型的表征能力. 我们设计了一个多模态多代理任务自监督学习框架, 用于完成RGB-D多模态表示学习, 并通过下游语义分割任务证明了有效性. 广泛的实验表明, 我们提出的基于任意旋转代理任务的多模态多代理自监督表示学习框架, 可以得到通用有效的特征表示, 提升下游任务的性能. 我们提出的多模态多代理任务进行自监督表示学习不需要昂贵且费时的人工标注信息, 而且可以融合不同代理任务的优势, 具有较强的实用性.

参考文献
[1]
Lopes A, Souza R, Pedrini H. A survey on RGB-D datasets. Computer Vision and Image Understanding, 2022, 222: 103489. DOI:10.1016/j.cviu.2022.103489
[2]
Cao JM, Leng HC, Lischinski D, et al. ShapeConv: Shape-aware convolutional layer for indoor RGB-D semantic segmentation. Proceedings of the 2021 IEEE/CVF International Conference on Computer Vision. Montreal: IEEE, 2021. 7068–7077.
[3]
李梦怡, 朱定局. 基于全卷积网络的图像语义分割方法综述. 计算机系统应用, 2021, 30(9): 41-52. DOI:10.15888/j.cnki.csa.008078
[4]
Zhao XQ, Zhang LH, Pang YW, et al. A single stream network for robust and real-time RGB-D salient object detection. Proceedings of the 16th European Conference on Computer Vision. Glasgow: Springer, 2020. 646–662.
[5]
Deng J, Dong W, Socher R, et al. ImageNet: A large-scale hierarchical image database. Proceedings of the 2009 IEEE Conference on Computer Vision and Pattern Recognition. Miami: IEEE, 2009. 248–255.
[6]
Pathak D, Krähenbuhl P, Donahue J, et al. Context encoders: Feature learning by inpainting. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 2536–2544.
[7]
Noroozi M, Favaro P. Unsupervised learning of visual representations by solving jigsaw puzzles. Proceedings of the 14th European Conference on Computer Vision. Amsterdam: Springer, 2016. 69–84.
[8]
Vincent P, Larochelle H, Bengio Y, et al. Extracting and composing robust features with denoising autoencoders. Proceedings of the 25th International Conference on Machine Learning. Helsinki: ACM, 2008. 1096–1103.
[9]
Larsson G, Maire M, Shakhnarovich G. Colorization as a proxy task for visual understanding. Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017. 840–849.
[10]
Zhao XQ, Pang YW, Zhang LH, et al. Self-supervised pretraining for RGB-D salient object detection. Proceedings of the 36th AAAI Conference on Artificial Intelligence. AAAI, 2022. 3463–3471.
[11]
Chen YJ, Nießner M, Dai A. 4DContrast: Contrastive learning with dynamic correspondences for 3D scene understanding. Proceedings of the 17th European Conference on Computer Vision. Tel Aviv: Springer, 2022. 543–560.
[12]
Yang JG, Guo S, Wu GS, et al. CoMAE: Single model hybrid pre-training on small-scale RGB-D datasets. Proceedings of the 37th AAAI Conference on Artificial Intelligence. Washington: AAAI, 2023. 3145–3154.
[13]
Gidaris S, Singh P, Komodakis N. Unsupervised representation learning by predicting image rotations. Proceedings of the 6th International Conference on Learning Representations. Vancouver: OpenReview.net, 2018.
[14]
Misra I, van der Maaten L. Self-supervised learning of pretext-invariant representations. Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020. 6706–6716.
[15]
Chen PG, Liu S, Jia JY. Jigsaw clustering for unsupervised visual representation learning. Proceedings of the 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Nashville: IEEE, 2021. 11521–11530.
[16]
Jing LL, Tian YL. Self-supervised visual feature learning with deep neural networks: A survey. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2021, 43(11): 4037-4058. DOI:10.1109/TPAMI.2020.2992393
[17]
Hendrycks D, Mazeika M, Kadavath S, et al. Using self-supervised learning can improve model robustness and uncertainty. Proceedings of the 33rd International Conference on Neural Information Processing Systems. Vancouver: Curran Associates Inc., 2019. 1403.
[18]
Chen T, Zhai XH, Ritter M, et al. Self-supervised GANs via auxiliary rotation loss. Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 12146–12155.
[19]
Reed CJ, Metzger S, Srinivas A, et al. SelfAugment: Automatic augmentation policies for self-supervised learning. Proceedings of the 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Nashville: IEEE, 2021. 2673–2682.
[20]
He KM, Fan HQ, Wu YX, et al. Momentum contrast for unsupervised visual representation learning. Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle: IEEE, 2020. 9726–9735.
[21]
Chen T, Kornblith S, Norouzi M, et al. A simple framework for contrastive learning of visual representations. Proceedings of the 37th International Conference on Machine Learning (ICML). PMLR, 2020. 1597–1607.
[22]
Grill JB, Strub F, Altché F, et al. Bootstrap your own latent a new approach to self-supervised learning. Proceedings of the 34th International Conference on Neural Information Processing Systems. Vancouver: Curran Associates Inc., 2020. 1786.
[23]
Chen XL, He KM. Exploring simple siamese representation learning. Proceedings of the 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Nashville: IEEE, 2021. 15745–15753.
[24]
Ronneberger O, Fischer P, Brox T. U-Net: Convolutional networks for biomedical image segmentation. Proceedings of the 18th International Conference on Medical Image Computing and Computer-assisted Intervention (MICCAI). Munich: Springer, 2015. 234–241.
[25]
Yang ZT, Sun YN, Liu S, et al. 3DSSD: Point-based 3D single stage object detector. Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020. 11037–11045.
[26]
Krizhevsky A. Learning multiple layers of features from tiny images [Master’s Thesis]. Toronto: University of Toronto, 2009.
[27]
Li JY, Wang N, Zhang LF, et al. Recurrent feature reasoning for image inpainting. Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle: IEEE, 2020. 7757–7765.
[28]
Song SR, Lichtenberg SP, Xiao JX. SUN RGB-D: A RGB-D scene understanding benchmark suite. Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Boston: IEEE, 2015. 567–576.
[29]
Silberman N, Hoiem D, Kohli P, et al. Indoor segmentation and support inference from RGB-D images. Proceedings of the 12th European Conference on Computer Vision (ECCV). Florence: Springer, 2012. 746–760.
[30]
He K, Zhang X, Ren S, et al. Deep residual learning for image recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. 2016. 770–778.
[31]
Mishra P, Sarawadekar K. Polynomial learning rate policy with warm restart for deep neural network. Proceedings of the 2019 IEEE Region 10 Conference (TENCON). Kochi: IEEE, 2019. 2087–2092.
[32]
Long J, Shelhamer E, Darrell T. Fully convolutional networks for semantic segmentation. Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Boston: IEEE, 2015. 3431–3440.
[33]
Chen LC, Papandreou G, Schroff F, et al. Rethinking atrous convolution for semantic image segmentation. arXiv:1706.05587, 2017.