ENEL:首个无编码器3D多模态LLM,性能媲美SOTA模型

上海AI Lab发布ENEL:首个无编码器3D多模态LLM,通过LLM嵌入式语义编码和层次几何聚合策略,有效提升了模型性能,媲美SOTA。

原文标题:无编码器架构潜力或被低估,首个无编码器3D多模态LLM大模型来了

原文作者:数据派THU

冷月清谈:

本文介绍了首个无编码器架构的3D大型多模态模型ENEL,旨在解决传统基于编码器的3D LMM在点云分辨率适应性和语义鸿沟方面的问题。ENEL通过LLM嵌入式语义编码和层次几何聚合策略,将3D编码器的功能直接整合到LLM中。研究者通过混合语义损失弥补了3D编码器提取的高层次3D语义信息的缺失,并利用层次几何聚合策略使LLM更好地感知3D几何结构。实验结果表明,ENEL-7B在3D物体描述和分类任务中取得了与当前最先进的ShapeLLM-13B相媲美的性能,验证了无编码器架构在3D LMM中的巨大潜力。

怜星夜思:

1、ENEL通过无编码器架构在3D多模态LLM上取得了显著成果,你认为这种架构在哪些其他领域有应用潜力?比如机器人领域,又会带来哪些新的可能性?
2、文章中提到ENEL使用了混合语义损失和层次几何聚合策略,这两种方法分别解决了什么问题?有没有其他方法也能达到类似的效果?
3、ENEL的实验结果显示,在3D-VQA任务上,即使训练集中缺乏空间和具身交互相关的数据,ENEL仍然取得了不错的成绩。这说明了什么?你认为如何进一步提升ENEL在这方面的能力?

原文内容

来源:PaperWeekly‍‍‍‍‍‍‍
本文约2700字,建议阅读10分钟
作者首次全面研究了无编码器架构在 3D 大型多模态模型中应用的潜力。


©作者 | 汤轶文
单位 | 上海科技大学、上海AI Lab
研究方向 | 3D视觉,大模型高效迁移

许多近期的研究致力于开发大型多模态模型(LMMs),使 LLMs 能够解读多模态信息,如 2D 图像(LLaVA)和 3D 点云(Point-LLM, PointLLM, ShapeLLM)。主流的 LMM 通常是依赖于强大但计算量大的多模态编码器(例如,2D 的 CLIP 和 3D 的 I2P-MAE)。

虽然这些预训练编码器提供了强大的多模态嵌入,富含预先存在的知识,但它们也带来了挑战,包括无法适应不同的点云分辨率,以及编码器提取的点云特征无法满足大语言模型的语义需求。

因此,作者首次全面研究了无编码器架构在 3D 大型多模态模型中应用的潜力,将 3D 编码器的功能直接整合到 LLM 本身。最终,他们展示了首个无编码器架构的 3D LMM—ENEL,其 7B 模型与当前最先进的 ShapeLLM-13B 相媲美,表明无编码器架构的巨大潜力。

论文标题:

Exploring the Potential of Encoder-free Architectures in 3D LMMs

作者单位:

上海人工智能实验室,西北工业大学,香港中文大学,清华大学

代码链接:

https://github.com/Ivan-Tang-3D/ENEL

论文链接:

https://arxiv.org/pdf/2502.09620v1


一、背景和动机

对于 3D LMMs,基于编码器的架构有以下潜在缺点:

1. 点云分辨率限制:3D 编码器通常在固定分辨率的点云数据上进行预训练,例如 PointLLM 的编码器 Point-BERT 使用 1,024 个点。然而,在推理过程中,输入点云的分辨率可能会有所不同(例如,8,192 个点或 512 个点)。

训练和推理分辨率之间的差异可能导致在提取 3D 嵌入时丢失空间信息,从而使 LLMs 理解变得困难。如(a)所示,PointLLM 在不同的点云分辨率输入下性能差异过大,而我们提出的 ENEL 显示出了一定的鲁棒性。

