3D Diffuser Actor

Diffusion policy 是在 robot 和环境状态的条件下,学习 robot 的动作分布的扩散模型。

3D robot policy 通过感知到的深度信息,展现出比 2D policy 更好的跨摄像头视角泛化能力。

本工作提出 3D Diffuser Actor 统一了这两篇工作,在 RLBench 和 CALVIN 达到了 SOTA。

与 3D diffusion policy [22] 相比,对于场景变化更加鲁棒,有更好的泛化能力。


3D Diffuser Actor 训练模仿 {(ot,at)}\{(o_t, a_t)\} 的轨迹,附带任务语言指令 lloto_t 为视觉观测,ata_ttt 时刻 robot 的决策。每个动作是一个执行器动作,用 (atlocR3,atrotR6,atopen{0,1})(a_t^{loc} \in \R^3, a_t^{rot} \in \R^6, a_t^{open} \in \{0, 1\}) 表示。用 τt=(at:t+Tloc,at:t+Trot)\tau_t = (a_{t : t+T}^{loc}, a_{t: t +T}^{rot}) 代表 tt 开始 TT 时段的位置和旋转轨迹。模型在每个时间 tt 预测轨迹 τt\tau_t 和二元状态 at:t+Topena_{t:t+T}^{open}

模型通过向样本 τ0\tau_0 添加噪声,非自回归预测轨迹。第 ii 步扩散可以写作 τi=αˉiτ0+1αˉiϵ\tau_i = \sqrt{\bar \alpha^i} \tau^0 + \sqrt{1 - \bar \alpha ^i} \epsilon

3D Diffuser Actor 通过一个 3D relative transformer ϵ^=ϵθ(τti;i,ot,l,ct)\hat \epsilon = \epsilon_\theta(\tau_t^i; i, o_t, l, c_t) 学习预测噪声成分 ϵ^\hat \epsilon。在每一个时间 tt 和扩散步骤 ii,把视觉观测 oto_t,本体感觉 ctc_t 和噪声轨迹预测 τti\tau_t^i 转变为 3D tokens,每个 3D token 用 latent embedding 和 3D 位置表示。

模型把所有 3D tokens 通过 relative 3D attentions 融合,然后再用普通 attention 和自然语言指令 ll 融合。3D attention 在查询 qq 和键值 kk 之间的权重为 eq,kxqTM(pqpk)xke_{q, k} ∝ x_q^TM(p_q - p_k)x_k,其中 xx 为特征,pp 为 3D 坐标,MM 是一个只取决于 q,kq, k 的相对位置的矩阵 [62, 63, 17, 21]。目标函数为

Lθ=w1ϵθloc(o,l,c,τi,i)ϵloc+w2ϵθrot(o,l,c,τi,i)ϵrot+BCE(fθopen(o,l,c,τi,i),a1:Topen)L_\theta = w_1 || \epsilon_\theta^{loc}(o, l, c, \tau^i, i) - \epsilon^{loc} || + w_2 || \epsilon_\theta^{rot}(o, l, c, \tau^i, i) - \epsilon^{rot} || + BCE(f_\theta^{open} (o, l, c, \tau^i, i), a_{1:T}^{open})

BCEBCE 代表 Binary Cross Entropy。