GLAM:強化学習エージェントとしてのLLM
3つの要点
✔️ 大規模言語モデルを強化学習における方策として捉え,追加学習させる
✔️ 強化学習タスクを言語で表現する環境やプロンプトを開発
✔️ 大規模言語モデルを強化学習に使用することによって,サンプル効率や汎化性能に向上が見られることがわかった
Grounding Large Language Models in Interactive Environments with Online Reinforcement Learning
written by Thomas Carta, Clément Romac, Thomas Wolf, Sylvain Lamprier, Olivier Sigaud, Pierre-Yves Oudeyer
(Submitted on 6 Feb 2023 (v1), revised 12 May 2023 (this version, v2), latest version 6 Sep 2023 (v3))
Comments: Published on arxiv.
Subjects: Machine Learning (cs.LG)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
導入
昨今,Transformerに基づいた大規模言語モデル(LLM)が様々な能力を示すことが明らかになってきました.その中でも,LLMが我々人間が住む世界の物理法則の一部を捉えることができていることがわかってきています.例えば,空間や身体と物体のアフォーダンスなどの事前知識を持っていることが示されています.
しかしながら,実世界へのグラウンディングに欠点を抱えており,それゆえに概念の意味理解や環境における適切な知識利用ができていないとも言われています.
これに対して,以下の三つの原因が考えられます.
(1)LLMの次単語予測を基本とした訓練プロセスが,環境中での問題解決に直接関連していないこと
(2)因果構造を特定するために環境に働きかける能力が欠如していること
(3)環境との相互作用の結果集められたデータから学習する能力が欠如していること
本研究では,LLMを強化学習における方策(ポリシー)として使用できるかという問いについて調査します.エージェント(LLM)が環境との相互作用の中で行動を行う結果,新しい観測をもとに知識を適切にグラウンディングさせられるかを調べます.
具体的に,以下のような問いを実験のパートで調査します.
Q1:サンプル効率
自然言語で指示された空間ナビゲーション問題に対して,LLMはどれほど即座に適応,学習できるのか.
Q2:新規物体への汎化
訓練されたタスクにおいて,新しい物体に汎化された能力を示すことができるか
Q3:新規タスクへの汎化
ゼロショットで新しいタスクに汎化することができるか
手法
本論文では,GLAM (Grounded LAnguage Models)という手法を提案しています.
これは,LLMを強化学習エージェントの方策として使用し,オンライン強化学習を使用して環境との相互作用の中で機能的にグラウンディングさせ(=記号操作の内的処理が,物理的な外的処理をモデル化・予測・制御すること),観測と報酬の情報をもとに,言語で記述された目標の達成を目指すという方法です.この手法の全体像を以下の図に示します.
問題設定
BabyAI [Chevalier-Boisvert et al., 2019]プラットフォームを,テキストのみで表現できるように改変したBabyAI-Textという環境を使用します.この環境はミニグリッドの世界(上図の黒い四角形部分にて表現されている)になっており,その中でエージェントが移動し,物体と相互作用することができ,指令コマンドはturn left, turn right, go forward, pick up, drop, toggleの6種類です.
行動の選択確率の計算方法
プロンプトを$p$とし,以下の式によって,あるアクションを表現した単語系列$a_i = {w_0, …, w_{|a_i|} }$の確率を算出します.
この対数を各アクションに対して計算し,
それらにsoftmaxを施した結果を各アクションの選択確率として使用します.
PPOを用いたfine-tuning
PPOはactor-critic系の強化学習アルゴリズムですので,価値関数ネットワークが必要です.そのため,LLMモデルの最初のデコーダーブロックの層に価値関数のヘッドを追加します.この設定のもとで,BabyAI-Text環境でLLMをfine-tuningします.
実験
事前訓練済みのFlan-T5 780M [Rae et al., 2021]という大規模言語モデルに対してGLAMを適用してfine-tuningし,その他のベースラインモデルとの比較を行いました.
提案手法はGFlan-T5と表現し,その他のベースライン手法は,NPAE-Flan-T5(事前訓練なしのバージョン),DRRN(通常の強化学習手法),Symbolic-PPO(BabyAI環境でシンボリックな観測情報を用いて学習するPPOエージェント.BabyAI-Textの言語情報は用いない)となっています.
各ステップにおいて,エージェントに対し,次のプロンプトを入力します.
アクションの候補を示す一文
Possible action of the agent: <list of actions>
エージェントの目標を示す一文
Goal of the agent: <goal>
過去3ステップの観測と2ステップのアクションを示す文章
Obs. 0: <description from BabyAI-Text at step t-2 >
Action 0: <action chosen by the agent at step t-2 >
Obs. 1: <description from BabyAI-Text at step t-1 >
Action 1: <action chosen by the agent at step t-1 >
Obs. 2: <description from BabyAI-Text at step t >
Action 2: <the next action to be chosen by the agent>
結果
Q1:サンプル効率
LLMエージェントが,タスクを解くためにどれくらい即座に適応できるかを調べるため,150万ステップの訓練を行いました.各エピソードごとに,以下の複数パターンから,ランダムに目標が設定されるようになっています.
Go to <object>:指定された物体のところに向かうタスク
Pick up <object>:指定された物体を拾うタスク
Put up <object A> then go to <object B> や Go to <object B> after pick up <object A>:物体を拾う行動と向かう行動を順番に行うタスク
Unlock <door>:鍵を使ってドアを開錠するタスク
このタスクに対する,4種類のエージェントの成功率は次の図のようになりました.
これをみると,提案手法のGFlan-T5のみが即座にタスクに適応できているのがわかります.
NPAE-Flan-T5との比較から,GFlan-T5がLLMの事前訓練による知識を有効活用することができていること,さらに,fine-tuningによって物体の概念の把握ができていることがわかります.
また,Symbolic-PPOとの比較から,言語情報がこのタスクの学習にうまく寄与していることがわかります.
まとめると,LLMが事前訓練で得た言語的事前知識のおかげで,fine-tuning後の強化学習タスクに対する性能が向上するということを示しています.
Q2:新規物体への汎化
BabyAI-Text環境でfine-tuningされたLLMエージェントが,fine-tuning時には見られなかった新しい物体に対応できるかを調査します.
結果は,次の表の(b),(c)に相当します.
それぞれ,(b)物体の名前を変えた場合,(c)創作された新しい物体を使用した場合です.
いずれの場合も,GFlan-T5は高いパフォーマンスを示しており,環境の構造や指示文をうまく表現するシンボルを獲得することができているとわかります.
Q3:新規タスクへの汎化
(d)目標のタスクの順番を変えたり,(e)アクションの表現を同義語に置き換えたり,(f)使用する言語を他の言語(フランス語)に置き換えたりした場合の,タスクへの対応能力を調査しました.
結果は先ほどの画像の(d), (e), (f)に該当し,どの場合も,GFlan-T5の成績はあまり良くはないものとなっていました.新規タスクへの汎化は難しいようです.
まとめ
今回紹介した論文はGLAMという手法を提案し,事前学習されたLLMをRLタスク用にfine-tuningすることで,環境のダイナミクスと言語という記号を対応づけることができることを示しました.
使用した環境は言語記述可能なものであるという限界点や,行動空間やLLMのモデルサイズにおける課題はありますが,これらの点は今後の研究で克服されるでしょう.
この記事に関するカテゴリー