2. 嵌入语义差异:3D 编码器通常采用自监督方法(如掩码学习和对比学习)进行预训练,但 3D 编码器和大语言模型的训练分离导致训练目标可能与 LLMs 的特定语义需求不一致,无法捕捉到 LLMs 理解 3D 物体所需的最相关语义。

即使使用投影层将 3D 编码器与 LLMs 连接,简单的 MLP 也往往不足以进行完全的语义转换。如图(b)所示,ENEL 架构中 text token 更能关注到点云物体的关键部位,如椅脚和机翼。

二、具体方案

作者选择 PointLLM 作为基准模型进行探索,并使用 GPT-4 评分标准在 Objaverse 数据集上评估不同策略的表现。在无编码器结构的探索中他们提出以下两个问题:

1. 如何弥补 3D 编码器最初提取的高层次 3D 语义?在 3D LMMs 中,完全跳过编码器会导致难以捕捉 3D 点云的复杂空间结构。

2. 如何将归纳偏置整合到 LLM 中,以便更好地感知 3D 几何结构?传统的 3D 编码器通常将显式的归纳偏置嵌入到其架构中,以逐步捕捉多层次的 3D 几何。例如,像 Point-M2AE 这样的模型使用局部到全局的层次结构,这一概念在 2D 图像处理的卷积层中也很常见。

LLM 嵌入的语义编码

因为缺乏 3D 编码器导致点云语义信息的编码不足,极大地阻碍了 LLM 理解点云的结构细节。现有的大多数 3D 编码器使用自监督损失将点云的高层语义嵌入到 Transformer 中,主要分为四种类型:掩蔽建模损失(a)、重建损失(b)、对比损失(c)和知识蒸馏损失(d)。

基于 token embedding 模块和 LLM 可学习层,作者在预训练阶段实现并评估了这些损失对无编码器 3D LMM 的影响,并提出混合语义损失。

  • 点云自监督学习损失通常有助于无编码器 3D LMM。自监督学习损失通过特定的任务设计对复杂的点云进行变换,促使 LLM 学习潜在的几何关系和高层次的语义信息。
  • 在这些自监督学习损失中,掩蔽建模损失展示了最强的性能提升。掩蔽比率与训练优化难度直接相关,从 30% 增加到 60% 会导致性能下降。此外,显式重建点云 patch 不如掩蔽建模有效,但有助于 LLM 学习点云中的复杂模式。相比前两种损失,知识蒸馏损失的效果较差。最后,对比损失未能提取详细的语义信息,表现最差。
  • 基于上述实验结果,作者提出混合语义损失(Hybrid Semantic Loss),他们对于掩蔽部分采用掩蔽建模,而对于可见部分,他们使用重建策略。这种方法不仅将高层次的语义嵌入 LLM 中,而且确保在整个点云学习过程中保持几何一致性。

层次几何聚合策略

在无编码器架构中,LLM 本身并没有明确的局部建模模块。自注意力机制主要用于建模全局交互。因此,基于提出的混合语义损失,作者在指令调优阶段探索如何使 LLM 主动感知 3D 局部细节,并补充学到的全局语义。为此,他们提出了层次几何聚合策略。

从 LLM 的第二层开始,输入的点云 token 基于它们对应的坐标使用最远点采样进行下采样,将 token 数量从 M 减少到 𝑀/2, 作为局部中心。然后,使用 k-NN 算法获得邻近点。针对邻近点他们采用门控自注意力机制进行组内交互,捕捉局部几何结构。最后,他们应用池化操作融合每个邻居的特征,结果特征长度为 M/2。总共进行 l-1 次几何聚合。

为了确保 LLM 充分提取局部信息,作者选择在聚合操作后经过多层 LLM 层进行进一步的语义建模,避免丢失细粒度的几何细节。

随后,他们进行 l 次几何传播。按照 PointNet++ 的方法,他们将聚合后的特征从局部中心点传播到它们周围的 k 个邻近点,经过 l 次后重新得到长度为 M 的点云特征。

三、定量分析

在 Objaverse 基准测试中,ENEL-7B 在 3D 物体描述任务中取得了 50.92% 的 GPT-4 得分,创下了新的 SOTA 性能。

