【ECCV2022】如何解决3D检测中长尾问题?

作者|汽车人 编辑|3D视觉开发者社区

题目:Improving the Intra-class Long-tail in 3D Detection via Rare Example Mining

作者:waymo

摘要

深度学习体系结构的不断改进使得3D目标检测器的整体性能稳步提升,在某些任务和数据集中,其整体性能主要由常见样本驱动,达到了与人类相当的水平。然而,即使是性能最好的模型,在遇到训练数据中不经常出现的罕见样本时,比如几何形状不规则的车辆,也会犯最幼稚的错误。长尾文献中的大多数研究集中在类别不平衡的分类问题上,已知每个类别的标签数目不平衡,但这些研究并不直接适用于类内变化较大的问题(如3D目标检测)的类内长尾样本,这些问题中,具有相同类别标签的实例可能具有截然不同的属性(如形状和大小)。其他文章提出,以不确定性、难度或多样性为标准,采用主动学习来缓解这一问题。在本项研究中,作者确定了一个新的概念维度-稀疏-挖掘新的数据,以提高模型在长尾问题上的表现。作者表明,稀有性,而不是困难性,是以数据为中心的3D 检测器改进的关键,因为稀有性是缺乏数据支持的结果,而困难性与问题的基本模糊性有关。提出了一种基于流模型的特征空间密度估计的稀有目标识别方法,并提出了一种基于代价感知的稀有目标tracks挖掘方法,提高了模型的整体性能,更重要的是显著提高了稀有目标的性能(提高了30.97%)。

介绍

长尾学习是应用机器学习中一个具有挑战性的重要课题,特别是在自动驾驶或医疗诊断等安全关键应用方面。然而,尽管文献中已经大量研究了不平衡分类问题,但在定义、识别和改进类内罕见实例方面的工具却很有限,例如不规则形状的车辆或穿着万圣节服装的行人,因为它们来自一个多样化的开放集合,除了普通目标之外的任何东西。灵感来自列夫·托尔斯泰的著名作品,作者观察到:“常见的目标都是一样的;每一个罕见的目标都有其独特的方式”。

作者指的是类内长尾这种罕见实例的领域,在这种情况下,没有预先指定的基于类频率的稀有度测量。由于类内长尾目标的安全相关性,它在3D检测中具有特殊的重要性。虽然现代3D检测器的整体性能可能相当高,但作者注意到,即使是完全监督的模型,在罕见的子集数据,如大型车辆(如下图)表现明显更差。

【ECCV2022】如何解决3D检测中长尾问题?_第1张图片

这个问题因为半监督学习而更加严重,这是一种在更大的数据集上快速扩展模型的流行且具有成本效益的方法,平均性能表明,是有少量有标注数据的半监督方法已经和全监督方法不相上下了。

这里有一些挑战使得有针对性的改进类内长尾的3D检测变得困难。首先,由于box回归是目标检测的一个重要方面,传统的利用类频率的长尾学习方法,或者利用依赖于分类输出分布的熵或边际不确定性的主动学习方法都不适用。其次,由于给定一个运行段的标注成本与标注的实例tracks的数量成正比,而不是帧,作者需要一个更细粒度的挖掘方法,它可以优雅地处理场景中目标丢失的标签。最后但并非最不重要的是,不同于不平衡分类任务的长尾问题,它是具有挑战性的定义哪些样本属于类内长尾,这导致难以评估和挖掘额外的数据,以改善这些模型的长尾性能。针对这些挑战,作者提出了一种可推广但有效的方法来度量和定义稀有度为潜在特征空间中实例的密度。作者发现,正规化流模型对于特征密度估计非常有效,对于异常检测估计也非常稳健,这与之前的研究相反,正规化流模型直接用于高维图像输入,在异常检测上得到了负面结果[38]。作者提出了一种基于稀有准则的tracks级数据挖掘和主动学习的成本敏感公式,因为3D目标标注成本通常与每个运行段中唯一tracks的数量成正比。作者结合强大的offboard 3D自动标签器[40,58]来填充缺失的数据,并与困难、不确定性或基于启发式的主动学习基线相比,有更强的模型改进,特别是对于尾分布中的目标。

