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

宮脇+'23 - プログラム生成・実行による構成的推論, LLM Meetup Tokyo #3

宮脇+'23 - プログラム生成・実行による構成的推論, LLM Meetup Tokyo #3

Shumpei Miyawaki

July 05, 2023
Tweet

More Decks by Shumpei Miyawaki

Other Decks in Technology

Transcript

  1. プログラム⽣成・実⾏による構成的推論
    Shumpei Miyawaki
    keywalker,inc. / Tohoku Univ.
    @catshun_
    地理空間情報 × ⾃然⾔語処理 への応⽤

    View Slide

  2. P.1
    LT ⽬的
    • ReAct, function calling とは異なる推論⽅法として プログラムベース構成的推論 を紹介
    • 発表を通して「推論⽅法の⻑所・短所の議論」「これ出来そう」のような議論ができると嬉しい
    https://note.com/catshun_/n/na18e2c470b2f

    View Slide

  3. プログラム⽣成・実⾏による構成的推論
    Gupta+’23 - Visual Programming:
    Compositional Visual Reasoning Without Training
    (CVPR 2023 Best Paper)
    https://github.com/allenai/visprog/tree/main

    View Slide

  4. P.3
    構成性 [Marelli+’14; Partee+’84; Frege 1892]
    ⽂や句の意味は、単語の意味と⽂の構造に従って構成的に理解される
    プログラム ⽣成・実⾏ による 構成的推論
    複雑なタスク は構成性を仮定して サブタスク に分解 [Krishnamurthy+’13; Andreas+’16]
    (従来)既製パーサ性能 [Andreas+’16]、⾼い学習コスト [Hu+’17] が問題であった
    (現在)汎⽤性の⾼い LLM の出現 によって 既製パーサ性能依存・学習コスト の問題が緩和
    (現在)プロンプトによるタスク分解 [Khot+’22; Dua+’22; Zhou+’23; Press+’23] も有効性が検証されている
    参考︓岡崎 (東北⼤) +’15 – 単語の分散表現と構成性の計算モデルの発展
    https://www.slideshare.net/naoakiokazaki/20150530-jsai2015

    View Slide

  5. P.4
    プログラム ⽣成・実⾏ による 構成的推論
    Gupta+'23 - Visual Programming: Compositional Visual Reasoning Without Training (CVPR)
    ① 物体検出(ヒト) ② 物体検出(ラクダ) ⑤ 算術演算
    2 = 1 + 1


    ʢ72"ʣώτͱϥΫμͷ߹ܭ਺͸ʁ
    物体1
    = localize ( img=画像in
    , query=“ヒト” )
    物体2
    = localize ( img=画像in
    , query=“ラクダ” )
    個数1
    = count ( boxes=物体1
    )
    個数2
    = count ( boxes=物体2
    )
    答え = eval ( expr= “{個数1
    } + {個数2
    }” )





    1. プログラム⽣成︓ 事前に定義された関数集合を⽤いて LLM がプログラムを⽣成
    2. プログラム実⾏︓ ⽣成したプログラムを実⾏し最終出⼒を得る
    タスク⼊⼒

    View Slide

  6. P.5
    プログラム ⽣成・実⾏ による 構成的推論
    Gupta+'23 - Visual Programming: Compositional Visual Reasoning Without Training (CVPR)
    GPT-3 に few-shot のプログラム事例を与えて
    対象タスクのプログラムを⽣成(右図)
    BMW を Audi に修正、曇り空を晴れ空に修正
    ⾚い⾞を⻘い⾞に修正
    ⽩い Audi をポップに彩って
    Nicole Kidman の顔を :p に修正して

    View Slide

  7. P.6
    プログラム ⽣成・実⾏ による 構成的推論
    Gupta+'23 - Visual Programming: Compositional Visual Reasoning Without Training (CVPR)
    ③ の⽂字列を解析
    {
    ”kwargs”: { ”boxes”: ”物体1
    ” },
    ”function”: ”count”,
    ”output”: ”個数1

    }
    物体1
    = localize ( img=画像in
    , query=“ヒト” )
    物体2
    = localize ( img=画像in
    , query=“ラクダ” )
    個数1
    = count ( boxes=物体1
    )



    GPT-3 が⽣成したプログラムを逐次実⾏ 実⾏結果を保存
    ”物体1
    ”: ,
    ”物体2
    ”: ,
    program.state
    key = kwargs[“boxes”]
    boxes = program.state[key]
    program.state[output] = len(boxes)
    ③ を実⾏
    ③ の結果を保存

    View Slide

  8. P.7
    結局どれが良いの︖(個⼈的妄想)
    推論⽅式 ⾔語
    (柔軟性)
    LLM 呼出 内省・検証 リスク
    ReAct ボトムアップ ⾃然⾔語
    (⾼い)
    思考回数分 Reflexion
    hallucination
    snowballing
    function calling ボトムアップ ⾃然⾔語
    (⾼い)
    思考回数分
    (×1~2)
    ︖ プログラマ依存
    プログラム
    構成的推論
    トップダウン プログラム⾔語
    (低い)
    プログラム⽣成分 PEARL プログラマ依存
    A. タスク設計に応じて柔軟に使い分けるのが良い
    プログラムベース推論が優れるのは︓
    ・タスク間で多くのサブタスクが共通する場合(視覚タスクでいうと detect, crop など)
    ・⼊⼒と出⼒の型が⼀意に定まる再現性のある処理(読書感想⽂などは不向き)

    View Slide

  9. アプリケーションの簡単な紹介
    モチベーション > 詳細 の話をするので共感いただけた⽅、
    後ほどお話しできると幸いです︕
    https://note.com/catshun_/n/na18e2c470b2f

    View Slide

  10. P.9
    どんなアプリケーションか︖
    🙆 ⾸都圏の⼋⽉に⾏われる花⽕⼤会
    (動機)地理空間情報の関連タスク(旅⾏計画・マップ作成など)ではサブタスクが共通している
    (概要)マップ作成アプリケーション(ToDo: 旅⾏計画)
    1. ユーザからのクエリ解析
    2. “⾸都圏 ⼋⽉ 花⽕⼤会” で Google 検索
    3. 検索結果からクエリに該当する場所情報を取得
    4. 各場所に対してジオコーディング
    5. 結果を Google Map 上にプロット
    これらのサブタスクは旅⾏計画等でも共通する
    → プログラムベース構成的推論 を採⽤

    View Slide

  11. P.10
    アプリケーション構成図

    View Slide

  12. P.11
    興味︓マルチモーダル × ⾔語媒介推論
    ⾔語 Enc 記憶領域 ⾔語 Dec
    多くのアプリケーションの対象範囲
    実世界の事象 実世界へ投影
    ここをやりたい ここ
    ×
    時間変化 空間変化
    旅⾏先到着など GPS 情報が変化したらユーザ嗜好に合わせて
    歴史情報、アニメ聖地、飲⾷店マップ等の旅⾏ガイドを⾃動で作成する
    → 旅⾏計画~旅先~振り返り をサポートしてくれる旅⾏代理エージェント

    View Slide

  13. P.12
    動機︓「検索からマップ表⽰まで」のシームレスな接続をしたい
    じゃらん AI や Google Map などは素晴らしいアプリケーションだが、
    検索結果と地理空間情報が必ずしもマッチしている訳ではない
    ⾔語 Enc 記憶領域 ⾔語 Dec
    実世界の事象 実世界へ投影

    View Slide

  14. P.13
    さいごに
    もしモチベーションに共感された⽅がいましたら、
    後ほどお話しできると幸いです︕

    View Slide