预训练技术在深度学习中起着关键作用,通过先在大数据集上进行预训练,然后针对特定任务进行微调,预训练为模型提供了一个坚实的基础,提高了泛化能力并加快了收敛速度。这种方法在自然语言处理和计算机视觉等领域取得了显著成功。
然而,传统的预训练方法需要大量数据集和大量计算资源,它们只能通过长时间的训练学习共享特征,难以捕捉更深层次、任务特定的特征。
在本文中,作者提出了一种以任务为导向的预训练方法,该方法首先使用Segment Anything (SAM)模型生成冗余分割建议。
然后,作者引入了一个特定类别增强微调(SCEF)策略,用于微调对比语言图像预训练(CLIP)模型,从由SAM生成的分割建议中选择与可行驶区域最相关的建议。
这种方法可以为预训练模型生成大量的粗粒度训练数据,这些数据进一步使用人工标注数据进行微调,从而提高模型性能。
在KITTI道路数据集上进行的全面实验表明,与没有预训练的模型相比,作者的任务导向预训练方法在各方面取得了性能提升(如图1所示)。
此外,作者的预训练方法不仅超过了传统的预训练方法,还实现了与最先进的自训练方法相比的最佳性能。
开源项目可在此处找到:https://sites.google.com/view/task-oriented-pre-training。
I Introduction
可驾驶区域检测是自动驾驶技术发展的重要 Pillar ,对于确保车辆安全和提高导航效率起着关键作用。准确的可驾驶区域检测对自动驾驶车辆的决策过程有着直接影响,影响路径规划、障碍避让以及实际驾驶场景中车辆的整体行为[1]。
近年来,许多方法得到了探索,范围从传统的图像处理技术到基于学习的提高精度和适应性的方法。这些方法推动了该领域内的技术进步,并从数据输入模式、模型架构和辅助任务的整合等方面不断改进可驾驶区域检测任务的性能。在本文中,作者将从一种新颖的预训练视角探讨如何进一步提高可驾驶区域检测模型的性能。
深度神经网络[9]已经彻底改变了计算机视觉领域,预训练技术无疑做出了重大贡献。预训练和微调框架中,模型首先在大型数据集(如ImageNet[12])上进行训练,该数据集可能与目标任务无关,然后进行针对目标任务的二次训练,这些目标任务通常数据量有限。
这种预训练和微调范式在许多计算机视觉任务上导致了高级改进,包括物体图像分类[13],目标检测[14]和语义分割[15]。类似于预训练,自监督表示学习旨在在大规模数据集上学习通用特征,然后在对目标任务进行微调。
两者的区别在于,自监督表示学习不需要任何手动标注的数据,相反,它依赖于设计 Agent 任务来完成训练。MoCo[16],SimCLR[17],MAE[18],DINO[19]是代表性的作品。
无论是预训练还是自训练技术,都需要大量数据和出色的计算资源才能取得理想结果。此外,预训练和自训练技术都旨在学习共享特征,而学习与目标任务相关的深度特征具有挑战性。
因此,作者正在考虑是否可以通过在目标数据域中生成粗糙的预训练数据,然后使用经过人工精炼的标注的训练数据进行微调,以实现更好的结果?幸运的是,近年来基础模型的发展为作者验证这些想法奠定了坚实基础。在视觉基础模型中,SAM [20]和CLIP [21]代表了两个开创性的工作。
SAM是一种通用的分割模型,能够为各种图像中的目标生成精确的 Mask 。CLIP通过理解并关联图像及其语言描述来执行图像分类任务。两种模型都展示了强大的泛化能力。
在本文中,作者将SAM和CLIP模型集成起来,提出了一种两阶段的预训练方法,用于可行驶区域检测任务。总体框架如图2所示。
简要来说,第一阶段使用SAM生成冗余分割 Mask ,第二阶段通过SCEF策略,利用CLIP模型从分割 Mask 中选择最合适的 Mask ,以优化CLIP模型。总的来说,作者的贡献如下:
作者提出了一个新颖的任务导向的预训练框架,用于驾驶区域任务,与传统的预训练和自训练方法相比,它在极其低成本的情况下实现了更好的性能改进,同时也为其他任务提供了洞察。
作者提出了一种特定类别增强微调(SCEF)策略来微调CLIP模型,使其能够从SAM分割出的冗余 Mask 中选择最合适的 Mask 。
作者在KITTI道路数据集上进行了全面的实验,包括不同架构和模态的模型。实验结果证明了作者的方法的有效性。
II Related Works
Drivable Area Detection
自动驾驶区域检测通常可以分为图像方法、点云方法以及多模态方法。在基于图像的方法中,它们可以进一步分为基于前视图的方法和基于鸟瞰视图(BEV)的方法。在基于图像的方法中,有检测列像素中障碍物以获得空闲空间的方法,以及基于语义分割的方法。在基于点云的方法中,可以分为传统方法和基于深度学习的方法。在传统方法中,可行驶区域通常基于点云的空间结构信息通过几何规则确定 。
学习方法包括将点云投影到球面上,将其转换为球形图像以供2D卷积方法使用 [28],以及直接将点云作为输入供深度神经网络使用 [29]。为了充分利用多个传感器的信息,研究行人开发了多模态融合方法 ,以提高算法性能。PLARD [4]首先将点云转换为ADI图像,然后将ADI图像与RGB图像一起输入到深度神经网络中进行端到端学习。
SNE-RoadSeg [3]将法线信息和图像信息集成在一起以检测可行驶区域,而USNet [5]则利用RGB图像和双目深度图像结合不确定性估计实现精确而高效的可行驶区域检测。
Foundation Models
基础模型 [20, 30] 通过提供通用的解决方案,能够适应多样任务和域,并实现最小程度的微调 [31]。在计算机视觉领域,SAM [20] 和 CLIP [21] 是两个代表性的工作。SAM 是一种通用的分割模型,能够为各种图像中的物体生成准确的分割 Mask 。
CLIP 通过对比学习将视觉和文本表示对齐,使其能够通过理解并关联图像到自然语言描述来执行零样本图像分类等任务。两种模型都展示了大规模预训练和泛化的集成在人工智能中的应用,为计算机视觉的发展做出了贡献。
在本工作中,作者首先使用 SAM 分割模型对输入图像执行“一切”模式分割,以获得冗余分割 Proposal ,然后使用特定类别增强微调,从冗余分割 Proposal 中选择最接近可行驶区域的分割结果。最后,作者收集了大量结合 SAM 生成和 CLIP 选择的训练数据进行预训练,然后使用人工标注数据微调模型,以提高可行驶区域检测模型的性能。
Pre-Training and Self-Training
预训练和微调策略已在各种深度学习任务中证明是有效的。这些策略的关键驱动因素是迁移学习范式[32],其中模型首先在大规模、多样化的数据集上进行预训练,以捕获通用特征,然后在这些特征的基础上,在特定任务的数据集上进行微调,以适应这些特征到特定应用[10, 11]。通过利用大规模预训练过程中获得的大量知识,这个过程增强了特定任务上的性能,使模型不仅能有效泛化,而且能熟练处理目标数据的细微之处。
自监督表示学习不需要手动数据标注,可以在大规模数据集上以自监督的方式学习特征。然后,通过在下游任务上进行微调,知识被转移到这些任务。 MoCo [16], SimCLR [17], MAE [18], 和 DINO [19] 是许多计算机视觉任务中得到验证的代表性工作。
然而,无论是预训练还是自监督表示学习,两种范式在将共享特征转移到目标任务方面表现出色,但在捕捉更深层次、更贴近任务目标的特定特征方面则有所不足。作者提出的面向任务的目标导向预训练方法可以专注于目标任务本身,因此,作者的方法能够实现更好的性能。
III Method
请注意,本文提出的预训练方法与之前的预训练方法有所不同。作者没有预训练在大无关的数据集上,然后通过微调将知识转移到目标任务,而是先使用SAM分割模型生成粗糙的训练标签,然后通过使用目标任务的精确手动标注进行微调。这种方法使得模型能够实现卓越的性能,因为预训练和微调的目标在作者的预训练框架内是一致的。
作者的方法主要包含两个步骤。第一步是通过SAM生成冗余 Mask Proposal ,第二步是通过微调的CLIP模型从这些 Mask Proposal 中选择最适合的一个。如图2所示,在虚线左侧,使用SAM模型生成分割 Proposal ,然后用于微调CLIP模型。在虚线右侧,过程涉及将分割 Proposal 与文本 Prompt 相结合,对这些图像块进行分类,从而选择最接近可行驶区域的那个。接下来,作者将详细介绍每个模块。
Redundant Masks Generation Using SAM