此外,作者研究稀有性作为一种新的数据挖掘标准,相对于传统的不确定性或基于错误的挖掘方法。虽然模型往往表现不佳,无论是罕见的或难例,作者注意到一个明确的区别,概念之间的罕见与难例。在这个讨论中,“稀有”映射到认知不确定性(可约误差),其中模型由于缺乏训练集中的数据支持而不确定,而“难例”映射到偶然不确定性(不可约误差),其中模型由于给定问题的基本模糊性和不确定性而不确定,例如,如果目标目标被严重遮挡。作者进一步说明,虽然传统的不确定性估计(例如合成方法)将揭示难例目标和稀有目标,但过滤出难例将导致稀有实例的显着更高浓度,这显着提高了主动学习性能,强调了稀有实例在主动学习中的重要性。

总之,这项工作的主要贡献是:

  • 作者确定稀有性作为数据挖掘和主动学习的新标准,为提高模型在有很大的类内变化场景的性能问题,如3D目标检测。
  • 作者提出了一个有效的方法来识别罕见的目标估计潜在的特征密度使用流模型,并证明了估计的对数概率,已知的罕见子类和模型性能之间的强相关性。
  • 作者提出了一个细粒度,cost-ware,跟踪级别的3D检测挖掘方法,使用功能强大的offboard 3D自动标注器在部分标注的框架中注释未标注的目标,相比传统的半监督基线,在类内长尾子类别中获得了强大的性能提升(30.97%)。

相关工作

长尾视觉识别: 长尾通常被定义为不同类别标签之间多项式分布的不平衡,无论是在图像分类[8,24,26,27,36,55,62,64] ,密集分割[20,23,52,53,56,59] ,或在前景/背景标签之间的目标检测问题[33,34,50,51,60]。解决类不平衡问题的现有方法包括重采样(过采样尾类或头类) ,重新加权(使用逆类频率,有效样本数量[8]) ,新型损失函数设计[1,34,50-52,63] ,头尾知识转移的元学习[7,27,35,55] ,蒸馏[32,57]和专家的混合[54]。然而,很少有针对类内长尾数据集的改进工作,这些数据集具有固有的较大类内变化,或者针对回归问题。Zhu 等[66]研究了子范畴的长尾问题,但假设给定了子范畴标签。Dong 等[12]研究了服装或面部数据集中细粒度属性标签之间的不平衡。作者的工作是第一批在3D目标检测中解决类内长尾问题的工作之一。

主动学习:在这项工作中,作者主要讨论pool-based的主动学习[45],其中作者假设现有的较小的完全标注数据pool以及较大的未标注数据pool,从中作者主动选择用于人类标注的样本。现有的主动学习方法主要分为基于不确定性的学习方法和基于多样性的学习方法。基于不确定性的方法根据集合方差[2]或分类输出分布(如熵,边际或置信度[6,14,21,22,25,41])等标准选择新的标注目标。与作者的方法更相似的是基于多样性的方法,旨在平衡训练数据的分布,同时从未标注的pool中挖掘[18,19,39,44]。Gudovskiy等[18]进一步针对不平衡的数据集。然而,这些方法是针对分类问题而开发的,并不直接适用于类内长尾检测任务。与作者的方法类似,Sinha 等[47]建议学习潜在空间中的数据分布,尽管他们在不直接估计每个数据样本密度的变化设置中使用了鉴别器。Segal 等[43]采用基于区域的选择方法,研究了自动驾驶汽车中的细粒度主动学习,重点关注联合感知和预测。与作者的方法类似,Elezi 等[13]使用自动标注来提高2D检测任务的主动学习性能。

