Upgrade to Pro — share decks privately, control downloads, hide ads and more …

深層学習による自然言語処理 輪読会#4 資料

深層学習による自然言語処理 輪読会#4 資料

機械学習プロフェッショナルシリーズの「深層学習による自然言語処理」の輪読会の第4回資料。

5章「応用」

https://learn-stats-ml.connpass.com/event/243417/

Natural Language Processing by Deep Learning
section05

F994a1fd489d95ac93ae9610734a25bc?s=128

Yoichi Tokita

April 08, 2022
Tweet

More Decks by Yoichi Tokita

Other Decks in Science

Transcript

  1. 深層学習による⾃然⾔語 処理 輪読会 #4 2022/04/07 @yoichi_t

  2. ⾃⼰紹介 • tokita(@yoichi_t) • 所属:株式会社Glia Computing (https://www.glia-computing.com/) • 2018年8⽉に設⽴(Co-Founder) •

    機械学習/データ分析のPoC、導⼊⽀援、コンサル • 過去 • 広告会社で推薦システムの開発をやっていたり、警備会社で⼈物⾏動 の研究をしてました
  3. ⾃⼰紹介 • tokita(@yoichi_t) • チョコボールの秘密を解明するために、⽇々データを収集&解析 • その他の活動はこちら チョコボール 統計

  4. 5章 応⽤ 深層学習ベースの⾔語⽣成に関する応⽤問題を4例取り上げ、それら の課題とアプローチ(モデル構造)を解説(2017年1⽉時点) • 5.1 機械翻訳 • 双⽅向LSTM+注意機構 を基準に紹介

    • 5.2 ⽂書要約 • タスク設定の曖昧さ問題から、「⾒出し⽣成タスク」の定義と具体例 • 5.3 対話 • 対話タスクに特異なトピックとしての「話者交代」 • 5.4 質問応答 • 質問の種類によって問題の複雑さが変わる。「回答選択」問題にフォーカス
  5. 5.1 機械翻訳 • 機械翻訳における系列変換モデル(Enc-Dec model)が従来の 統計的なモデルを⼤幅に超える翻訳精度 • そこから、NN(深層学習)をベースにしたモデルが他の応⽤タスクに も展開されてきている •

    NLP分野として、機械翻訳タスクでの系列変換モデルの研究が主流の ⼀つ
  6. 機械翻訳の典型的なモデル • 注意機構付き系列変換モデル • ツール:OpenNMT • Encoder:2層双⽅向LSTM • Decoder:2層LSTM •

    評価(推論時)にはビーム探索を⾏う
  7. Encoder: 2層双⽅向LSTM • テキストp.126 図5.1 • 2.6.2節(p.28)に記載の双⽅ 向再帰ニューラルネット • RNNのユニットにLSTM

    • RNN層の最終状態 (ℎ! "#$, ℎ! "#%, ℎ$ &#$, ℎ$ &#%) をDecoderのRNN層の⼊⼒ に利⽤ • RNN層の各隠れ状態 ( ℎ' ( = ℎ' "#% + ℎ' &#%)を注 意機構に利⽤
  8. Decoder: 2層LSTM • テキストp.128 図5.2 • リカレント層、attention層、出⼒ 層と分けて考える • リカレント層は単⽅向の再帰ニューラ

    ルネット • ⼊⼒として、最終的な隠れ状態もconcat • リカレント層の最終隠れ状態を使って attention重みを計算 • 関数Ωとして式(4.7)(p.94)の⼆段⽬のよう なものを利⽤ • 学習時は学習データをone-hot vecと して⼊⼒ • 評価時は各タイミングでの推論結果を ⼊⼒(ビーム探索を⾏うのでビーム幅 分計算)
  9. 機械翻訳の課題 • 語彙の量と語彙のカバーに関する問題 • 語彙数が多すぎると計算量が多くなる(4.3節でも扱った) • 未知語を完全に無くすことは不可能 • アプローチ •

    ⽂字単位でtokenを⽣成 • ⽂字の数は単語(⽂字の組み合わせ)の数より圧倒的に少ない(特に英語など) • 系列の⻑さが単語と⽐較して⻑くなってしまい、予測誤差が積み上がる可能性が ある。 • バイト対符号化(byte pair encoding; BPE) • ⽂字と単語の中間として、出現頻度の多い⽂字の組み合わせでtokenを⽣成 • R.Sennrich+, 2016, Neural Machine Translation of Rare Words with Subword Units • (個⼈的感想)BPEが主流という認識だったが、ここ最近ByT5などの⼿ 法が注⽬されているらしい。(最近の動向知りたい)
  10. 機械翻訳の課題 • 過剰/不⾜⽣成問題 • 同じ単語やフレーズを繰り返し⽣成してしまったり、必要なフレーズ を無視してしまう問題が知られている • これは、⽣成時に⼊⼒⽂のどの部分に対応する箇所まで⽣成したかを Decoderが認識していないことが要因 •

    アプローチ • 被覆(coverage)という概念を導⼊ • アテンション重みは⼊⼒系列の隠れ状態のどのtokenに注⽬するかを計 算したもの。これを利⽤して、全ての⼊⼒tokenに注⽬が当てられたか などを計算 • H.Mi+, 2016, Coverage Embedding Models for Neural Machine Translation • Z.Tu+, 2016, Modeling Coverage for Neural Machine Translation
  11. 5.2 ⽂書要約 • ⽂書要約は⼊⼒⽂章から短い要約⽂を⽣成するタスクであり、 翻訳問題と似た設定だが、2点の⼤きな課題がある • 訓練⽤データの⽣成 • ⽂脈として多くの⽂章が必要であり、データの規模が⼤きくなる •

    タスク定義の曖昧さ • 要約のレベル(要約率)の違いでタスクが変わってしまう • 「要約⽂」と⾔ってイメージするものが⼈によって違う • 「⾒出し⽣成タスク」 • A.M.Rush, 2015, A Neural Attention Model for Abstractive Sentence Summarization • ニュース記事の1分⽬を⼊⼒し、⾒出しを⽣成する • 順伝播型ニューラル⾔語モデルと注意機構を組み合わせて符号化器を構成 • タスクの定義が明確、学習データを容易に集められる
  12. 注意機構を⽤いる⾒出し⽣成モデル • A.M.Rush, 2015, A Neural Attention Model for Abstractive

    Sentence Summarization • モデル定義 • 順伝播型モデルの出⼒(nnlm())と注意機構の出⼒(enc())の和に基 づいて⽣成確率を導出
  13. 注意機構を⽤いる⾒出し⽣成モデル • テキストp.138~139 • nnlm() • 普通の順伝播型NN • ⾔語モデルの部分なの で、⽣成語の評価が⾏

    われる • enc() • ⼊⼒⽂と⽣成済みの単 語に合わせたEncoder • Encoder隠れ状態に相 当する ) 𝑋は移動平均 (理由は未調査)
  14. 再帰ニューラルネットによる拡張 • 前⾴のモデルが提案された後、Encoder-Decoderモデルが複数 提案 • 翻訳タスクで⽤いられるモデルと基本的には同じモデルが利⽤される ようになった • ただしこれは⾃明ではなかった •

    ⾒出し⽣成のための⾔語モデルは、「⾒出し(要約⽂)」という特性 上、通常の⾔語モデルとは異なる傾向にあると考えられてきた • ⽂構造が不⾃然、体現⽌めなど • なので、⼊⼒⽂全体を⽂脈として使う(RNN)よりも局所的な情報(FFNN)を 利⽤した⽅が良いとも考えられてきていた • 通常の⾔語モデルよりも問題設定としては難しい
  15. ⽂書要約の今後の発展 • 要約率 • 要約⽂の⻑さは⾃明ではない • 事前に与える⽂字数で要約⽂を⽣成するようなモデルが提案 • Y.Kikuchi, 2016,

    Controlling Output Length in Neural Encoder-Decoders • 残り⽂字数の埋め込みベクトルを、複合化器の⼊⼒𝑦!"# と合わせて⼊⼒する • 「残り⽂字数の埋め込みベクトル」??
  16. ⽂書要約の今後の発展 • 意味表現の利⽤ • S.Takase, 2016, Neural Headline Generation on

    Abstract Meaning Representation • 「意味表現」に対応する複合化器を提案し、そこで得られるベクトルを⾜し合わ せる • 意味表現:述語(動詞)を中⼼として主語や⽬的語の関係、固有名詞と代名詞が 同じものを⽰しているかなどを表すグラフ構造 • コピー機構 • ⽂書要約では、⼊⼒された単語をそのまま利⽤することが多い • ⼊⼒⽂に現れたtokenをそのままコピーする機構を導⼊し効果的な⽣成 を狙う
  17. 5.3 対話 • 対話システム(dialog system) • ⼈とコンピュータが会話(⾳声に限らない)をするためのシステム • ⾮定型な操作を⾏うための⾃然なUIとして注⽬ •

    対話モデル • 対話⽂脈を参照して応答を予測(⽣成)するタスク • 対話⽂脈:話者交代で区切られた発話系列 • 話者交代:話者が変わること。対話は複数の話者がいることが特徴的。(図5.5)
  18. 対話の基本的なモデル • 対話⽂脈をC、応答をRとすると以下の確率モデル • 𝑝 𝑅|𝐶 • Enc-Decモデルとして考えると、対話⽂脈CをEncoderに⼊⼒し、応答 Rを⽣成 •

    話者交代の表現 • 話者交代のタイミングに特殊 なtokenを挿⼊ • 発話の終わり、話者の役割など の意味を持たせたtoken テキストp.146, 図5.6
  19. その他の対話モデル • 話者交代と発話者を積極的にモデル化した⼿法 • 階層的な⽂脈の符号化 • 前⾴のモデルに加え、発話単位で更新される⽂脈状態を上位の階層に位置付けた • テキストp.147, 図5.7

    • I.L.Serban+, 2016, Building End-To-End Dialogue Systems Using Generative Hierarchical Neural Network Models • 話者交代のモデル化 • 話者IDを使って話者の「個性」を反映するように話者⾃体をモデル化する • テキストp.148, 図5.8 • J.Ji+, 2016, A Persona-Based Neural Conversation Model • 話者の個性や、質問に対して⼀貫した応答が期待できる
  20. その他の対話モデル • 話者交代と発話者を積極的にモデル化した⼿法 • 話者交代のモデル化 • 対話内の話者をモデル化 • H.Ouchi+, 2016,

    Addressee and Response Selection for Multi-Party Conversation • 階層的に⽂脈状態を符号化する仕組みをベースに、話者毎に⽂脈状態を分割する。つ まり、話者毎に⽂脈状態を持つ。 • 話者の特定精度も向上する
  21. 対話モデルに関する課題 • 短い応答(Yes/Noなど)が⾼頻度に現れることがある • 要因 • 学習データ中に短い応答が⾼頻度で現れてしまう • ⽂脈と応答の関係が本質的に曖昧(後述) •

    ⼗分⻑い⽂脈を符号化して応答する能⼒がモデルにない • アプローチ • 相互情報量𝐼 𝑅, 𝐶 に基づいて応答の⽣成 • J.Ji+, 2016, A Diversity-Promoting Objective Function for Neural Conversation Models • 相互情報量の最⼤化と系列変換モデルの統合は容易ではない
  22. 対話モデルに関する課題 • ⽂脈と応答との関係が曖昧であり、⾃動評価が困難 • ⽂脈によっては、評価データの応答と意味的に逆であっても応答とし ては妥当であるようなケースもある • アプローチ • 複数の応答候補に⼈⼿で点数をつける

    • ⼤規模な評価データを⽣成することが困難 • そもそも応答を⽣成するのではなく、複数の候補から妥当な応答を選択する「応 答選択タスク」に問題設定を変える • 応答候補集合を順位づけして、k番以内に正しい応答が⼊ってくる割合で評価 • 5.4の対話システムにおける「回答選択タスク」の平均適合率 • 検索システムとの連動を想定していて、あらかじめ検索システムで応答候補を絞り込 み、そこから順位付けするような想定
  23. 対話モデルに関する課題 • (⾃動評価に関連して)1回の応答予測を評価単位にしている ことが多い • 実際の対話は発話の繰り返しなので、⼀連の応答全体を評価する⽅が ⾃然 • また、システムと⼈との対話では、システムによる予測応答が対話⽂ 脈に⼊ってきてしまう。このため、間違った応答を⽣成した場合に、

    妥当でない応答を繰り返してしまうことがある。 • このような問題に対処するためにも⼀連の対話についての評価が必要
  24. 5.4 質問応答 • 質問応答 • ⾃然⾔語で与えられた質問に⾃然⾔語で回答を⾏うタスク • 質問の種類 • 事実型/⾮事実型質問応答

    • 回答が具体的な名詞となるかならないか(Who, Where / Why, How) • クローズド/オープンドメイン質問応答 • 対象とする分野の違いによる区分 • 画像質問応答 • 画像をに対して質問応答を⾏うタスク • ⽂書読解 • ⽂書の内容を理解しないと答えられないタスク • どのような質問に答えることが期待されていて、どのような回答が必要なのかをはっき りさせることが必要(質問種類によってタスク設計や難易度が変わってくる)
  25. 質問応答のタスク分解 • 質問応答は複雑なのでいくつかの処理に分解することが多い • 典型例(順番に) • 質問解析:どのような質問なのかの解析 • ⽂書検索:質問に関連する⽂書の検索 •

    回答抽出:検索結果から回答候補の抽出 • 回答選択:回答候補から回答の選択 • 「質問応答タスク」としては、「回答選択タスク」に注⽬する 検索技術 深層学習の利⽤
  26. 回答選択問題 • 問題設定 • 質問⽂𝑞とN個の回答候補 𝑎$ , ⋯ , 𝑎+

    がある • 𝑞に対する解答を 𝑎$ , ⋯ , 𝑎+ から選択する(分類問題) • アプローチ • 𝑞と 𝑎$ , ⋯ , 𝑎+ をそれぞれベクトル化(Encoding)して、適切な回答を選 択できるようなスコアを算出 • ベクトル化の⽅法とスコアリングが問題 • ベクトル化 • 再帰ニューラルネットなどを利⽤してEncoding • スコアリング • 質問ベクトルと回答候補⽂ベクトルとの類似度𝑓(𝑣 $ , 𝑣(&!))を算出(cos類似度な ど)
  27. 回答選択問題の学習 • 損失関数 • 損失関数(確率モデル)が定義できれば、勾配法を利⽤して学習可能 • 式5.10 (m-{f(a+)-f(a-)})と変形できることから、f(a+)が⼤きくて、 他はそれよりも⼩さくなることを期待している損失関数と いう理解?

  28. 回答選択問題の評価 平均適合率の平均や平均逆順位が使われる • 平均適合率の平均 • 平均適合率:情報検索などの分野で順位付けの評価をする指標 • 適合率:予測したK個の回答候補の中にT件の正解があったとした場合、適合率 はT/Kとなる指標(表5.1参照) •

    平均適合率:正解についての適合率の平均を取ったものが平均適合率 • 平均逆順位 • 逆順位:K個の候補⽂において⼀番良い順位の正解をrとした時に1/rと なる指標(表5.1参照)
  29. end-to-end質問応答 • 部分問題に分割するのではなく、質問応答全体をニューラル ネットで解決しようとする試み • 記憶ネットワークを質問応答のタスクに適⽤する研究が⾏われている • bAbIタスク • J.Watson+,

    2016, Towards AI-Complete Question Answering: A Set of Prerequisite Toy Tasks • 質問応答のタスクを解くことで、⾃然⽂の理解と推論能⼒を測ることを⽬的としたタ スク • 上記の論⽂中で記憶ネットワークを利⽤したモデルを使って実際に上記のタスクにつ いてのスコアを実験している(モデルの詳細は確認していないです。。。)
  30. まとめ • 4つの応⽤タスクについて、具体的なモデル例と課題などを眺めてきた • 書籍は2017年初版なので、現在では流れが⼤きく変わっていると思う • 機械翻訳 • 注意機構付き2層双⽅向LSTMモデル(Encoder)を眺めた •

    ⽂書要約 • タスク設定の曖昧さが問題。機械翻訳と同様のEnc-Decモデルが使われるようになっ てきた • 対話 • 話者交代があるのが特徴。評価指標の設計が困難。 • 質問応答 • 情報検索と回答選択(深層学習の利⽤)と問題を分けて解くアプローチがある。記 憶ネットワークを利⽤してend-to-endなモデルも提案されている。