155 Views
June 03, 22
スライド概要
2022/06/03
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP [DL Papers] A Generalist Agent Presenter: Manato Yaguchi (Hokkaido university, B3) http://deeplearning.jp/ 1
書誌情報 • タイトル: A Generalist Agent • 著者:DeepMind社の研究チーム • 論文: A Generalist Agent (deepmind.com) (05/22) • 概要:言語モデルの範疇にとどまらず、強化学習等のより広い領域で適用可 能な大規模モデルを構築することを行った研究 - 画像のキャプション生成や、対話や、ブロックを積むタスクなど
概要 • GPT-3のような大規模言語モデル を、制御問題やロボティックス領 域のdataも扱えるように拡張 • 異なるモダリティーのデータを1 つのモデルで扱うため、モダリ ティ―毎にtokenizeとembedding を行っている(e.g. text, 画像)
背景:Decision Transformer • TransformerをOffline RLに組み込んだ研究 - 長期の予測に優れている • Transformerには、GPT architecture を利用 • 過去K timestepの(a,R,s)を入力として、行動を決定論 的に出力 - ただしRは時刻Tまでに得られる報酬の和 𝑠𝑡 :状態, 𝑎𝑡 :行動, 𝑅𝑡 = σ𝑇𝑡 ′ =𝑡 𝑟𝑡 ′ From Decision Transformer ⇒様々な制御問題が、言語モデルと同様のアーキテク チャで解ける可能性を与えた
Tokenize 扱うデータによって、tokenizeの方法が異なる • Text:32,000のsubwordをもつSentencePieceによって、[0,32000)の整数 型に変換 • Image:ViTと同様にraster orderでパッチに分割後、各ピクセルを[-1,1] で正規化し、パッチサイズの平方根で割る • 離散値:row-major order で一列に並べる。各要素は[0,1024)の整数型 • 連続値:row-major order で浮動小数点値を1列に並べる。その後[-1,1]で mu-lawエンコードして、1024のビンで離散化し、+32,000する。 From Vision Transformer
Tokenize・Embedding • 観測情報([y,x,z]): • y: text token • X: image patch token • Z: 離散値や連続値であらわされる観測情報 • 行動情報(a) を用いて、すべてのtokenは以下のように纏められる。 この一連のデータを各トークンについて、パラメータ化されたembedding関数𝑓(・ ; 𝜃𝑒 )に通す。 ※ embedding関数は、各モダリティに応じて異なる振る舞いをする
Tokenize・Embedding • row-major order で浮動小数点値を1列に並べる。その後[-1,1]でmu-lawエンコードして、 1024のビンで離散化し、32,000を足す.(textの区間[0,32000)と被らないようにする) • mu-law encodeの式(区間[-1,1]に圧縮):
画像データのTokenize・Embedding • ViTと同様にraster orderでパッチ に分割後、各ピクセルを[-1,1]で 正規化し、パッチサイズの平方根 で割る • 各パッチごとにResNetに通し、 Embdddingを行う。この際、学習 可能なPosition Encodingも行う 2010.11929.pdf (arxiv.org)
Loss関数 • token化された情報sに対して、モデルの損失関数を次のように定める. ※mはマスク関数:𝑠𝑙がテキストまたはエージェントの行動を表すとき 𝑚 𝑏, 𝑙 = 1. それ以外のとき、𝑚 𝑏, 𝑙 = 0. • この損失関数に対するモデルの解釈としては、次の2つの要素が考えられる 1.トークンをembeddingするためのembedding関数を最適化 2. 過去のタイムステップの情報(𝑠1 , … 𝑠𝑙−1)から、次のタイムステップの情報𝑠𝑙 を予測する (transformerを利用)
Dataset • 様々なシュミレーション環境で学習したSoTAに近いエージェントから得たデータ ※訓練データとして用いる際には、報酬(reward)についてagentが達成可能な報酬の最大値の80%以上のデータのみで学習 すると効率が良い • webや本から集めた言語データセットや、キャプション付きの画像データ
結果 • 各タスクについて、50回の試行の平均値と、expertのスコアを比較し、各 閾値を超えたタスクの数を表したグラフ • 604タスク中450以上のタスクがexpertのスコアの50%以上のスコアを獲得
結果 • ロボットが色のついたブロックを積めるかを試したタスク • このタスクに特化したベースラインモデル(BC-IMP)と同程度の結果
結果 • 画像に対するキャプション生成を行った結果 • 画像や、テキストに対しても一定の結果を残している
分析結果:モデルのサイズ • モデルの大きさ(パラメータ数)がタスクのパフォーマンスに影響を与えるかを調査 • トークン数を固定し、各パラメータ数についてエキスパートのスコアに対する実際に得 られたスコアの割合で評価(全てのドメインの各タスクについて計算し平均をとる) ⇒ パラメータ数を大きくすることで更なる性能の向上が見込まれる
分析結果:分布外のデータ • 分布外(学習時に使用していない環境)における性能について、事前学習済みの Gatoをfinetuningすることによって性能評価 • この際に事前学習データとしてどのように選ぶのが良いかを知るためのablation studyを実施 (parameter数364Mで実験) ⇒ 事前学習データとしてどれを選ぶべきかは、タスクによって大きく異なる
分析結果:ロボティックス領域 • ブロックを積むタスクを通して、分布外のデータに対するロボティックス領域における性能 を評価 • 左のグラフからは、分布外のデータに関しても少ないepisode数でfinetuningを行っても良い結 果がでることが分かる • 右のグラフからは、モデルの大きさが大きい方が汎化性能が高く、少ないepisode数で良い結 果が出ることが分かる
まとめ • Transformerベースのシーケンスモデルが、様々な分野のタスクにおいて 有用であることを示した • few-shot学習による分布外のタスクに対しても一定の性能を残した • モデルのスケール(パラメータ数)を大きくすることで、更なる性能の向 上が見込まれると主張