流模型: 归一化流动模型是一类生成模型,可以近似概率分布,并有效和准确地估计高维数据的密度[4,10,11,17,28,30,42]。各种研究发表了不成功的尝试,即使用通过归一化流量估计的密度估计来检测分布外数据,通过直接学习从图像的高维像素空间映射到流模型的潜在空间[5,38,61],对分布外数据赋予更高的概率。然而,与作者的发现类似,Kirichenko 等[29]发现,通过对预训练模型(例如在 ImageNet 上预训练的EfficientNet)提取的特征进行流模型的训练,而不是直接学习输入像素空间,可以很容易地缓解这个问题。这使得模型能够更好地度量语义相关空间中的密度。

方法

作者提出了一种通用而有效的基于数据密度估计的稀有实例挖掘方法,作者称之为以数据为中心的稀有实例挖掘(REM)。为了进一步深入了解与困难相关的稀有性,作者提出了另一种概念上简单而有效的方法,通过简单地从整体不确定的样本中过滤出难例来挖掘稀有的样本。后面内容中,作者展示了结合这两种方法可以进一步提高长尾性能。最后但并非最不重要的是,作者提出了一个cost-aware,细粒度的tracks级主动学习方法,聚集每个tracks稀有度作为让人工标注的选择标准,并利用一个强大的offboard 3D 自动标注器未挖掘的、未标注的tracks,重新训练模型时,可以最大限度地发挥所有数据的效用。

稀有样本挖掘

**以数据为中心的稀有样本挖掘(D-REM)**以数据为中心的 REM 背后的主要直觉是,在学习特征embeddings空间中测量每个样本的密度,作为稀有性的指标。完整的以数据为中心的 REM 工作流程(见下图)包括以下步骤。

【ECCV2022】如何解决3D检测中长尾问题?_第2张图片

首先,作者在现有的全标注数据上预训练检测模型,这些数据无法充分表示长尾样本;第二,使用预训练好的任务模型对源数据和大量未标注的数据进行推理,并通过感兴趣区域(Region-of-interest,ROI)pooling提取每个实例的原始特征向量,然后进行主成分分析(PCA)降维和归一化。然后作者在特征向量上训练一个规范化流模型来估计数据挖掘的每个实例的稀疏性(负对数概率)。

目标特征提取: 如前所述,作者提出的估计罕见样本的方法与文献中未能成功使用标准化流来进行分布外检测的早期工作相比,一个主要区别是作者提出在预训练模型的潜在特征空间中估计每个实例的概率密度,以利用目标之间的语义相似性来区分罕见实例。正如 Kirichenko 等人[29]所观察到的,直接在高维原始输入特征上训练的规范化流倾向于更多地关注局部像素相关性而不是语义,因为它不利用高级embeddings。通过将特征映射与预测框裁剪,作者通过感兴趣区域(ROI) max-pool [16]从最终的 Birds-Eye-View (BEV)3D目标检测器的特征映射中提取每个目标的特征embeddings。作者主要将其应用于实现SOTA方法 MVF [40,65]3D 检测器,该过程也通常适用于产生中间特征图的大多数检测器[31,37,49]。为了提高计算效率,作者进一步执行主成分分析(PCA) 来降维,然后对通过 ROI pooling获得的原始特征向量集合进行归一化。

【ECCV2022】如何解决3D检测中长尾问题?_第3张图片
综上所述,作者的流模型的训练数据集包括经过主成分分析(PCA)变换后的归一化特征向量,该特征向量通过 ROI max-pool 获得最终的3D检测器特征映射,并使用预测的边界框。

D x = { X norm  [ i ] , ∀ i ∈ [ 0 , n ) } \mathcal{D}_{x}=\left\{X_{\text {norm }}[i], \forall i \in[0, n)\right\} Dx={Xnorm [i],i[0,n)}

利用归一化流进行稀疏估计: 作者使用连续归一化流模型直接估计每个样本的对数概率表示为一个特征向量 x。