在传统指标中,SentenceBERT 和 SimCSE 分别达到了 48.61% 和 49.31% 的得分,表现与 ShapeLLM-13B 相当。对于 3D 物体分类任务,ENEL-7B 超越了先前基于编码器的 3D LMMs,取得了 55% 的 GPT 得分。

此外,在 3D MM-Vet 数据集的 3D-VQA 任务上,尽管训练集中缺乏空间和具身交互相关的数据,ENEL 仍取得了 42.7% 的 GPT 得分,超过了 PointLLM-7B 1.5%。

考虑到与 PointLLM 相同的训练数据集,这些结果验证了作者提出的 LLM 嵌入式语义编码和层次几何聚合策略在无编码器架构中的有效性。

四、实现、训练和推理细节

作者使用 7B Vicuna v1.1 的检查点。在嵌入层中,点云首先通过一个线性层处理,将其维度从 6 扩展到 288。输入点云初始包含 8192 个点,随后经过三次最远点采样(FPS),分别将点云数量减少到 512、256 和 128。

每次 FPS 操作后,使用 k 近邻进行聚类,聚类大小为 81,并通过三角编码提取几何特征,随后通过线性层逐步将维度增加到 576、1152 和 2304。最后,投影层将特征映射到 LLM 的 4096 维度。

在两阶段训练过程中,每个阶段使用的数据集和预处理方法与 PointLLM 一致。所有训练均在 4 张 80G 的 A100 GPU 上以 BF16 精度进行,使用了 FlashAttention、AdamW 优化器以及余弦学习率调度策略。

在预训练阶段,模型训练了 3 个 epoch,批量大小为 128,学习率为 4e-4。在指令微调阶段,训练进行了 3 个 epoch,批量大小为 32,学习率为 2e-5。

用于分类和描述任务评估的 GPT-4 模型为「gpt-4-0613」版本,与 PointLLM 一致;而用于问答性能评估的 GPT-4 模型为「gpt-4-0125」版本,与 ShapeLLM 对齐。

关于作者

本文一作汤轶文本科毕业于上海科技大学,导师是李学龙教授,在上海人工智能实验室实习。他的研究兴趣是 3D 视觉,大模型高效迁移,多模态大模型和具身智能等。主要工作有 Any2Point, Point-PEFT, ViewRefer 等。

编辑:黄继彦



关于我们

数据派THU作为数据科学类公众号,背靠清华大学大数据研究中心,分享前沿数据科学与大数据技术创新研究动态、持续传播数据科学知识,努力建设数据人才聚集平台、打造中国大数据最强集团军。




新浪微博:@数据派THU

微信视频号:数据派THU

今日头条:数据派THU

回复: 这说明即使缺乏特定领域的训练数据,ENEL仍然能够通过学习general的3D表示和推理能力,在一定程度上泛化到新的任务上。这也验证了无编码器架构的潜力,即LLM能够从原始数据中学习到更通用的知识,而无需依赖于特定领域的编码器。

为了进一步提升ENEL在空间和具身交互方面的能力,我认为可以从以下几个方面入手:

1. 引入更多空间和具身交互相关的训练数据:例如,可以收集机器人操作物体的视频数据,或者利用虚拟环境生成大量带有空间信息的3D场景数据。
2. 设计更有效的损失函数:例如,可以引入对比学习,让模型学习到不同物体之间的空间关系,或者利用强化学习,让模型学习如何与环境进行交互。
3. 改进模型架构:例如,可以引入注意力机制,让模型更好地关注场景中的关键物体,或者利用图神经网络,让模型更好地理解物体之间的拓扑关系。

回复: 感觉无编码器架构有点像“大道至简”的思想,抛弃了复杂的编码器,直接让LLM学习原始数据。这种思路在很多领域都有借鉴意义。比如,在自然语言处理领域,如果我们能直接用LLM处理语音信号,而不是先提取声学特征,说不定也能取得更好的效果。甚至在金融领域,我们也可以尝试用LLM直接分析原始交易数据,发现潜在的市场规律。

