CoRL 2023
paper
Intro
基于人类演示的离线模仿学习受限于数据集的质量以及人类异质行为也能产生相同成功结果的特点。本文提出的L2D算法用于从不同质量和风格的演示中学习。给定带稀疏质量标签的小批量演示,L2D学习带时间轨迹段的潜在表示,并在潜在空间训练质量评估器,该评估器可以推广不同演示。
Method
该问题设定下,假设获得带质量标签的数据集
D
k
n
o
w
n
=
{
τ
i
}
i
=
1
N
=
{
(
s
0
,
a
0
,
s
1
,
a
1
,
…
,
s
L
τ
i
−
1
,
a
L
τ
i
−
1
)
}
i
=
1
N
D_\mathrm{known}=\{\tau_{i}\}_{i=1}^{N}=\{(s_{0},a_{0},s_{1},a_{1},\ldots,s_{L_{\tau_{i}}-1},a_{L_{\tau_{i}}-1})\}_{i=1}^{N}
Dknown={τi}i=1N={(s0,a0,s1,a1,…,sLτi−1,aLτi−1)}i=1N, 并分成不同子集并排序
{
D
A
,
D
B
,
D
C
⋯
}
\{D_A,D_B, D_C \cdots\}
{DA,DB,DC⋯}
L2D 的核心是采用一个偏好网络Q来预测ranking label l l l来评价演示的质量。该估计器存在两个挑战:1.如何捕捉长序任务的动作特征 2.如何捕捉相似演示下动作的多样性
对于第一个挑战采用带时序对比学习方法。L2D采用encoder对长度 L 1 L_1 L1的轨迹段 { σ j = { s t } j , t = i t = i + L 1 } j = 1 i = n u m _ s e g m e n t s \{\sigma_{j}=\{s_{t}\}_{j,t=i}^{t=i+L_{1}}\}_{j=1}^{i=\mathrm{num\_segments}} {σj={st}j,t=it=i+L1}j=1i=num_segments进行分割并编码。用于对比学习的三元组轨迹:锚点轨迹段 σ a \sigma_a σa、正轨迹段 σ p \sigma_p σp以及负轨迹段 σ n \sigma_n σn可以来自以下两种方案:
- 从特定数据集A中采样锚点轨迹与正样本,从B中采样出负样本轨迹
- 从任意质量数据集采样特定片段,例如轨迹的初始片段或者结尾片段作为锚点以及正样本,负样本则是来自于其他区域轨迹中的子片段。
对于第二个挑战捕捉相似演示中动作的多样性。表示学习(Preference Learning)在长序任务下评估演示数据质量困难,文章假设这是由于任务内在非循环性质导致相同状态动作具有不同的质量标签。为了处理这种复杂性,采用对状态进行位置编码的数据增强方法,对潜在状态空间提供必要的上下文信息,以便于任务全面理解。这样增强后的状态 o t ′ = [ o t , p t ] o_{t}^{\prime}=[o_{t},p_{t}] ot′=[ot,pt], p t p_t pt为归一化的时间步(t/T)
对比学习完成Encoder的训练,接下来便是训练质量评估函数 Q : R d → R Q:\mathbb{R}^d\to\mathbb{R} Q:Rd→R。从 D A D_A DA以及 D B D_B DB分别采样分段轨迹,经过embedding后由Q得到质量分数。采用pairwise ranking loss利用这些分段进行训练。
一段演示可以表示为不同区域的行为混合。利用高斯混合模型对单个区域预测后进行混合结果作为新演示质量分数。
为了训练GMM,从 D k n o w D_{know} Dknow中采样足够多的片段 ⌈ L L 1 × k ⌉ \lceil\frac{L}{L_{1}}\times k\rceil ⌈L1L×k⌉, 通过 Q ( E ( τ ) ) Q(E(\tau)) Q(E(τ))得到评估值。将这些值映射到不同质量的数据集合( D A , D B , D C D_A, D_B, D_C DA,DB,DC等),从而训练GMM。
对于未曾见过的演示 τ \tau τ,经过 Q ( E ( s a m p l e ( τ ) ) ) Q(E(sample(\tau))) Q(E(sample(τ)))得到一组标量值,每一个值代表演示中不同区域的质量,然后估计每一个值相对于GMM的概率值并将标量分配给最大概率集合。最后使用启发式方法来确定是否使用演示来训练策略。例如,在机器人模拟实验中,对于未曾见过的演示,计算分配给质量“好”的集合的段落百分比。然后根据这个计数对演示进行评分。随后根据这个分数对所有演示进行排名,并选择顶级演示来训练 IL 算法 BC-RNN。