【IT Text 自然言語処理の基礎】第11章:応用タスク・まとめ

895 Views

January 07, 24

スライド概要

自然言語処理の基礎の輪読会第12回の発表スライドです。
2024年1月11日(木) 18:30~

profile-image

AI・機械学習を勉強したい学生たちが集まる、京都大学の自主ゼミサークルです。私たちのサークルに興味のある方はX(Twitter)をご覧ください!

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

2023年度後期輪読会#12 応用タスク・まとめ 京都大学理学部 3回生 松田拓巳 0

2.

11章:応用タスク・まとめ この章で学んでほしいこと 目標1 機械翻訳・質問応答・対話といったタスクを どのように実現するかを概観する 目標2 自然言語処理手法の過去と現在を学ぶ 1

3.

11章:応用タスク・まとめ 目次 1. 機械翻訳 2. 質問応答 3. 対話 4. 自然言語処理の過去・現在 2

4.

1. 機械翻訳 3

5.

1. 機械翻訳 1.1. 機械翻訳手法の分類 ニューラル機械翻訳 ⚫ RNNやTransformerなどの 系列変換モデルで翻訳する ルールベース機械翻訳 ⚫ 直接変換方式 変換 原文 用例ベース機械翻訳 ⚫ 対訳コーパスの翻訳事例を編集 したり組み合わせたりして翻訳 統計的機械翻訳 ⚫ 翻訳モデルと言語モデルを使っ て翻訳する(詳細は次ページ) ⚫ トランスファ方式 原文 ⚫ 訳文 解析 変換 生成 訳文 中間言語方式 原文 解析 中間言語 生成 訳文 4

6.

1. 機械翻訳 1.2. 統計的機械翻訳の詳細 雑音のある通信路モデル(英日翻訳) 翻訳モデル𝑷(𝒙|𝒚)の構築方法(IBMモデル1) 𝑥:英文,𝑦:日本語文 単語アライメント(単語対応)を考える 𝑦ො = argmax 𝑃 𝑦 𝑥 ベイズの定理 𝑃 𝑥 𝑦 = ෍ 𝑃 𝑥, 𝑎 𝑦 𝑎 𝑦 𝑃 𝑥𝑦 𝑃 𝑦 = argmax 𝑃 𝑥 𝑦 = argmax 𝑃 𝑥 𝑦 𝑃 𝑦 単語対応 1/𝑁 =෍ 1+ 𝑦 𝑥 𝑥 𝑎 𝑦 雑音のある通信路 復号化=英日翻訳 英語 𝑥 𝑖 𝑖=1 単語𝑦𝑎 𝑖 が単語𝑥𝑖 に 翻訳される確率 翻訳モデル 言語モデル 日本語 𝑦 ෑ 𝑝 𝑥𝑖 𝑦𝑎 ※詳しく知りたい人はこちらを参照 ・IBM alignment models(Wikipedia) ・言語情報学 第9回 統計的機械翻訳、対訳抽出(東大OCW 講義資料) ・「IBM model 1」で検索 5

7.

1. 機械翻訳 1.3. 多言語翻訳 言語対の個数だけモデルが必要? ⚫ 同じ意味の文は、言語に関わらず 同じような潜在表現になっている! n個の言語すべての言語対に対して 機械翻訳を実現するには 𝑛 𝑛−1 𝑛 C2 = 2 個のモデルが必要…。 特殊トークンを使えば1つでOK! ⚫ 先頭に<2ja>などの特殊トークンを 付けて学習すれば単一モデルで可 画像引用:“Google’s multilingual neural machine translation system: Enabling zero-shot translation.”のFigure 2 6

8.

1. 機械翻訳 1.4. 逆翻訳によるデータ拡張 単言語コーパスを有効活用する ⚫ ⚫ ニューラル機械翻訳では 大量の対訳コーパスを使う 単言語コーパスが大量にあっても 使わない…(活用したい) 逆翻訳 ⚫ 翻訳先の言語の単言語コーパスを 翻訳元の言語へ逆翻訳して 対訳コーパスを作る 英日翻訳をしたい! でも対訳コーパスが少ない 英語のテキストなら 大量にある! 既存の英日翻訳器で 逆翻訳する 大量の対訳コーパスを 生成できた! 7

9.