典型的归一化流模型[28]由两个主要部分组成: 一个基本分布 p (z)和一个学习的可逆函数 fθ (x) ,也称为bijector,其中 θ 是bijector的可学习参数,fθ (x)是正演方法,f-1θ (x)是反演方法。基本分布一般被选为易于解析的分布,其概率密度函数(PDF)可以很容易计算,例如球形多元高斯分布,其中 p (z) = N (z; 0,I)。一个可学习的双目标函数可以有多种形式,流行的选择包括屏蔽缩放和移位函数,例如 RealnVP [11,28]或利用学习常微分方程(ODE)动力学的连续bijector[4,17]。文献[28]大量研究了将归一化流作为生成模型的使用,其中可以通过将随机采样的潜在向量通过前向bijector来生成新的分布内样本:

x = f θ ( z ) ,  where  z ∼ p ( z ) \boldsymbol{x}=f_{\boldsymbol{\theta}}(\boldsymbol{z}), \quad \text { where } \boldsymbol{z} \sim p(z) x=fθ(z), where zp(z)

然而,在这项工作中,作者更感兴趣的是使用归一化流来估计每个数据样本的确切概率。对应于数据示例的潜变量可以通过 z = fθ (x)推断出来。在变量变化公式下,数据样本的对数概率可以估计为:

log ⁡ p θ ( x ) = log ⁡ p ( f θ ( x ) ) + log ⁡ ∣ det ⁡ ( d f θ ( x ) / d x ) ∣ = log ⁡ p ( z ) + log ⁡ ∣ det ⁡ ( d z / d x ) ∣ \begin{aligned} \log p_{\theta}(\boldsymbol{x}) &=\log p\left(f_{\boldsymbol{\theta}}(\boldsymbol{x})\right)+\log \left|\operatorname{det}\left(d f_{\boldsymbol{\theta}}(\boldsymbol{x}) / d \boldsymbol{x}\right)\right| \\ &=\log p(\boldsymbol{z})+\log |\operatorname{det}(d \boldsymbol{z} / d \boldsymbol{x})| \end{aligned} logpθ(x)=logp(fθ(x))+logdet(dfθ(x)/dx)=logp(z)+logdet(dz/dx)

第一项 log p (z)可以从基本分布的 PDF 中有效地计算出来,而对于 Jacobian: log | det (dfθ (x)/dx) | 的对数行列式的计算则取决于bijector类型。

训练过程可以被描述为从训练数据 Dx 中预期对数概率的最大化(或者等效地最小化参数的预期负对数似然),并且可以通过批量随机梯度下降来学习:

arg ⁡ min ⁡ θ E x ∼ D x [ − log ⁡ p θ ( x ) ] \underset{\theta}{\arg \min } \mathbb{E}_{x \sim \mathcal{D}_{\boldsymbol{x}}}\left[-\log p_{\boldsymbol{\theta}}(\boldsymbol{x})\right] θargminExDx[logpθ(x)]

在作者的实验中,作者选择基分布 p (z)作为球形多元 Gaussian N (z;0,I),并且作者使用 FFJORD [17]bijector。对于第 i 个目标的最后一个罕见的样本评分函数,ri,有:

r i = − log ⁡ p θ ( x i ) r_{i}=-\log p_{\boldsymbol{\theta}}\left(\boldsymbol{x}_{\boldsymbol{i}}\right) ri=logpθ(xi)

模型为中心的罕见样本挖掘(M-REM) 作者提出了一个替代 REM的模型为中心的公式,概念上简单而有效,但可以区分稀有和难例。与以数据为中心的REM模型不同,以模型为中心的REM模型利用检测器集合之间的散度作为总不确定度的度量。

与直接使用集合散度作为主动学习的挖掘标准的方法不同[2],作者的关键见解是,虽然集合散度是一个很好的测量实例的总体不确定性的方法,但它可能是由于问题从根本上来说是困难和模糊的(即hard) ,或者是由于问题是罕见的和缺乏模型的训练支持(即罕见的)。对于3D目标检测来说,目标很难被检测到的一个主要原因是遮挡和来自目标的激光雷达点数很少。从概念上讲,添加更多的难例,例如具有很少可见激光雷达点的远距离和严重遮挡的目标,将不会有帮助,因为这些情况从根本上来说是模棱两可的,不能仅仅通过增加数据支持来改进。

