ICLR 2024 Oral
paper
Introduction
在大型任务无关数据集上预训练可以帮助RL提高在复杂任务上的样本采样效率。本文提出的PTGM便是构造为下游任务生成goal的上层策略,指导下游任务的goal-conditioned 低级高效探索利用。而为了解决高维空间产生的高维goal以及保持技能表示,提出基于clustering形成离散化的high-level策略的动作空间。此外,在线RL过程中,引入一个预训练的goal prior模型,通过KL散度对high-level的策略进行正则化,保证在线训练的稳定高效。
Method
假设任务无关数据集来自相同环境、不同任务且由状态动作对构成
D
=
{
τ
=
{
(
s
i
,
a
i
)
}
i
=
0
T
}
D=\{\tau=\{(s_{i},a_{i})\}_{i=0}^{T}\}
D={τ={(si,ai)}i=0T}。PTGM首先预训练一个goal-conditioned的低级策略
P
ϕ
(
a
t
∣
s
t
,
s
g
)
P_\phi(a_{t}|s_t,s^g)
Pϕ(at∣st,sg)。PTGM从数据集中采样k-steps的连续数据,将最后一步的状态作为goal,然后通过最小化负对数似然训练参数:
L
(
ϕ
)
=
E
D
[
−
log
P
ϕ
(
a
i
∣
s
i
,
s
g
)
]
\mathcal{L}(\phi)=\mathbb{E}_D\left[-\log P_\phi(a_i|s_i,s^g)\right]
L(ϕ)=ED[−logPϕ(ai∣si,sg)]
CLUSTERING IN THE GOAL Space
为了解决高维goal引入高维状态空间导致RL的采样效率降低,算法从数据集采用t-SNE对状态降维,利用K-means得到N个聚类中心 G = { i : s i g } i = 1 N , G=\{i:s_{i}^{g}\}_{i=1}^{N}, G={i:sig}i=1N,。
PRE-TRAINING THE GOAL PRIOR MODEL
由于高级策略缺乏goal相关的先验知识,因此文章基于数据集训练一个先验模型。
goal先验模型
π
ψ
p
(
a
h
∣
s
)
\pi_{\psi}^{p}(a^{h}|s)
πψp(ah∣s)与高级策略结构相同,其中
a
h
a^h
ah表示goal聚类中心的index。根据index选择对应的聚类中心,便实现预测当前状态下未来goal的分布。
模型训练时,类似于训练low-level策略时,选择k-steps后的状态作为goal s g s^{g} sg,采用余弦相似度得到监督训练的标签: a h = arg max i ∈ [ N ] ( s i g ⋅ s g ∥ s i g ∥ ⋅ ∥ s g ∥ ) a^h=\arg\max_{i\in[N]}\left(\frac{s_{i}^{g}\cdot s^{g}}{\|s_{i}^{g}\|\cdot\|s^{g}\|}\right) ah=argmaxi∈[N](∥sig∥⋅∥sg∥sig⋅sg)
而连续空间下,通过最小化负对数似然优化:
L
(
ψ
)
=
E
D
[
−
log
π
ψ
p
(
a
h
∣
s
t
)
]
.
\mathcal{L}(\psi)=\mathbb{E}_{D}\left[-\log\pi_{\psi}^{p}(a^{h}|s_{t})\right].
L(ψ)=ED[−logπψp(ah∣st)].
goal先验模型将作为 RL期间高级策略的正则化器,提供内在奖励来指导代理对数据集中可能目标的探索。
REINFORCEMENT LEARNING WITH PTGM
基于goal cluster G、预训练low-level policy P ϕ P_\phi Pϕ与goal prior model π ψ p \pi_{\psi}^{p} πψp,便开始训练高级策略。
每一步根据高级策略
π
θ
(
a
h
∣
s
)
\pi_{\theta}(a^{h}|s)
πθ(ah∣s)输出的center index,选择对应的goal state,fixed low-level policy将基于goal与环境进行k-steps的交互。最大化累计奖励优化高级策略参数。下:
J
(
θ
)
=
E
π
θ
[
∑
t
=
0
∞
γ
t
(
∑
i
=
k
t
(
k
+
1
)
t
R
(
s
i
,
a
i
)
−
α
D
Kl.
(
π
ψ
p
(
a
h
∣
s
k
t
)
∥
π
θ
(
a
h
∣
s
k
t
)
)
)
]
J(\theta)=\mathbb{E}\pi_{\theta}\left[\sum_{t=0}^{\infty}\gamma^{t}\left(\sum_{i=kt}^{(k+1)t}R(s_{i},a_{i})-\alpha D_{\text{Kl.}}\left(\pi_{\psi}^{p}(a^{h}|s_{kt})\|\pi_{\theta}(a^{h}|s_{kt})\right)\right)\right]
J(θ)=Eπθ
t=0∑∞γt
i=kt∑(k+1)tR(si,ai)−αDKl.(πψp(ah∣skt)∥πθ(ah∣skt))