$30 off During Our Annual Pro Sale. View Details »

論文紹介 / PIGLeT: Language Grounding Through Neuro-Symbolic Interaction in a 3D World

Kyosuke Nishida
September 09, 2021

論文紹介 / PIGLeT: Language Grounding Through Neuro-Symbolic Interaction in a 3D World

第13回最先端NLP勉強会の発表スライドです.
論文: https://aclanthology.org/2021.acl-long.159/

Kyosuke Nishida

September 09, 2021
Tweet

More Decks by Kyosuke Nishida

Other Decks in Research

Transcript

  1. 論⽂紹介
    紹介者: ⻄⽥京介(NTT⼈間情報研究所)
    2021/09/16 @ 第13回最先端NLP勉強会

    View Slide

  2. • 何をする研究か︖
    – ⾃然⾔語と実世界のグラウンディングにneuro-symbolicな
    アプローチで取り組む
    – 現在の状態と⾏動から「次に何が起きるか」を⾔語や記
    号表現で予測する
    • 貢献は何か︖
    – データセット PigPen を整備・公開
    – Physical dynamicsモデルと⾔語モデルを分離して学習可
    能なモデル PIGLet を提案
    • 嬉しさは︖(個⼈的感想)
    – ⾝体性を有するAIの実現へ向けた重要なステップの達成
    – 事前学習済⾔語モデルと,実世界の物理的な
    commonsenseの知識を結びつける知⾒の獲得
    まとめ
    2

    View Slide

  3. • 本研究のセットアップ
    – タスク定義(NLU,NLG)
    – データセット PIGPeN
    • 提案モデル
    – PIGLet の構成
    – 物理ダイナミクスモデルの学習
    – ⾔語モデルの事前学習
    – ⾔語モデルと物理ダイナミクスの結合
    • 評価実験
    – NLUタスク
    – NLGタスク
    – ⾔語モデルの事前学習内容の影響
    3
    ⽬次

    View Slide

  4. • 3Dシミュレーション環境における
    初期状態 ⃗
    𝑜 × ⾏動 𝑎 → ⾏動結果 ⃗
    𝑜!のモデル化
    本研究で取り組むタスク(1)
    ⾏動 𝑎(⾔語表現)
    初期状態 ⃗
    𝑜 (記号表現)
    物体の属性値集合
    ⾏動結果 ⃗
    𝑜!(記号表現)
    物体の属性値集合
    4

    View Slide

  5. • 3Dシミュレーション環境における
    初期状態 ⃗
    𝑜 × ⾏動 𝑎 → ⾏動結果 ⃗
    𝑜!のモデル化
    本研究で取り組むタスク(2) 視覚情報の理解(物体検
    出など)はスコープ外
    ⾏動結果 ⃗
    𝑜!(⾔語表現)
    初期状態 ⃗
    𝑜 (記号表現)
    物体の属性値集合 ⾏動 𝑎(記号表現)
    5

    View Slide

  6. • 280k Transitions( 初期状態 ⃗
    𝑜 × ⾏動 𝑎 → ⾏動結果 ⃗
    𝑜! ︔
    すべて記号表現)を3dシミュレータ THOR により作成.
    – 1つの状態を表す物体数は最⼤2個まで
    – 物体 126種(125?),⾏動 13種(10-20?),属性 42種
    • 2k Transitionsについて⾔語説明を付与
    – Train: 500(30種の物体についてはtest時”unseen”とするため除外)
    – Val: 500,Test: 1000
    6
    データセット PIGPeN
    280k (記号表現)
    2k (⾔語説明)

    View Slide

  7. • 本研究のセットアップ
    – タスク定義(NLU,NLG)
    – データセット PIGPeN
    • 提案モデル
    – PIGLet の構成
    – 物理ダイナミクスモデルの学習
    – ⾔語モデルの事前学習
    – ⾔語モデルと物理ダイナミクスの結合
    • 評価実験
    – NLUタスク
    – NLGタスク
    – ⾔語モデルの事前学習内容の影響
    7
    ⽬次

    View Slide

  8. PIGLeT モデル構成の概要
    • 記号表現を扱う物理ダイナミクスモデルと⾔語モデルに分解
    してモデリング
    8

    View Slide

  9. (a) 物理ダイナミクスモデル
    • 物理ダイナミクスモデルで,初期状態 ⃗
    𝑜 × ⾏動 𝑎 → ⾏動結
    果 ⃗
    𝑜! をすべて記号表現で学習する
    初期状態は
    物体(最⼤2個)
    の属性値集合
    で表現
    ⾏動の
    記号的な表現
    初期状態から
    変化する属性値
    を予測
    記号表現の系列を扱う
    Transformer
    encoder-decoder
    9

    View Slide

  10. 10
    物理ダイナミクスモデルの学習(1)
    • 物体エンコーダ(3層Transformer)により,
    2つの物体(属性値の系列)をベクトルℎ"#
    , ℎ"$
    に変換
    (1)

    View Slide

  11. 11
    物理ダイナミクスモデルの学習(2)
    • ⾏動エンコーダ(MLP)により,⾏動名𝑎と,⾏動の対象に
    取る2つの物体名𝑜%#
    , 𝑜%$
    の埋め込みを基にベクトルℎ%
    に変換
    𝐡%
    = MLP 𝐄 𝑎 , 𝐄 𝑜%#
    , 𝐄 𝑜%$
    (2)

    View Slide

  12. 12
    物理ダイナミクスモデルの学習(3)
    • ⾏動表現ℎ%
    を基に物体の表現ベクトルℎ"#
    , ℎ"$
    を変換する
    – このモジュールが「物理シミュレーション」を担当
    – 2つの物体をまとめて変換することを global アプローチと呼んでいる
    (1)の出⼒
    (2)の出⼒
    (1)
    (2)
    (3)

    View Slide

  13. 13
    物理ダイナミクスモデルの学習(4)
    • 変換後の表現ベクトル ,
    ℎ"
    を基に,⾏動結果の物体の属性値
    を1つずつデコードして⽣成する
    ⽣成済の属性値
    (3)の出⼒
    (3) (4)

    View Slide

  14. (b) ⾔語モデルの事前学習
    • ⾃⼰回帰型⾔語モデル(smallest GPT-2; 117M)をWikipedia
    とBookコーパスで事前学習
    14

    View Slide

  15. (c) ⾔語と物理ダイナミクスの統合
    • ⾔語モデルによる⾏動の表現を,物理ダイナミクスモデルの
    表現へ転移して⾔語と実世界をグラウンディング
    同じベクトル
    表現になる
    ように学習
    15
    ⾏動の
    記号表現
    ⾏動の
    ⾔語表現

    View Slide

  16. 16
    (1) ⾏動を⾔語で表現する
    • ⾏動⽂を⾔語モデル(GPT-2)で状態ベクトルℎ%
    にencode
    • NLUタスクにおいて⾔語モデルの出⼒を⾏動エンコーダの
    代わりに使っても物体デコーダの出⼒が壊れないように学習

    View Slide

  17. 17
    (2) 状態を⾔語で説明する
    • MLPで(初期状態, ⾏動, ⾏動結果)を要約した表現ℎ&"!
    , ℎ&""

    GPT-2に渡して,⾏動結果を表す⽂章を⽣成・学習
    • NLUタスク(⾔語⽣成しない)の場合でも,この学習は精度
    向上に効果がある
    ℎ!"!
    , ℎ!""

    View Slide

  18. • 本研究のセットアップ
    – タスク定義(NLU,NLG)
    – データセット PIGPeN
    • 提案モデル
    – PIGLet の構成
    – 物理ダイナミクスモデルの学習
    – ⾔語モデルの事前学習
    – ⾔語モデルと物理ダイナミクスの結合
    • 評価実験
    – NLUタスク
    – NLGタスク
    – ⾔語モデルの事前学習内容の影響
    18
    ⽬次

    View Slide

  19. • タスク定義
    – 初期状態 (属性値)× ⾏動(⾔語)→ ⾏動結果 (属性値)
    • No Change
    – 初期状態の属性値のまま出⼒
    • Text-to-Text
    – GPT-3,T5
    – Object1,2の属性値を
    JSONスタイルで⼊⼒・出⼒する
    • BERT-style
    – ⼊⼒︓初期状態の属性値を物理ダイナ
    ミクスモデルでembeddingして
    BERTに与える + ⾏動の⾔語情報
    – 出⼒︓hidden-stateのpooling
    vectorから属性値を予測
    19
    NLUタスクのベースライン

    View Slide

  20. • 物体単位で全属性値を正確に予測できるかの指標Accuracy
    について,提案⼿法は⼤幅に精度向上
    • 提案モデルでは訓練時に未知の物体についても精度が良い
    20
    評価結果(NLUタスク)

    View Slide

  21. 21
    Ablation study (NLUタスク)
    • 2物体同時(global)に状態変化を予測するのと,⾏動結果
    の⽂章の⾔語⽣成lossも使うことで,記号表現のみで学習す
    るupper boundに迫る精度が出ている
    (物理ダイナミクスモデルの)

    View Slide

  22. • タスク定義
    – 初期状態 (属性値)× ⾏動(記号表現)→ ⾏動結果 (⾔語)
    • Text-to-Text
    – T5: Object1,2の属性値と⾏動をJSONスタイルで⼊⼒・出⼒する
    • LM baseline
    – MLP_applyをしない提案⼿法(物理ダイナミクスモデルによる
    物理シミュレーションを⾏わない)
    22
    NLGタスクのベースライン

    View Slide

  23. 23
    評価結果(NLGタスク)
    • 提案⼿法がベースラインを上回る結果
    • 物理シミュレーション結果が⾔語⽣成にも貢献している
    • 主観評価(Faithfulness)では⼈間と⼤きな差

    View Slide

  24. 24
    出⼒例
    • 提案⼿法では訓練時に出現しないobject(Mug)についても
    ある程度正しく予測できている è ⾔語モデルの効果︖
    マグカップを空にする
    コーヒーメーカー
    をオンにする
    正解
    ⾔語⽣成で
    マグカップに⾔及できていない
    正解

    View Slide

  25. 25
    ⾔語モデルの事前学習の効果
    • ⾔語モデルの事前学習コーパスからunseen objectsに関する
    ⽂章を除いてみる(PIGLeT ZeroShotLang)
    – 例えばMugは2万回コーパスに出現
    • ⾔語モデルで事前にobjectのcommonsenseを獲得できている
    ⽅が精度は良い(ただし,それほど悪くなっていない)

    View Slide

  26. • 何をする研究か︖
    – ⾃然⾔語と実世界のグラウンディングにneuro-symbolicな
    アプローチで取り組む
    – 現在の状態と⾏動から「次に何が起きるか」を⾔語や記
    号表現で予測する
    • 貢献は何か︖
    – データセット PigPen を整備・公開
    – Physical dynamicsモデルと⾔語モデルを分離して学習可
    能なモデル PIGLet を提案
    • 嬉しさは︖(個⼈的感想)
    – ⾝体性を有するAIの実現へ向けた重要なステップの達成
    – 事前学習済⾔語モデルと,実世界の物理的な
    commonsenseの知識を結びつける知⾒の獲得
    まとめ
    26

    View Slide

  27. 参考資料
    27

    View Slide

  28. • 3Dモデリングされた室内環境においてロボットの様々な⾏
    動をシミュレーション可能
    28
    環境︓AI2-THOW [Kolve et al. ,2017]
    Eric Kolve, Roozbeh Mottaghi, Daniel Gordon, Yuke Zhu, Abhinav Gupta, Ali Farhadi:
    AI2-THOR: An Interactive 3D Environment for Visual AI. CoRR abs/1712.05474 (2017)

    View Slide

  29. • 最⼤2つの物体(126種)で表現される
    – Pan, Egg, Vase, Faucet, Mirror, Sink, Apple ,Fridge, etc.
    • 各物体は42種の属性値を持つ
    – 含む/含まれる物体,質量,サイズ,温度,その他多数の真偽値
    29
    状態の記号表現

    View Slide

  30. • 最⼤2つの物体を引数に取る関数として表現される
    – 10〜20種︖ 数字がバラバラ
    • Fig. 2 (20)
    • Section 2.1 (10)
    • Appendix B (11)
    • 公開データ* (13)
    30
    ⾏動の記号表現
    ⾏動例(Appendix B)
    *https://github.com/rowanz/piglet
    /blob/main/data/annotations.jsonl

    View Slide

  31. 31
    評価結果(NLUタスク︔属性値レベル)

    View Slide