Clio

Maggio (MIT SPARK) 2024 · 论文

一句话总结 — Clio构建实时的、任务驱动的开放集3D场景图:给定自然语言描述的任务,它用一种增量式的聚合信息瓶颈(Agglomerative Information Bottleneck)方法对3D基元进行聚类,使地图只保留任务所需要的对象和区域——并保持在任务所需要的粒度上。

问题

类别无关的分割方法(SAM)加上开放集嵌入(CLIP)意味着机器人地图不再局限于几十或几百个类别——它们可以包含”数量庞大的对象和不计其数的语义变化”。这就引出了本文直接提出的问题:机器人地图中所需要的对象和语义概念,合适的粒度应该是什么?一个要搬动钢琴的机器人应把它当作一个整体对象来建图;一个要弹奏它的机器人需要键;一个要调音的机器人则需要琴弦和弦钉。以往的开放集流水线通过调节分割关联阈值来隐式地选定粒度;Clio则主张这种选择本质上是任务相关的,应该由建图系统自身来做出。

方法与架构

信息瓶颈公式化。 任务列表 YY(用CLIP嵌入的自然语言指令)和任务无关的基元 XX(3D对象分割和无障碍区域)定义了一个压缩问题:寻找任务相关的簇 X~\tilde{X},即一个分配 p(x~x)p(\tilde{x}|x),求解

minp(x~x)  I(X;X~)βI(X~;Y)\min_{p(\tilde{x}|x)}\; I(X;\tilde{X})-\beta I(\tilde{X};Y)

该式在压缩 XX 的同时保留与任务的互信息,β\beta 用于权衡压缩程度与任务相关性。

聚合式信息瓶颈(Agglomerative IB)。 簇初始化为各个基元;每一步将合并权重最小的一对相邻

dij=(p(x~i)+p(x~j))DJS[p(yx~i),p(yx~j)]d_{ij}=\big(p(\tilde{x}_{i})+p(\tilde{x}_{j})\big)\cdot D_{\mathrm{JS}}\big[p(y|\tilde{x}_{i}),\,p(y|\tilde{x}_{j})\big]

进行合并(DJSD_{\mathrm{JS}} = Jensen-Shannon散度),当信息损失比例

δ(k)=I(X~k;Y)I(X~k1;Y)I(X;Y)\delta(k)=\frac{I(\tilde{X}_{k};Y)-I(\tilde{X}_{k-1};Y)}{I(X;Y)}

超过阈值 δˉ\bar{\delta} 时停止。任务相关性分布 p(yxi)p(y|x_{i}) 来自每个基元与每个任务的CLIP嵌入之间的余弦相似度 ϕ(fxi,ftj)\phi(f_{x_{i}},f_{t_{j}}),并加入一个评分为 α=0.23\alpha=0.23 的*空任务(null task)*进行增强:与空任务最相似的基元会被预先剔除为背景,并且只保留(重新加权后的)前 kk 个任务相似度以强化排序效果。

增量式信息瓶颈。 由于聚类过程可以按基元图的连通分量分解,并且 δ(k)\delta(k) 是按分量可计算的,因此只有被新测量触及的分量才需要重新聚类——因此计算复杂度不会随环境规模增长,从而实现在线运行。

系统。 前端在RGB-D流上运行FastSAM + CLIP,将分割结果在时间上关联为3D对象基元轨迹(余弦相似度 θtrack\geq\theta_{\text{track}},3D IoU γ\geq\gamma,沿用Khronos的方法),并构建Hydra基于GVD的地点子图,为每个地点分配其质心可见的所有图像的平均CLIP嵌入。后端对对象基元图(边为相互重叠的边界框)运行增量式聚合IB,得到任务相关的对象,并对地点图运行同样的过程,将地点聚类为语义区域;每个节点都保留其CLIP嵌入,因此该图始终可以用语言查询。

实验结果

对SLAM的意义

Clio标志着从”以固定语义粒度建图一切”转向”按任务所需建图”的转变——这是SLAM与具身人工智能融合过程中的一个关键思想。它的信息瓶颈公式为粒度问题提供了一个有原则的信息论基础,而不是靠调阈值;而增量式的按分量求解方式表明,基础模型语义(FastSAM、CLIP)可以运行在机载计算资源上的实时度量-语义建图栈内。对于语言驱动的机器人而言,任务条件化的场景图能让地图保持紧凑,同时仍足以支持规划和操作。

相关条目