因此,获得罕见样本的一个简单方法是从整个不确定样本集中过滤出难以处理的样本。在实践中,两个过滤器的简单组合: (i)每个检测实例的 LiDAR 点数较少,(ii)检测实例与 LiDAR 源之间的距离较大,证明了通过数据挖掘和主动学习改善模型性能的惊人有效性。

作者实现以模型为中心的 REM 方法如下:

设 M = {M1,M2,…,MN }是一组 N 个独立训练的检测器,具有相同的结构和训练配置,但模型初始化不同。sji表示第j个检测器对第 i 个目标的检测得分,如果有一个漏检,则sji 被设置为0。模型集合 M 对第 i 个目标的检测方差定义为:

v i = 1 N ∑ j = 1 N ( s i j − 1 N ∑ k = 1 N s i k ) 2 v_{i}=\frac{1}{N} \sum_{j=1}^{N}\left(s_{i}^{j}-\frac{1}{N} \sum_{k=1}^{N} s_{i}^{k}\right)^{2} vi=N1j=1N(sijN1k=1Nsik)2

对于难例的过滤,将第 i 个目标内的 LiDAR 点数表示为 pi,将第 i 个目标与 LiDAR 源的距离表示为 di。一个简单的实例过滤函数可以定义为:

h i = 1  if  ( p i > p ~ ) & ( d i < d ~ )  else  0 h_{i}=1 \text { if }\left(p_{i}>\tilde{p}\right) \&\left(d_{i}<\tilde{d}\right) \text { else } 0 hi=1 if (pi>p~)&(di<d~) else 0

其中 p~、 d~是各自的点阈值和距离阈值。在作者的实验中,有 N = 5,p = 200,d = 50(米)。

最终的第i个目标罕见样本得分函数ri可以表示为:
r i = h i ∗ v i r_{i}=h_{i} * v_{i} ri=hivi

Track级的REM的主动学习

为了将作者的 REM 方法应用于主动学习,作为一种原则性的方法来收集来自大规模未标注样本中的稀有实例,作者提出了一种新的track级别的挖掘和有针对性的标注策略,结合一个高性能的offboard 3D 自动标注器来填补缺失的标签。作者选择在tracks水平上挖掘,因为标注工具被优化为标注整个目标tracks,这比每帧标注便宜。

首先,从 K 个tracks的标注预算开始,作者使用上面的一个罕见示例评分函数从具有最高稀有度评分的检测目标开始,作者依次将每个示例发送给人类标注员,以标注与该目标相对应的整个tracks T,并将该tracks添加到挖掘的和人类标注的tracks集合 Sh 中。然后删除所有与 T (> 0 IoU)相交的模型检测结果。这个过程迭代地执行,直到 Sh 中的tracks数达到 K 的预算。所有与 Sh 相交的自动标注的tracks Sa 被删除,并且两组tracks被合并成一个混合的、完全标注的数据集 S = Sa ∪ Sh。

具体见面的算法流程:
【ECCV2022】如何解决3D检测中长尾问题?_第4张图片

实验

作者使用 Waymo 开放数据集[48]作为作者调查的主要数据集,因为与其他可用的相机 + LiDAR 数据集[3,15]相比,其基于地理覆盖的无与伦比的多样性以及其庞大的行业级规模。Waymo 开放数据集由1150个场景组成,跨越20秒,记录了多个城市的一系列天气状况。在下面的实验中,作者试图回答三个问题:(1)模型性能是否与作者对类内长尾的稀有度测量相关,(2)作者提出的稀有样本挖掘方法能否成功——完全找到和检索更多稀有样本,以及(3)在主动学习环境中向作者现有的训练数据中添加稀有数据是否提高了整体模型性能,特别是长尾的性能。

