标题:面向3D开放集学习——点云上的语义新颖性检测的基准测试和理解
分享日期:2023年5月24日
(资料图片)
分享作者:海涛-多模态-slam
内容来自:「3D视觉从入门到精通」知识星球, 一个沉淀了5年多的3D视觉干货社区。
Title:3DOS: Towards 3D Open Set Learning–Benchmarking and Understanding Semantic Novelty Detection on Point Clouds
作者:Antonio Alliegro∗ , Francesco Cappio Borlino∗ , Tatiana Tommasi单位:Italian Institute of Technology, Italy
来源:NeurIPS 2022
链接:https://arxiv.org/abs/2301.08898
代码:https://github.com/antoalli/3D_OS
【摘要】近年来,3D学习领域在分类、检测和分割问题上取得了重大进展。现有的绝大多数研究都集中在规范闭集条件上,忽视了现实世界固有的开放性。这限制了涉及安全关键应用的机器人和自主系统的能力,这些应用需要管理新的和未知的信号。在这种情况下,利用3D数据可能是一种有价值的资产,因为它提供了关于感知对象和场景的几何形状的丰富信息。
在这篇论文中,我们首次对3D开放集学习进行了广泛的研究。· 我们介绍了3DOS: 一种用于语义新新性检测的新型测试平台,它考虑了在语义(类别)转换方面越来越困难的几种设置,并涵盖了域内(合成到合成,真实到真实)和跨域(合成到真实)场景。· 此外,我们研究了相关的2D开放集文献,以了解其最近的改进是否以及如何对3D数据有效。· 我们广泛的基准在同一幅连贯的图片中定位了几种算法,揭示了它们的优势和局限性。我们的分析结果可以作为未来定制3D开放集方法的可靠立足点。
【Introduction】大多数现有的机器学习模型都依赖于训练和测试数据从相同分布中抽取的假设。虽然对于实验室实验来说是合理的,但当模型部署在开放世界时,这个假设往往不成立,因为在开放世界中,训练数据可能会出现各种分布变化。· 例如,新的对象类别可能导致语义转移,或者来自新领域的数据可能导致协变量转移。这种情况可以单独发生,也可以共同发生,与训练期间观察到的测试样本不同的测试样本通常被表示为分布外(OOD)数据。· 这些数据对于自动驾驶汽车来说可能会变得极其危险,因为在街上遇到异常物体时,自动驾驶汽车会发生大量事故。为了避免类似的风险,建立能够在拒绝未知类别的同时保持对已知类别封闭集的识别能力的鲁棒模型是至关重要的。
对于现有的深度模型来说,解决这一任务是具有挑战性的: 它们卓越的闭集性能隐藏了误校准和过度自信问题。· 换句话说,他们的输出分数不能被视为预测正确性的可靠度量。这个缺点已经在2D视觉中进行了大量的讨论,[41,7,57,45]作为其解决方案将使强大的深度模型能够用于许多现实世界的任务。· 在这种情况下,特别是对于许多安全关键应用(如自动驾驶汽车),3D传感是一项有价值的资产,可以提供2D图像无法捕获的有关被感测物体几何形状的详细信息。
然而,这一领域的3D文献仍处于起步阶段,只有少数作品刚刚开始通过关注特定的子集来触及问题的表面。通过这项工作,我们将社区的注意力吸引到3D开放集学习上,这需要开发设计用于处理3D点云的模型,这些模型可以从一组已知类别中识别测试样本,同时避免对未知类别的样本进行预测。
我们的贡献是:
我们提出了3D-OS,这是3D开放集学习的第一个基准,考虑了几种难度越来越高的设置。它包括三个主要轨道: 合成、真实到真实和合成到真实。· 第一个是为了研究现有Open Set方法在3D数据上的行为,另外两个是为了模拟现实世界的部署条件;
通过将2D和3D的OOD检测和开放集识别的现有文献放在一起构建连贯的图像;
我们分析了这些方法的性能,以发现哪种方法最适合3D开放集学习。我们强调了它们的优点和局限性,并表明通常一个简单的表示学习方法足以胜过复杂的最先进的方法。
【3DOS Benchmark】3D数据上的物体识别比2D样本更具挑战性,主要问题源于缺乏颜色、纹理和物体通常出现在图像中的一般背景(见图2)。· 当目标是评估某个实例是否属于已知或新的类别时,所有这些线索都提供了关键的证据,但没有它们,任务就变得非常困难。· 数据的缩放、分辨率和噪声也会显著影响最终的预测结果。· 我们致力于研究3D开放集学习任务中的所有这些方面:下面我们将问题形式化,介绍几个测试平台并进行广泛的实验分析。
性能指标。我们通过利用两个指标来评估检测测试数据中未知样本的能力: AUROC和FPR95。· 鉴于未知样本的检测是一个二元任务,这两个指标都基于真阳性(TP)、假阳性(FP)、真阴性(TN)和假阴性(FN)的概念。· AUROC(越高越好)是接收机工作特性曲线下的面积。· ROC曲线是显示TP率(TPR)和FP率(FPR)在改变正态阈值时相互绘制的图表。因此,AUROC是一个无阈值的度量,它可以被解释为已知测试样本比未知测试样本具有更大正态性得分的概率。· FPR95(越低越好)是TP率95%时的FP率,有时称为FPR@TPRx, x=95%。该指标基于正态性阈值的选择,因此95%的阳性样本被预测为阳性(TPR=TP/TP+FN)。然后利用该阈值计算假阳性率(FPR=FP/FP+TN)。
数据集。我们在三个众所周知的3D对象数据集(ShapeNetCore, ModelNet40和ScanObjectNN)之上构建3DOS基准。对于开放集方法,我们还通过计算其分类精度(ACC)来评估其正确分类已知数据的能力。在补充材料中报告了进一步的度量。
Benchmark Tracks3DOS包括三个主要的开放集轨道。· Synthetic Benchmark旨在评估存在语义转移的现有方法的性能,而更具挑战性的Synth to Real Benchmark涵盖了语义和领域转移,分别从合成数据(Modelnet40)和真实数据(ScanObjectNN)中提取训练和测试样本。· 最后,Real to Real Benchmark代表了两组中训练和测试数据以及噪声样本(来自ScanObjectNN)之间语义转移的中间情况。
合成基准。· 对于我们的合成测试平台,我们使用ShapeNetCore数据集,并将其分成3个不重叠(即语义不同)的类别集,每个类别18个。· 我们将其命名为SN1、SN2和SN3(每组的类别列表见图3)。· 通过简单地依次选择每个sn-set作为已知的类集,并将其余两个类别集视为未知的,我们获得了三种难度增加的场景。· 在已知类集的训练集上训练Track模型,在已知和未知类集的测试上对Track模型进行评估。
合成到真实基准。· 为了定义我们的合成到真实世界的跨域场景,我们使用来自ModelNet40的合成点云进行训练,同时我们在来自ScanObjectNN的真实世界点云上进行测试。· 我们选择采用ModelNet40(而不是ShapeNetCore),因为它与ScanObjectNN有更好的重叠,并且之前的作品已经在点云对象分类的背景下考虑了相同的跨域场景。· 我们定义了三个不同的类别集: SR1、SR2和SR3,如图4所示。前两组由ModelNet40和ScanObjectNN的匹配类组成。第三个集合(SR3)由ScanObjectNN类组成,没有与ModelNet40进行一对一的映射。· 总的来说,我们有两个场景,其中SR1或SR2被认为是已知的,另外两个被认为是未知的。对于这条赛道,模型在已知类集的ModelNet40样本上进行训练,并在已知和未知类的ScanObjectNN样本上进行评估。
Real to Real基准。· 对于最后一个案例,我们利用了从上面描述的ScanObjectNN创建的相同SR类别集。· 具体来说,其中每一个在测试集中被用作未知类,而另外两个被分为训练类和测试类,作为已知类。
【Experiments】我们进行实验分析的目的是回答一组研究问题,每个问题在下面分别针对Synthetic和Synthetic to Real基准进行单独的段落讨论。考虑到3D点云文献统计了大量的主干网而没有主干网,我们使用两个可靠的主干网 :DGCNN和pointnet++进行所有主要实验。
Implementation details· 除非另有说明,我们对合成点云(ShapeNet和ModelNet)使用1024点,对真实世界点云(ScanObject)使用2048点。· 在合成基准测试中,我们通过缩放和平移变换来增强训练数据,而在合成到真实的情况下,我们也通过绕上轴随机旋转来增强它。· 除了SubArcFace在合成集(SN1, SN2, SN3)上训练了500个epoch外,所有模型的batch size为64,训练了250个epoch。对于DGCNN实验,我们使用初始学习率为0.1的SGD优化器,动量和权重衰减分别设置为0.9和0.0001。使用PointNet++,我们使用Adam优化器并将初始学习率设置为0.001。每个实验用三种不同的种子重复,我们从最后一个时代模型和平均运行的结果。· 我们的代码是在PyTorch 1.9中实现的,实验运行在具有NVIDIA V100 gpu的HPC集群上。除SupCon和ARPL方法外,所有模型都在单个GPU上进行训练。为了便于再现,我们在补充材料中提供了分析方法超参数的完整列表和讨论。
OOD检测方法在3D语义新颖性检测中的表现如何?在这些实验中,我们分析了OOD检测和开集方法在合成基准上的性能。我们在表1中报告了结果,遵循与第3.3节相同的四组组织。
判别方法。· 我们将MSP作为主要基线,但也包括其变体MLS。我们可以看到后者是一个强大的基线,因为它通常与更复杂的最先进的方法(例如ODIN, Energy, GradNorm)相当或更好。· 总的来说,该组的所有方法在AUROC和FPR95方面都改善了MSP基线结果,只有GradNorm例外。这种方法的特点是它依赖于在测试时从网络层提取的梯度来计算正态性得分。· 我们假设,2D(模型最初是为此而设计的)和3D网络架构之间的巨大差异可能是观察到的不良性能的原因。ReAct在DGCNN和PointNet++主干网上的表现始终优于所有其他主干网。
基于密度和重建的方法。· VAE结果远远低于MSP基线,这是可以预料的,因为它是表中唯一的无监督方法。应该注意的是,它的编码器既不匹配DGCNN也不匹配PointNet++。它由图卷积层组成,而解码器被启发为FoldingNet。我们仍然在表1和表3中包含VAE结果,不管它的特殊性,但是我们用不同的颜色来报告它的数字。· 另一方面,NF对主干选择非常敏感;在DGCNN提取的语义丰富的嵌入上训练时表现良好,但在PointNet++的局部特征嵌入上训练时表现不佳。
与OOD生成数据的离群值暴露。· 与MSP基线相比,我们观察到,对于两个主干,OE调优在FPR95方面产生了轻微的改进,而AUROC没有显示出增益。
基于表示和距离的方法。· ARPL+CS方法是目前最先进的2D开放集方法,然而结果表明,它在3D数据上的工作效果并不好,而且它很容易被更简单的余弦原型所超越。有趣的是,建立在标准交叉熵分类器上的简单CE (l2)方法在两个主干上都获得了令人满意的结果,优于所有竞争方法。· 对于ARPL+CS的考虑同样适用于SupCon,该方法过去已成功用于2D OOD检测。我们认为这是由于合成数据非常干净,缺乏构建良好对比嵌入所需的可变性。通过SubArcFace可以获得更好的结果,它构建了类似的特征嵌入,但计算成本更低,更容易收敛。· 鉴于其最先进的性能,对于以下分析,我们将主要关注CE (l2),以及MSP和MLS作为基线。
改进闭集分类对三维语义新颖性检测的影响是什么?最近的一项研究关注了判别方法的封闭精度与其对图像的开放集识别性能之间的相关性。为了在3D数据上验证这一趋势,我们进行了两组实验。
1、第一个分析是通过利用标准正则化技术如标签平滑来完成的。· 表明,当使用DGCNN骨干网时,LS对两种骨干网都提供了较小的闭集精度提高,并且对AUROC和FPR95也有一定的提高。它克服了ReAct (AUROC:76.4, FPR95:74.6)的结果,但仍然比在该集合上性能最好的cos原型差。· 使用PointNet++的优势仅在用于MLS和MSP的FPR95上明显,但在用于CE的AUROC和FPR95上开放集性能均下降(l2)。第二次评估是通过改变网络骨干来完成的。2、除了已经考虑的DGCNN和PointNet++之外,我们还尝试了一系列不同的体系结构。· 具体来说,我们测试了CurveNet、GDANet、RSCNN、pointMLP和PCT。特别是后者利用Transformer块进行点云学习,最近在3D对象分类和分割方面取得了最先进的性能。· 图5(左)的结果表明,对于各种3D骨干网,开集性能与闭集性能并没有严格的联系。特别是,虽然RSCNN达到了最高的闭集精度结果之一,但它的MSP AUROC是最差的。
三维语义新颖性检测是否受点云密度的影响?· 我们研究了点云采样率的影响。我们用不同的点云大小进行实验:512、1024、2048和4096。对于每个实验,我们固定训练和评估的点数(例如512)。· 具有较高采样率的点云更加详细,细粒度结构以更高的计算复杂度为代价变得可见。我们在图6(左)中展示了采样对局部细节可见性影响的一些可视化效果,这对于已知与未知区分和闭集分类都很重要。· 在图6的右侧,我们报告了MSP和CE (l2)的闭集和开集性能的结果。随着采样点数量的增加,闭集精度会增加,而CE (l2)的开集性能没有相应的增加。
Synthetic to Real Benchmark对合成数据进行训练是基本的,特别是当给定任务只有少数真实样本可用时。· 这通常是3D点云学习的情况,ScanObjectNN是最大的公开可用的现实世界对象数据集之一,尽管样本少于3k。· 因此,我们分析了在合成数据上训练的模型在实际数据上测试时的表现。
当对真实数据进行测试时,OOD检测的性能趋势是如何变化的?· 表3提供了Synthetic to Real基准测试结果的概述。在表1中,我们注意到由于训练(合成)和测试(真实世界)之间的域转移而导致的性能普遍下降。· 有趣的是,pointnet++主干网似乎比DGCNN更能适应域转移。例如,使用PointNet++的MSP基准在AUROC方面比DGCNN基准高出8.9 pp,在FPR95方面高出7.4 pp。· 我们在图5(中)中对合成到真实基准中使用的主干的影响进行了更全面的分析。大多数在合成基准中表现良好的方法最终都不如简单的MSP基准健壮,因此无法再优于它。对于绝大多数的判别方法都是如此。· 对于VAE,它进行了类似于为合成对应物所做的讨论。NF在两个主干网上的表现一致,在DGCNN上应用时,AUROC比MSP明显提高了4.6 pp,而在pointnet++上只有轻微的提高。· 在OE+mixup的情况下,用于调整分类器模型的生成的离群值并不代表真实的测试域,因此不允许在MSP基线上进行改进。
基于距离的方法的结果高度依赖于所选择的特定主干。· 余弦原型在PN2上表现得特别好,但在DGCNN上表现得很糟糕,很可能是因为在合成上训练的DGCNN原型不能代表真实世界的测试分布。· 对于CE (l2)也可以进行类似的考虑,以确认PointNet++对域转移的鲁棒性。最后,SubArcFace展示了它的可靠性,因为它在主干和平均最佳的总体结果上都取得了很好的结果。· 对于MSP和SubArcFace,我们研究了几个主干网的影响,同时考虑了图5中间部分的封闭集性能。该图显示线性增长的趋势,两种方法结果也证实PointNet++在更复杂的网络中的优势。
Real to Real Benchmark为了完成我们的分析,我们在Real to Real基准上运行了最相关的方法,结果如表4所示。· 总的来说,所有方法的趋势都与从合成到实际情况中观察到的一致。余弦原型方法已经在PointNet++的合成到真实基准测试中证明了有效性,现在在DGCNN和PointNet++中排名第一。· 我们还强调了PointNet++比DGCNN保持了更好的性能,证实了它在处理有噪声和损坏的真实数据时的鲁棒性。· 对于MSP和余弦原型,我们研究了几个主干网的影响,同时考虑了图5右侧的封闭集性能。
【总结】提出了3DOS,这是3D开放集学习的第一个基准,它考虑了几种设置和三种不同类型分布移位的场景。· 分析表明,尖端的2D开放集方法不容易将其最先进的性能转移到3D数据中,简单的表示学习方法(如CE (l2), SubArcFace和余弦原型)通常优于它们。· 此外,3D开放集方法的性能取决于所选择的主干: PointNet++已被证明在处理真实世界的数据方面非常健壮,甚至跨域,优于最近和更复杂的网络。点密度可能是基线方法的一个问题,但对基于距离的策略(如CE)的影响最小(l2)。· 最后,3D数据上的Open Set在处理语义和领域转移的组合时变得极其困难。
图7描述了所研究的三种场景的概述,表明从合成到真实是最具挑战性的情况,其次是从真实到真实,最后是合成基准。· 这证实了合成数据和真实数据之间的领域转换比语义转换增加了额外的挑战。· 此外,值得注意的是,在合成基准(DGCNN SubArcFace > MLS, +3.1 AUROC)中,最佳开放集方法提供的改进在合成基准(DGCNN SubArcFace > MLS, +3.1 AUROC)中非常明显,但在合成到真实(PointNet++ Cosine Proto > MSP, + 2.6 AUROC)和真实到真实情况(PointNet++ Cosine Proto > MLP, + 0.6 AUROC)中却有所减少,这显然需要新的方法,并揭示了改进的空间。
我们希望这一基准将成为该领域未来研究的坚实基础,推动为3D数据量身定制的开放集方法的发展,并能够利用它们的特殊性。
关注知乎「3D视觉工坊」(https://www.zhihu.com/people/qiyong1993),及时获取每日3D视觉行业最前沿学术研究。
添加小助理微信:dddvisiona, 备注:学校/公司+三维点云+ 加入「三维点云」(https://mp.weixin.qq.com/s/cYCcK7E46RZDa2Z2rMpLtw)技术交流群