True Knowledge Comes from Practice: Aligning Large Language Models with Embodied Environments via Reinforcement Learning
Motivation
问题识别:大型语言模型(LLMs)在解决简单决策任务时常常失败,原因在于它们所拥有的知识与环境不匹配。
RL的挑战:强化学习(RL)Agent虽然能够从环境中学习与环境一致的策略,但它们在早期学习阶段由于缺乏先验知识而效率低下。
目标:提出一个框架,通过强化学习协调LLMs与具体环境的一致性,以解决决策任务,同时不需要预先准备的数据集或对环境的先验知识。
Method
我们提出了一种新的通用在线框架TWOSOME,它将LLMs部署为decision-making agents,通过RL与具身环境进行有效的交互和对齐,而无需任何准备的数据集或环境的先验知识。
True knoWledge cOmeS frOM practiceE ( TWOSOME ),一种通用的在线框架,将LLMs部署为具身代理,通过RL与环境进行有效的交互和对齐,以解决决策任务,而无需任何准备的数据集或环境的先验知识。我们不让LLMs直接生成动作,而是利用LLMs提供的每个令牌的对数似然得分来计算每个动作的联合概率,形成有效的行为策略。这一过程消除了无效动作造成的错位。
- how to deploy LLMs as embodied agents to generate valid actions
这个问题可以通过prompt设计解决,但是文章调研到目前的大多数LLMs并不能完全满足这些限制,特别是对于小于65B的中小型LLMs。
- the influence of lengths of action prompts on the generated policies and propose two normalization techniques
文章中提到的两种归一化方法是为了解决动作提示(action prompts)长度不同所带来的问题。以下是对这两种归一化方法的中文总结:
问题背景
在动作提示中,每个标记(token)的概率总是小于1。因此,即使在环境中更长的动作提示可能更合理,它们在token级别的概率也倾向于更低(联合概率相乘)。例如,"pick up the tomato"(拿起西红柿)比"serve the dish"(上菜)有更多的token,但根据给定的观察,它可能是最优动作。
归一化方法
标记归一化(Token Normalization)
定义:通过动作的token数量来归一化token级别的概率,公式为:
目的:使得更长的动作提示的标记级别概率与短动作提示在同一数量级,从而消除动作提示长度的影响。
问题:如果一个词被分成多个标记,第一个标记通常概率较低,而其余标记的概率通常非常高,这可能导致归一化过度。
词归一化(Word Normalization)
定义:不是通过token数量而是通过词的数量来归一化token级别的概率,公式为:
目的:将一个词中的多个标记视为一个整体符号,更加合理地处理词内标记的统计规律。
优势:更适合处理LLMs在自回归训练过程中学到的统计规律,即一个词的第一个标记出现后,其余标记的出现概率会显著提高。
这两种归一化方法旨在解决由于动作提示长度不同导致的标记级别概率不均衡的问题。标记归一化通过标记数量来平衡概率,而词归一化则考虑到了词内标记的统计特性,通过词的数量来进行平衡,从而更合理地处理了由动作提示长度不同带来的问题。词归一化被认为更适合这种情况,因为它更贴近LLMs在训练中学到的语言模型统计规律。
- design a parameter-efficient training method under the PPO framework.
在这一部分中,我们提出了参数有效的微调方法,以使LLMs和具身环境与PPO框架下生成的策略保持一致。
我们在LLaMA - 7B模型的最后一个transformer blocks模块中添加了额外的MLP层作为critic。critic的MLPs使用观测提示的最后一个token作为输入,输出观测提示的估计值。输出观测提示的估计值。另一方面,Actor是由冻结的LLaMA - 7B模型随着LoRA参数的增加而形成的。在训练过程中,只更新Critic的MLP和Actor的LoRA参数,使得训练更加高效。LLaMA - 7B模型也可以作为参考模型来规范模型的更新.
- summarize four principles for efficient prompt design for TWOSOME.
有效提示(prompt)的四个原则,以提高大型语言模型(LLMs)生成策略的效果,并改善LLMs与具身环境之间的一致性。以下是用中文对这些原则的总结:
- 连贯性原则:观察提示和动作提示应该是连贯的,可以连接在一起。观察提示以“你应该”结束,接着是“下一步是”,这表明动作提示的开始。
- 冠词重要性原则:在动作提示中,冠词(例如“the”、“a”、“an”)非常重要。大多数动作提示由一个动词和一个名词组成,例如“pick up the tomato”。由于LLMs是用高质量的语料库训练的,它们对冠词很敏感。因此,“pick up the tomato”比“pick up tomato”更好,后者会导致“tomato”的概率极低。
- 偏好动作出现原则:在观察提示中应该出现偏好的动作。如Xu等人(2022年)和Fu等人(2021年)所观察到的,LLMs倾向于给重复出现的词汇分配更高的概率。因此,我们可以通过在观察提示中多次强调名词,来鼓励LLMs对偏好的动作分配更高的概率。例如,如果观察提示是“I see a tomato. My task is to make a tomato salad. I should”,那么“tomato”将有相对较高的出现概率。
- 不同观察下的同一动作原则:在不同的观察下,同一动作可能有不同的动作提示。例如,在游戏《Overcooked》中,当agent手上拿着一个碗时,“pick up the tomato”可以替换为“put the tomato in the plate”,虽然两者在环境中具有相同的功能,但后者更符合上下文,因此有更高的概率。
Reinforcing Language Agents via Policy Optimization with Action Decomposition
如何通过环境交互反馈实现大模型对齐?
- 序列决策(交互式)任务中,特定环境的dynamics通常很重要!
- LLMs有着丰富的常识,但不一定熟悉任务环境的特性。
Existing Works -Aligning via RL
- 针对特定的环境优化:RL最擅长的领域
- 近期工作GLAM和TWOSOME利用概率论链式法则,简洁有效地将LLM的tken分布与RL中的动作似然联系起来,使现有RL方法能够无缝衔接至语言代理的优化任务中。
Motivation
Finer-grained Supervision
TWOSOME和GLAM均属于Action-level的优化:
他们通过联合概率的链式法则,将语言模型的训练过程与强化学习最大化动作效益的目标保持一致
- 随着token长度的增加,面临着指数级增长的动作空间(强绑定action mask)。
- 忽略了动作内部的token之间的credit assignment,优化效率无法保证(如下如所示:强化动作似然不一定确保关键token能得到充分的强化)。
Leveraging the chain rule of probability, they build the bridge between optimizing actions and optimizing tokens, aligning the training process of language models as next-token predictors with the RL objective of maximizing actions’ utilities. However, they still suffer from limitations in optimization and exploration efficiency, due to the uncertainty of credit assignment to intra-action tokens.
Action-level Policy Optimization
我们首先简要回顾一下行为层面策略优化的过程,这在通过强化学习(RL)算法将语言代理与环境对齐的若干最先进方法中被广泛采用。这种方法促进了任何文本环境与传统RL算法之间的无缝集成,因此是我们分析的理想起点。
在给定动作和观察的情况下,通过策略π可能获得的回合回报通常通过状态-动作值函数Qπ(o, a)或状态值函数Vπ(o)来评估。然后,语言代理根据基于值函数计算的奖励更新其策略π,定义如下:
其中,a = (w1, . . . , w|at|) = w1:|a|。Ahn等人通过概率链式规则建立了动作和token的概率之间的联系:
最近的方法如GLAM和TWOSOME利用了类似的思想,并直接用RL方法优化动作层面的概率。当考虑优化π(a|o)时,方程1和方程2与传统RL设置中的值函数定义一致,允许它们用传统的Bellman更新来更新:
此外,值得注意的是,方程3计算动作a的概率在随着|a|增加的指数增长的语言空间中,即|A| = |V||a|。在如此巨大的动作空间中进行探索和优化对于RL方法来说通常是不可行的。因此,在GLAM和TWOSOME的设置中,可行的动作空间被显著限制,比整个语言空间小得多,即|A| ≪ |V||a|。以TWOSOME为例,它通过方程6优化关于可行动作空间的动作a的概率以屏蔽无效输出:
L(a)表示动作提示中的标记或单词数,用作归一化项以减轻不同动作长度的影响。在方程3的支持下,GLAM和TWOSOME确保了语言模型在标记层面的优化与RL方式的行为层面优化之间的一致性,而无需显式地为动作内的标记分配奖励。
详细解释
为了更好地理解这部分内容,我们可以逐步分析每个关键点及其含义。
- TWOSOME优化行为空间的动作概率:
TWOSOME方法通过下述公式(方程6)来优化在给定观察o下动作a的概率:
[ \pi {TWOSOME}(a|o) = \frac{\exp(\log \pi(a|o)/L(a))}{\sum{a'∈A} \exp(\log \pi(a'|o)/L(a'))} ]
这里,a表示一个动作,而o表示观察。公式中的π(a|o)是根据给定观察o选择动作a的原始概率。公式的目的是重新调整这些概率,以更好地适应RL的优化过程。 - L(a)的归一化作用:
[ L(a) ]
在公式中,L(a)代表动作提示(prompt)中的标记(token)或单词数。这个归一化项用于平衡不同长度动作的影响。例如,一个动作可能包含多个单词(标记),而另一个动作可能只有一个单词。为了避免较长动作在概率计算中被低估,L(a)用来进行归一化,使得动作长度对最终概率的影响得到缓解。 - 屏蔽无效输出:
通过对动作概率进行调整,TWOSOME方法屏蔽了无效输出。这意味着,在优化过程中,某些不合理或不可能的动作将被赋予极低的概率,从而在策略选择中被排除。这种方法确保了代理只考虑合理的动作,从而提高了优化效率。 - 与方程3的关系:
[ \pi(a|o) = \prod {j=1}^{|a|} \pi(w_j |o, w{1:j−1}) ]
这个公式表示了在给定观察o的情况下,生成动作a的概率是由一系列条件概率连乘得到的。每个动作a可以分解为一系列单词或标记w_j,而每个标记的选择概率依赖于前面的标记。这种基于标记的概率计算方法确保了语言模型生成动作时的连贯性和合理性。 - GLAM和TWOSOME方法的一致性:
GLAM和TWOSOME方法通过方程3的支持,实现了标记层面的优化与RL方式的行为层面优化之间的一致性。也就是说,这两种方法在优化过程中,无需显式地为动作内的每个标记单独分配奖励,而是通过整体概率计算和归一化过程实现优化。这种一致性简化了优化过程,并减少了在动作层面和标记层面之间的复杂度。
然而,目标的联合性导致了与奖励分配过程中的不确定性相关的困难——如图1所示,在给动作分配奖励后,无法确定该动作中的关键标记是否已被识别,以及它们受到的影响程度。因此,在行为层面进行RL训练会引入不确定性,可能导致语言代理的学习过程效率低下。
Token-level Policy Optimization — Naive Attempt
一个最直接的方法是将RLHF的思路直接扩展至序列决策任务(NTPO):
- 通过在动作内部进行Bellman backup实现细粒度的credit assignments。
- 将O(|V|^|a|)的动作空间拆解为|a|个O(|V|)的token空间依次优化,降低复杂度。
- 重要:简单的扩展并不能保证其优化(下图右)与GLAM/TWOSOME等方法(下图左)的一致性,因其优化的并非原来Action-level的MDP,而是构建了一个新的MDP。
为了保持行动级更新和标记级更新的一致性,我们应该确保优化标记与优化整个行动具有相同的最优性。这类似于传统RL中多维行动优化的设置。即,给定语言行动生成的确定性,以及在足够训练后遵循标记级Bellman备份的最优策略π*,理想的最优标记价值函数应该满足对于所有j < |at|,有Qπ*(ot, w1:j−1 t , wj t) = Qπ*(ot, at)和Vπ*(ot, w1:j t) = Vπ*(ot)。
公式解释
- 𝑄𝜋(𝑜,𝑤1:𝑗−1,𝑤𝑗)和 𝑉𝜋(𝑜,𝑤1:𝑗−1) 分别是针对特定标记序列的行动-价值函数和状态-价值函数。
- 公式(9)和(10)展示了如何将行动级反馈引入到标记级,除了最后一个标记外,对行动内的标记引入额外的0反馈。
- 公式(11)和(12)量化了行动级优化和标记级优化之间的差异,并展示了这种差异如何随着γw的增加而减小,当γw=1时达到一致性。
主要观点
- 当
在[0, 1]区间内增加时,行动级优化和标记级优化之间的Bellman最优性差异减小,当
=1时达到一致性。
- 当
小于1时,随着action内token数量增加,差异增大。
直观理解
- 引入的新MDP 𝑀~** 假设句子中后面的词比前面的词更具表现力,这在表示语言行动的语义上是不现实的。
通过这种方法,可以将行动级的奖励信号R(ot, at)分解到行动内的标记,从而减轻信用分配的不确定性,并降低优化复杂性。然而,这种方法在序列决策任务中与行动级优化不一致,因为它引入了一个新的MDP,与原始MDP不同。在下一节中,作者将提出一种名为“行动分解Bellman backup”的主要方法,以解决这个问题。
Bellman backup with Action-Decomposition
基于上面的观点1,我们只需要在前面Naive token-level policy optimization中的credit assignment时,对于intra-action tokens,将gamma设为常数1,从而得到Bellman back with Action-Decomoisition(BAD),它可以:
- 为每个token的更新提供更细粒度的监督(同NTPO)
- 降低优化的复杂度(同NTPO)
- 保持与Action-level优化的一致性(优化原来的MDP)
Action-Decomposition Reinforcement Learning
Bellman Backup with Action-Decomposition
使用BAD训练语言代理可以为奖励反向传播提供更细粒度的监督,消除奖励分配中的不确定性,从而享有更好的可解释性和RL训练过程的效率。此外,它理论上确保了语言模型的标记级别训练过程与最大化动作效用的RL目标之间的一致性。 BAD的另一个优势是能够将难以处理的动作空间(大小为O(|V|^|a|))的优化分解为标记空间(大小为O(|V|))的|a|次优化,从而将语言代理的RL问题的复杂度降低到O(|a| × |V|),使问题变得更易于处理。此外,BAD可以无缝地集成到各种现有的RL方法中,包括离线策略算法如DQN和在线策略算法如Actor-Critic和PPO。此外,我们还在附录B.3中提供了Soft Q函数的版本,以支持各种熵正则化RL算法如SAC。
Policy Optimization with Action Decomposition
在本节中,我们将BAD集成到广泛使用的PPO中,并提出一种具体的方法,称为带有动作分解的策略优化(POAD),而与其他算法的集成将留待未来的工作。POAD将策略更新的粒度从动作层逐步分解到标记层。 为了近似标记值函数,我们引入了一个带有参数φ的评论者网络,其目标是通过最小化标记的经验Bellman误差来优化:
其中,表示目标网络的不可微参数,定期更新。策略网络的参数记为φ,优化遵循剪辑PPO目标:
其中,是使用广义优势估计(GAE)得到的每个标记的优势值估计。 为了更详细地了解POAD,我们在附录D中提供了伪代码。