罕见样本挖掘分析

相关性: 稀有性和性能: 作者得到了两个主要(1)所有模型的性能都与作者提出的稀有度测量密切相关,表明作者基于流概率的稀有度估计是非常有效的。(2)与原始的半监督基线相比,作者提出的稀有样本挖掘方法利用少量的人类标注数据,在稀有样本上获得了显著的性能提高。

可视化罕见的样本: 作者可视化来自 Waymo 开放数据集的最罕见的真值样本,由每个实例的估计对数概率确定。通过计算每条track中不同帧中目标的平均对数概率,对每条航迹的稀有度得分进行聚合。

然后根据平均对数概率下降对目标进行排序。有关数据集中最稀有目标的可视化,请参见下图。

【ECCV2022】如何解决3D检测中长尾问题?_第5张图片

最罕见的真值目标包括车辆部件周围的盒子(突出的管道,卡车装载坡道)和超大或不规则形状的车辆(卡车,平板拖车) ,这符合作者对罕见车辆的直觉。此外,作者发现少数错误标注的真值实例中最罕见的样本。这说明罕见的样本检测是一个分布外检测问题。在某种意义上,类内的长尾样本可以定义为类内的、分布外的样本。

流动模型的分布敏感性:鉴于罕见的样本挖掘本质上是一个分布外检测问题的观察,作者寻求对模型的分布外实例的敏感性进行更多的定量分析。详细分析见下图。

【ECCV2022】如何解决3D检测中长尾问题?_第6张图片

用于主动学习的罕见样本挖掘

为了证明 REM 方法在有针对性地改善模型在类内长尾的性能方面的适用性,作者利用track水平的 REM 进行主动学习。

挖掘轨迹的组成:我们首先分析挖掘轨迹的构成,在所有情况下,使用各种挖掘方法获得1268条轨迹,具体如下表:
【ECCV2022】如何解决3D检测中长尾问题?_第7张图片
结果如下表:

【ECCV2022】如何解决3D检测中长尾问题?_第8张图片
作者的方法显著提高了整体模型性能,特别是在稀有子集上。作者将人类标注比率表示为(% s,% t) ,以表示正在用全标注的% s 以及被挖掘和标注的剩余track的% t 进行训练的模型。

主动学习实验表明:(1)以数据为中心的方法和以模型为中心的方法都有助于提高罕见子集的性能,两者的结合可以进一步提高长尾性能。(2)虽然基于启发式的挖掘方法(“预测大小”)可以实现大型车辆的有针对性的改进,但它可能无法捕获其他罕见程度,导致整体性能下降。

讨论和展望

在这项工作中,作者展示了基于学习的目标检测器的局限性,相对于罕见的实例,在类内变化很大的问题,如3D检测。提出了一种基于数据中心和模型中心的稀有实例挖掘的主动学习方法,该方法能够有效地发现未标注数据中的稀有目标。作者的主动学习方法,结合SOTA半监督方法,可以实现完全与全监督模型接近的性能,不管是罕见还是常见目标上,而这只利用少至16% 的人工标注标签。这项研究的一个局限性是现有数据集的规模为主动学习,其中数据挖掘超出可用数据集的规模是有限的。更大数据集上的结果将提供更多信息。未来的工作包括将REM 方法扩展到3D检测以外,包括自动驾驶的其他主题,如轨迹预测和规划。

版权声明:本文为奥比中光3D视觉开发者社区特约作者授权原创发布,未经授权不得转载,本文仅做学术分享,版权归原作者所有,若涉及侵权内容请联系删文。

3D视觉开发者社区是由奥比中光给所有开发者打造的分享与交流平台,旨在将3D视觉技术开放给开发者。平台为开发者提供3D视觉领域免费课程、奥比中光独家资源与专业技术支持。

快来[3D视觉开发者社区]和开发者们一起讨论分享吧~

你可能感兴趣的:(机器学习,自动驾驶,深度学习,目标检测)