1. 機械翻訳 1.5. 機械翻訳の評価方法 人手評価 ⚫ 基準に沿って5段階評価や100点 満点でスコア付けなど BLEU ⚫ 単語nグラムの一致度 ○ よく使われる指標 △ 意味をあまり考慮していない chrF 自動評価 ⚫ 参照訳との類似度を測定する ⚫ BLEU(Bilingual Evaluation Understudy) ⚫ chrF ⚫ BERT score ⚫ 文字nグラムの一致度 ○ 単語分割があいまいな言語に有効 △ 意味をあまり考慮していない BERT score ⚫ BERTによるencoding結果を使用 ○ 文の意味を考慮した評価ができる △ 計算コストが大きい 8

10.

2. 質問応答 9

11.

2. 質問応答 2.1. 質問応答手法の分類 ファクトノイド型 ⚫ 名称や数値など事実に基づく正答を 求める質問応答 「東海道新幹線の最高速度は時速何kmか?」 知識ベースに基づく質問応答 情報検索に基づく質問応答 → 「時速285kmです。」 ノンファクトノイド型 ⚫ 理由や事象の説明に基づく正答を 求める質問応答 「なぜ猫はよく寝ているのか?」 → 「狩りのためのエネルギーを蓄えるためです。」 10

12.

2. 質問応答 2.2. 知識ベースに基づく質問応答 知識ベース ⚫ ⚫ 手法の概要 データ、情報、事実、関連性などを 組織的に集めたデータベース 「ビートルズが結成されたのは何年か?」 Wikipediaの記事カテゴリ・リダイ レクト・言語間リンクなどを利用し て構築できる(例:DBPedia, Wikidata) 𝜆𝑥. year 𝑥 ∧ work_period_start(The Beatles, 𝑥) SELECT work_period_start AS year FROM bands WHERE official_name = 'The Beatles'; 1960年 画像引用: https://en.wikipedia.org/wiki/Knowledge_graph 11

13.

2. 質問応答 2.3. 情報検索に基づく質問応答 情報検索 ⚫ 読解 質問の回答を含む文書を検索 ⚫ 検索された文書から回答を見つける 回答部分 東海道新幹線の最高時速は? ク エ リ クエリ処理 S E 東海道新幹線 AND 最高 AND 時速 クエリ拡張 東海道新幹線 AND 最高 AND 時速 AND 速度 転 置 イ ン デ ッ ク ス 東海道新幹線 2 3 最高 2 4 時速 2 1 3 のぞみ 1 1 TF-IDFなど でスコア付け JR東海 文書1 文書2 文書2 文書5 文書5 文書3 文書4 1 文書1 文書4 文書5 ※近年ではBERT等の事前学習済みモデルでベクトル化し、類似度の高い文書を返す手法も [CLS] 東海道新幹線の最高時速は?[SEP] …………… 質問文 検索された文書 12

14.

2. 質問応答 2.4. ファクトノイド型質問応答の評価方法 単一の回答を出力する場合 ⚫ 複数の回答をランク付きで出力する場合 人間が用意した正解とシステム の回答との一致率を測定する 正解 時速285km 時速285km 1960年 634m 333m 東京 平均逆順位(MRR)で評価する Mean Reciprocal Rank 𝑁 1 1 MRR = ෍ 𝑁 rank 𝑖 システム回答 1960年 正解 ⚫ システム回答 東京 大阪 適合率:50% 再現率:100% 【復習】 適合率=正事例と予測したものの中で真の値が正事例の割合 再現率=真の値が正事例のものの中で正事例と予測した割合 正解率 𝑖=1 0.67 F1スコア 0.67 質問1 質問2 質問3 1位 時速285km 1957年 時速285km 2位 時速210km 1960年 時速210km 3位 時速239.2km 昭和35年 時速239.2km MRR = 1 1 1 1 11 + + = ≈ 0.61 3 1 2 3 18 13

15.

3. 対話 14

16.

3. 対話 3.1. 対話タスクの分類 タスク指向対話 ⚫ 会話しながら特定のタスクを 遂行することが目的 ⚫ Amazon alexa チャットボット ⚫ 何気ないおしゃべりをすることが目的 ⚫ ChatGPT ⚫ 女子高生AI「りんな」 ⚫ Apple Siri 画像引用:https://www.amazon.co.jp/Amazon-com-Amazon-Alexa/dp/B00P03D4D2 画像引用:https://openai.com/brand 画像引用:https://www.apple.com/jp/siri/ 画像引用:https://www.rinna.jp/profile 15