回复: 无编码器架构在机器人领域应用潜力巨大!设想一下,机器人可以直接从原始传感器数据(例如,摄像头图像、激光雷达点云)学习,而无需预先训练的特定编码器。这意味着机器人可以更容易地适应新的环境和任务,无需大量重新训练编码器。比如,在复杂的室内环境中,机器人可以更好地理解和操作各种物体,完成像精细组装、整理等任务。这种架构也能减少对外部数据依赖,提高机器人的自主性和鲁棒性。

此外,无编码器架构也为机器人领域的终身学习提供了可能。机器人可以不断地从经验中学习,并将新知识融入到LLM中,从而不断提升其能力。

回复: 混合语义损失,我理解是让LLM在“做填空”的同时,还要能“复原”,这样学到的东西才更全面。层次几何聚合,感觉就像是让LLM从“看整体”到“看细节”,再把细节拼起来,形成对3D物体的完整认知。

我觉得要达到类似效果,可以试试对比学习。比如,可以把同一个3D物体,从不同角度、不同分辨率进行渲染,然后让LLM学习不同渲染结果之间的不变性。这样可以提高LLM对3D物体的鲁棒性,也能让它更好地理解3D几何结构。

回复: 我觉得无编码器架构在医疗影像分析领域也很有潜力。传统的医疗影像分析往往依赖于专家手工设计的特征提取器,非常耗时耗力。如果能直接用LLM处理原始影像数据,就能大大提高效率和准确性,辅助医生进行更精准的诊断。想象一下,LLM可以直接识别CT扫描图像中的微小病灶,或者预测肿瘤的生长趋势。

当然,这也面临一些挑战,比如医疗数据的隐私保护和模型的可解释性。我们需要开发新的技术来解决这些问题。

回复: 混合语义损失主要解决的是无编码器架构下,LLM难以有效提取和理解点云中丰富语义信息的问题。它结合了掩蔽建模和重建策略,让LLM既能学习到高层次的语义,又能保持几何一致性。而层次几何聚合策略则侧重于让LLM感知3D局部细节,通过模拟类似卷积的局部感受野,补充全局语义信息的缺失。

要达到类似效果,我觉得可以借鉴图神经网络(GNN)的思想。GNN在处理非结构化数据(如点云)方面有天然优势,可以将点云构建成图结构,然后利用GNN学习节点之间的关系,从而提取局部和全局特征。另一种思路是引入注意力机制的变体,例如Sparse Transformer,可以在降低计算复杂度的同时,捕捉长距离依赖关系。

回复: 抛砖引玉一下,可以从数据增强的角度入手。通过对点云进行旋转、缩放、平移等操作,增加数据的多样性,让LLM能够更好地适应不同的场景。此外,还可以尝试将点云与其他模态的数据(如图像、文本)进行融合,利用多模态学习来提高LLM的性能。

回复: 这个问题很有意思!我觉得这说明ENEL在某种程度上已经具备了“理解空间”和“理解动作”的雏形,只是还不够完善。它可能通过学习3D物体的形状、大小、位置等属性,以及文本描述中的空间关系,来推断物体之间的交互方式。

要进一步加强ENEL的能力,可以尝试以下方法:

* 加入运动信息:让ENEL学习随时间变化的3D点云序列,这样它就能理解物体的运动轨迹和速度。
* 引入物理引擎:将ENEL与物理引擎相结合,让它能够模拟真实的物理世界,并预测物体在不同作用力下的反应。
* 使用强化学习:让ENEL通过与环境的交互来学习,例如,让它控制一个虚拟机器人,完成各种任务,并根据任务完成情况进行奖励或惩罚。

回复: 我感觉ENEL有点像“举一反三”的小能手,虽然没见过那么多“花样”,但也能靠着学到的“基本功”应付一下。要让它更厉害,得给它“开开眼界”,多看看“花花世界”。

所以,我的建议是:

* 多模态数据融合:把点云和图像、视频、声音等等结合起来,让ENEL从更多维度去理解世界。
* 增加交互式学习:让ENEL不光是“看”,还要能“动”,比如让它控制一个机械臂,去抓取、移动物体,在实践中学习。