zoukankan      html  css  js  c++  java
  • 多任务训练的模式结构扩散

    多任务训练的模式结构扩散

    Pattern-Structure Diffusion for Multi-Task Learning

    论文地址:

    http://openaccess.thecvf.com/content_CVPR_2020/html/Zhou_Pattern-Structure_Diffusion_for_Multi-Task_Learning_CVPR_2020_paper.html

    摘要

    基于模式结构在任务内和任务间频繁重复的观察,提出了一个模式结构扩散(PSD)框架,在任务层空间中挖掘和传播特定任务和任务,用于联合深度估计、分割和表面法向预测。为了表示局部模式结构,将其建模为小规模的图形,并以两种不同的方式传播,即任务内和任务间PSD。对于前者,为了克服模式结构局部性的限制,利用邻域上的高阶递归聚集来乘性地增加扩展范围,从而在任务空间内传播长距离模式。在任务间PSD中,根据任务中成对模式结构的匹配程度,将对应于同一空间位置的对应结构相互转换为任务本身。最后,将任务内和任务间的模式结构在任务级模式之间进行联合扩散,并封装成端到端PSD网络,以提高多任务学习的性能。在两个广泛使用的基准上进行的大量实验表明,提出的PSD更为有效,并且取得了最新的或有竞争力的结果。

    一.基本原理和贡献

    由于在智能机器人[42]、自动驾驶[6]等领域有着重要的应用,密集像素预测任务,如深度估计、分割和曲面法向预测是计算机视觉领域的基础性和挑战性工作。然而,单任务模型更多的关注于鲁棒回归的学习,而很少考虑任务之间的交互作用。作为场景理解中的像素级任务,这三个任务实际上有一些共同的特点,可以相互共享。最近,联合任务学习方法[29,55,8,38,53]出现了,并显示出一个有希望的方向,通过跨任务交互来提高性能。大多致力于特征融合(如级联)或模型共享(如公共网络参数),遵循传统的融合路线。由于非故意的集成,这些“黑盒”方法无法关注/知道多个任务之间传输/交互的具体信息。最终,在多任务像素预测的研究中,哪些信息可以用来桥接不同的任务还没有得到很好的揭示和利用。一个观察结果是[58]局部斑图在同一幅图像中以及不同比例的图像中频繁地重复出现。隐含着大量自然图像局部模式结构的高度相似性。局部模式的结构为像素级的预测提供了有力的线索,匹配的模式结构可以产生相似的高概率预测值。更重要的是,如图1所示,这种观察可以扩展到跨不同任务的场景中,其中在相同的空间位置处,大量的面片具有极其相似的模式结构。例如,来自不同任务的相同位置的面片(红方块)在深度、分段和曲面法线上具有相似的模式结构。描述相同的对象,并赋予有关对象形状/边界的类似信息。因此,对于隐藏在图像中的局部模式结构,以及任务间的局部模式结构,应该进行挖掘,并用于像素级的多任务学习。

    基于对任务内和任务间模式结构重现性的观察,提出了一个模式结构扩散(PSD)框架,在任务层空间中挖掘和传播任务特定和任务间的模式结构,以实现跨深度估计的多任务联合学习,分割和曲面法向预测。为了刻画局部模式结构,将其构造为小尺度图形,其拓扑结构表示像素级的结构布局,而每个顶点固定在一个像素位置。这意味着图w.r.t a局部区域编码其中像素级模式的相关性。为了在任务域中传输模式结构,构造了两种模式结构扩散过程,称为任务内和任务间PSD。对于前者,为了克服模式结构局部性的限制,提出了高阶递归扩散,通过对邻接矩阵的计算来乘性地增加传播范围。这种递归模式结构扩散可以减少计算负担和内存需求,而不是直接的更大范围或全局模式相关。在任务间PSD过程中,首先得到对应于同一空间位置的成对模式结构的相似性,然后根据学习到的相似性将对应的结构相互转化为任务本身。由于远程扩散是在任务内进行的,实际上,任务间PSD可以隐式地借用任务本身之外的对应任务的大范围模式结构。最后,将任务内模式和任务间模式结构在任务级模式间进行联合扩散,并封装成端到端PSD网络,提高了多任务学习的性能。在两个公共数据集NYUD-v2[35]、SUNRGB-D[40]上进行了广泛的联合深度、分割和表面法向估计实验。实验表明,本文提出的PSD方法比传统的PSD方法更为有效,达到了目前的水平或具有竞争力的结果。

    综上所述,贡献主要体现在三个方面:一)提出了一个新的模式结构扩散框架,试图挖掘和传播不同任务域中的局部模式结构;二)提出了两种模式结构扩散,即任务内和任务间的模式结构扩散,其中前者引入递归机制学习长距离传播,而后者导出任务间关联以传递跨任务结构;iii)验证了提出的PSD方法的有效性,并在深度上达到了最先进或最具竞争力的性能,两个公共多任务学习数据集的分割和表面正态估计。

    二.相关研究

    语义分割             

    随着深度学习在高级视觉任务中的巨大成功,许多语义分割方法[31、33、4、9、37]都从CNNs中受益。Long等人[24]提出了一种用于语义分割的全卷积神经网络(FCN),以端到端的方式进行像素级分类。后来,许多方法[7,20,31]都是基于FCN的。随着大规模RGB-D数据集的发布,一些RGBD方法[36、47、13、14]如雨后春笋般涌现。此外,一些方法[44,15]使用基于图的表示来解决将图像分割成区域的问题。与这些方法不同,只使用RGB图像作为输入源,基于深度预测进行语义分割预测,而不是基于深度-真值。此外,还从其任务中获得支持,以改进分割预测。

    深度估计             

    单目深度估计的研究由来已久,以往的研究多采用马尔可夫随机场(MRF)[3,2]。近年来,美国有线电视新闻网(CNN)的一些建筑作品(45、19、34、50、38、27、18、52、57、56)取得了最新的成果。Eigen等人[11] 首先利用CNN提出了一种多级网络来解决单目深度估计问题。罗伊等人[39]利用回归森林,在每个树节点构建浅层结构来预测深度。与这些只进行深度预测的方法不同,建议利用其任务的提示来提高深度估计。

    表面法向估计

    由于深部神经网络具有很强的特征表示能力,因此[30,16,17,26,48]的表面法向估计方法大多是基于深部神经网络的。Eigen和Fergus[14]采用单一的粗到细分层网络进行深度/法向预测。Wang等人。[46]是第一个通过单一的RGB图像利用平面信息对密集几何估计进行正则化的方法。最近,齐等人。[38]建议使用三维几何信息预测表面法向和深度。在工作中,深度和分割信息增强了对曲面法向的预测。

    多任务学习             

    许多多任务学习方法[1,23,43,22,53,41,54]取得了巨大的成功。一些研究者[22,53]提出了多任务学习的特征传递机制。最近,张等人。[55]建议学习非本地任务特定模式定义,并获得具有固定交互参数的跨任务定义。方法与这些方法在以下几个方面不同:i)跨任务传输模式结构,而不是简单的加权特征;ii)挖掘局部斑块模式结构(即图形),并将其从局部到全局进行多重扩散,与全局定义相比,具有高效计算的附带优势[55],iii)具有可用于不同任务的图形拓扑的模型。

    三.模式结构扩散

    在这一部分中,首先概述了整个网络结构,然后分别介绍了局部模式结构、任务内模式结构扩散和任务间模式结构扩散的定义,最后提出了由三个不同像素级预测任务组成的目标函数。             

    3.1.网络架构

    模式结构扩散被封装到端到端的深网络中,如图2所示。整个网络可分为一个共享编码器和三个任务专用解码器,其中模式结构在任务内部也跨任务相互传播。给定一个RGB图像x,编码器通过卷积神经网络生成多尺度层次特征映射,例如ResNet[21]。从编码器的最后一个卷积层将响应图输入到每个任务分支,以解码像素级的任务相关信息。为了产生重新定义的高分辨率预测,将这些卷积特征解码为更高分辨率的特征映射,然后在编码器处与相同比例的特征连接,以馈入剩余块以产生特定于任务的特征。接下来,对三个任务特定的特征映射执行模式结构扩散。具体地说,任务内PSD(第3.3节)首先对解码后的特征执行,以在每个任务内传输长距离上下文信息,然后任务间PSD(第3.4节)用于两个不同的任务,以相互吸收对应结构。为了提高PSD的效率,在像素级局部模式区域而不是第3.2节中介绍的大尺度或全局区域构建小图形。此外,还推导出了一个递归的过程,即在传声器上传播到远距离位置。对于任务间PSD,在同一位置将成对的笔迹关联起来,并将结构信息有分量地传递到目标任务中。借助于任务内和任务间的联合PSD,模式结构可以在三个任务内/跨任务的远程上下文中广泛传播。

    反复地,可以继续向上缩放特征映射,并执行上述解码过程,以产生最终像素级预测所需的更高特征尺度。这种粗到精的过程在多损失函数下被监督,然后在每个尺度上有卷积预测层,其中的细节在第节中给出。

    3.2. 局部模式结构定义

    表示解码后的深度、分割、表面法向任务的多通道特征图。这里H,W,C分别表示高度,宽度和通道号。用像素级的相关性来刻画每一个局部模式,称之为模式结构。为了方便说明模式结构的构造,在下面的描述中省略上标T。

    因此,在实际应用中可以利用稀疏矩阵的计算来加快计算速度。局部结构不仅有利于高效率计算和低内存需求,而且在高阶计算后可以扩展到全局。

    Intra-Task PSD

    任务内扩散的目的是通过在单个任务中扩散局部模式来获取长距离语义信息,从而增强任务特定模式。             

    任务内扩散过程如图3所示。为了传播长距离模式信息,可以递归地迭代聚合过程,把局部模式传播到更远程模式。

    Inter-Task PSD

    对于相同的输入,不同的任务像素级预测在相应的位置具有相似的局部模式结构,这意味着一些潜在的线索可以关联不同的任务。为此,尝试将局部模式结构从一个任务转移到另一个任务,以实现跨任务模式传播。在图4中,展示了任务间模式结构扩散的主要过程。下面以分割为目标任务,将另外两个任务的信息传播到分割任务中。因此,在实际应用中可以利用稀疏矩阵的计算来加快计算速度。局部结构不仅有利于高效率计算和低内存需求,而且在高阶计算后可以扩展到全局。

    损失函数             

    对于不同的任务,采用任务特定的损失函数。根据最新的深度估计算法[27],使用berHu损耗进行深度监控。对于语义分割和曲面法向,分别采用交叉熵损失和L1损失。

    三.测试实验

    4.1. 数据集NYUD-v2             

    NYUD-v2数据集[35]是一个流行的室内场景RGB图像数据集,由微软Kinect捕获。从40个类别中只有1449个选定的帧被标记为要分割。按照标准设置[14],使用795幅图像来训练模型,使用654幅图像来测试最终性能。此外,遵循[16,38]中的方法,随机抽取12k幅图像,生成地表法向地面真值。             

    因此,可以利用更多的数据来训练关节深度和表面法向模型。             

    SUNRGB-D             

    SUNRGB-D数据集[40]是一个非常大且具有挑战性的数据集,包含10355个室内场景的RGB-D图像。这些图像分为37类,包括墙壁、桌子、地板等。所有这些图像都有分割和深度标签,但没有表面法向标签。因此,利用5285幅图像训练联合预测分割和深度模型,并根据官方文献对5050幅图像进行测试。

    4.2.实施细节培训             

    Pythorch上实现了提出的模型,具有双NVIDIA GeForce RTX2080Ti(每个12GB的GPU内存)。基于ResNet-50[21]构建框架,ResNet-50[21]是在ImageNet分类任务[12]上预先训练的。对于预训练层和其层的参数,初始学习率分别为1e-4/0.01,并且在微调过程中衰减到1e-5/0.01。使用0.9的动量和1e-4的重量衰减。该网络以端到端的方式对RGB图像进行深度、分割和曲面法向训练。为了进一步提高计算速度和降低存储成本,只关注中心节点与局部图中其节点的连接,使得邻接矩阵更加稀疏,并聚集邻接矩阵的所有通道,而不是进行通道计算,即。,APi∈Rl×l,将640×480像素的原始帧中心裁剪为416×416。为了增加数据的多样性,采用了与[32]相同的数据增长策略:缩放、偏移、裁剪和旋转。对于SUN-RGBD数据集,为50个阶段训练模型,并为30个阶段优化模型。对于NYUD-v2数据集,联合深度分割模型针对50个阶段进行训练,并针对另外25个包含12k个图像的阶段进行调整。对于三任务联合模型,分别取200个阶段和100个阶段进行优化。
    Metrics             

    对于深度估计的评估,遵循了前人的工作[14,27],使用的度量包括:均方根误差(RMSE)、平均相对误差(REL)、对数空间均方根误差(RMSE-log)和阈值δ的精度,其中δ∈{1.25,1.252,1.253}。对于语义分割,采用了与[10,31]相同的度量:像素精度(PixAcc)、平均精度(mAcc)和联合上的平均交集(mIoU)。对于曲面法向,使用以下度量:角度误差的平均值(mean)、角度误差的中间值(Median)、法向均方根误差(Nor RMSE)和像素精度作为角度误差低于阈值η的像素的百分比,其中η∈{11.25°22.50°30°30}。

    4.3.与本节的研究现状相比,将提出的方法分别与深度估计、语义分割和表面法线的各种最新方法进行了比较。在每个实验中,设置节点数=9(即区域大小=3×3),迭代步骤为9。以下实验均采用ResNet-50作为骨干。             

    语义分割             
    在广泛使用的NYUD-v2和SUNRGB-D数据集上进行了语义分割的比较。NYUD-v2数据集的优势或竞争性比较结果如表1所示。注意,这里的大多数方法都是RGB-D方法,直接以深度图作为输入源。相反,为三个任务训练的模型仅以795个RGB图像作为输入,获得最佳PixAcc(优于TRL[53]0.8%)和mIoU(优于D-CNN[47]2.6%),但mAcc比D-CNN[47]稍差。这可能是由于深度预测不完善。虽然PSD可以得到令人印象深刻的深度估计结果,但其预测精度仍不如地面真值,这对分割预测造成了负面影响。对于SUNRGB-D数据集,训练了深度和分割模型。如表2所示,可以观察到,方法在mAcc上略弱于RDF-ResNet152[36],但在PixAcc和mIoU上优于RDF-ResNet152[36]。这也可能是由于上述原因。同时,RDF-ResNet152使用比ResNet-50更强的网络骨干。定量结果如图5所示。所有这些结果都表明PSD可以通过其任务的信息来提高分割效果。

    深度估计              

    主要将提出的PSD与NYUDv2数据集深度估计的最新进展进行比较。如表3所示,为三个任务(PSD Td+Ts+Tn)联合训练的模型,虽然仅使用795幅图像进行训练,但能够提供与以往最先进方法相当的结果。

    深度估计             

    主要将提出的PSD与NYUDv2数据集深度估计的最新进展进行比较。如表3所示,为三个任务(PSD Td+Ts+Tn)联合训练的模型,虽然仅使用795幅图像进行训练,但能够提供与以往最先进方法相当的结果。             

    实际上,AdaD-S[34]和DORN[18]使用大规模数据(120k/100k图像)进行训练,这对模型非常有利。定量结果如图6所示,预测更加精确,这表明提出的PSD的性能优越。

    表面法向             

    本文主要对NYUD-v2数据集上的表面法向预测方法进行了评价。结果见表4。除了η3=30°外,PSD在大多数指标上始终优于以前的方法。结果表明,PSD可以利用任务特性和任务间的相关性来提高当前任务的性能。定量结果如图7所示,从中可以发现,PSD预测更好,包含更多的细节。

     

     如表5所示,联合任务模型的性能比单一任务模型的性能提高了7.0%,并且每个任务在联合学习后都得到了提升。

    如表6所示,前五行显示了在16个输入标度下进行的实验结果。基线表示在没有任何交互性的情况下,在三个任务上联合训练的模型。还比较了相同背景下的两种特征融合方法,即朴素融合和十字绣[22]。前者直接连接跨任务特征。后者将十字单位添加到基线。可以看到,这两个性能都比差。其背后的原因应该是,这两种方法只是结合了特征,而不是挖掘/利用模式结构。接下来,将任务内或任务间PSD添加到基线。性能的提高表明了每个模块的优点。此外,还研究了不同尺度的影响。结果报告在表6的最后四行。更大尺度的结果是更好的性能,因为在更大尺度上的内模式可以被解码以更好地估计像素级的细微信息。此外,在图8中展示了一些定性的视觉结果。可以发现任务内和任务间PSD都能很好地促进像素级语义理解。

    笔迹尺寸分析             

    在这里,进行了实验,以研究小笔画大小(即节点数)的影响。从图9中可以看到,随着小笔尺寸的增加,性能变得更好,然后在25的尺寸达到最佳。原因应该是两个方面的:一)随着图形尺寸的增加,更多的模式结构将被扩散,这使得相关性变得更加复杂,对特征响应更加敏感;二)在某种程度上,一些细节可能会随着扩散接收场的变大而变得模糊。此外,25的大小比9的大小带来了有限的改进,同时消耗了更大的内存和计算量,这可以看作是一种折衷。             

    扩散迭代次数分析             

    在图9中,展示了不同迭代次数的结果。在这里,将任务内和任务间PSD设置为输入的116级,图形大小为9。可以观察到,当迭代次数为9时,性能首先增加,并趋于饱和。结果表明,随着迭代次数的增加,该模型能够捕捉到较长距离的相关性。然而,传输太长距离的模式在一定程度上会给当前的区域模式带来负面影响。这可能是因为,在像素级预测任务中,每个像素高度依赖其邻域而不是太远的像素,除非有相似的模式结构。

  • 相关阅读:
    appium+python自动化项目实战(一):引入nose和allure框架
    jmeter+WebDriver:启动浏览器进行web自动化
    jmeter强大的扩展插件!!
    jmeter+Fiddler:通过Fiddler抓包生成jmeter脚本
    appium+python自动化测试真机测试时报错“info: [debug] Error: Could not extract PIDs from ps output. PIDS: [], Procs: ["bad pid 'uiautomator'"]”
    Appium+python移动端自动化测试-python库及pycharm安装(二)
    Appium+python移动端自动化测试-环境搭建(一)
    安全测试之bWAPP环境搭建
    Battery Historian之App耗电量测试
    (15)Docker之用Nginx实现SpringBoot应用的负载均衡简单记录
  • 原文地址:https://www.cnblogs.com/wujianming-110117/p/13123954.html
Copyright © 2011-2022 走看看