17.

3. 対話 3.2. タスク指向対話 ~フレームに基づく手法~ 対話しながらスロットの値を埋める ⚫ 飛行機予約の例 スロット サブタスク ⚫ 値の型 値 FROM-PLACE city 大阪 どの都市から出発しますか? TO-PLACE city 那覇 どの都市へ向かいますか? TRAVEL-DATE date …… ホテル?旅行?音楽? 質問例 出発は何日ですか? ⚫ 意図分類 …… 予約?確認?キャンセル ⚫ スロットフィリング …… どのスロットに何を入れればいい? → 空の値を埋めるために「出発は何日ですか?」と質問 ⚫ 必要な情報が埋まったら、現在のフレームの 状態に基づいてフライトを検索し、提案する ドメイン分類 応答生成 …… どんな質問をすればいい? 16

18.

3. 対話 3.3. タスク指向対話 ~End-to-Endな手法~ SimpleTOD ⚫ GPT-2ベースのモデルによりEnd-to-Endで処理する 画像引用:”A simple language model for task-oriented dialogue.” のFigure 1 17

19.

3. 対話 3.4. チャットボット(コーパスに基づく手法) 検索に基づくアプローチ ⚫ 関連が深い対話事例をコーパス から探し、その応答を返す 想定外の質問に対する 応答を返すことができない 言語生成に基づくアプローチ ⚫ 対話生成を機械翻訳タスクとみなす =「質問」から「応答」への翻訳 “I don’t know”で会話を打ち切る 同じ語を何度も繰り返す ハルシネーション →「検索に基づくアプローチ」と 組み合わせてこれらの問題を解消 ※LLMのハルシネーション対策として RAG(Retrieval Augmented Generation)が代表的 18

20.

4. 自然言語処理の過去・現在 19

21.

4. 自然言語処理の過去・現在 4.1. 自然言語処理の黎明期 機械翻訳は暗号解読から始まった 機械翻訳研究の盛衰 1940年代、暗号解読や弾道計算のために さまざまな電子計算機が開発された ⚫ 1952年:機械翻訳に関する国際会議 ⚫ 1943年:Colossus(暗号解読) ⚫ 1946年:ENIAC(弾道計算) When I look at an article in Russian, I say: "This is really written in English, but it has been coded in some strange symbols. I will now proceed to decode." Warren Weaver • • 機械翻訳に多額の研究資金 ⚫ 1966年:自然言語処理諮問委員会(ALPAC) • • 自然な訳には程遠く、機械翻訳の実現に否定的見解 計算言語学の基礎研究を重視するよう勧告 ⚫ 1980年頃~:勢いを取り戻す • コーパスの開発、統計的手法・機械学習の導入 によって実用レベルに近づく • Web上のテキストを大規模コーパスとして利用 (1947.5.4) 当時、アメリカ・ソ連にとっては Georgetown-IBM実験で露英翻訳に成功 (ただし有機化学分野限定) 相手国の文献を読むことは最重要課題 20

22.

4. 自然言語処理の過去・現在 4.2. 深層学習の導入 ⚫ 2011~12年頃深層学習モデルが大幅な精度改善を達成し、ブームが始まる 多層NNで 言語モデルを学習 2000年 RNNで 言語モデルを構築 2008年 2010年 様々なタスクを CNNで統一的に モデル化 系列変換モデル 2013年 2014年 2015年 Word2Vec Transformer 2017年 Attention機構 21

23.

4. 自然言語処理の過去・現在 4.3. 深層学習がもたらした変化 従来の手法 ⚫ 特徴量設計に注力 今後の可能性と課題 ⚫ ⚫ 形態素解析 ⚫ 構文解析 ⚫ 固有表現抽出 ⚫ ⚫ 動画像 ⚫ 音声 深層学習以後 特徴量抽出を単語埋め込みで標準化 ⚫ NNの構造をタスクに応じて工夫 ⚫ 事前学習+fine tuning マルチモーダル ⚫ 自然言語 ⚫ 意味解析 ⚫ 分野の垣根を越えて研究成果を利用 できるようになった ⚫ モデルの動作はブラックボックス 22