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

機械学習を⽤いた情報検索技術の⼊⾨と概要: 第58回 Machine Learning 15m...

機械学習を⽤いた情報検索技術の⼊⾨と概要: 第58回 Machine Learning 15minutes! Broadcast

第58回 Machine Learning 15minutes! Broadcast (https://machine-learning15minutes.connpass.com/event/220935/) にて「機械学習を用いた情報検索技術の入門と概要」というタイトルで話した内容です

keyakkie

July 29, 2022
Tweet

More Decks by keyakkie

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 • ⽒名 o 欅 惇志 (けやき あつし) • 教育

    o 学部・修⼠:同志社⼤学 (2005-2011) o 博⼠:奈良先端科学技術⼤学院⼤学 (2011-2014) • 専⾨ o 情報検索,⾃然⾔語処理,データベースシステム • 職歴 o 東京⼯業⼤学 情報理⼯学院 助教:5 年 (2014.4-2019.3) o デンソーアイティーラボラトリ 研究員:2.5 年 (2019.4-) o その他 • マイクロソフト・リサーチアジア (北京) インターン (D3) • シンガポール国⽴⼤学 訪問研究員 (在外研究) • 科学技術振興機構 (JST) ACT-I 研究者 2 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要
  2. 本⽇の内容 • 盛り込もうとしたこと o 情報検索の概要 o 情報検索技術のパラダイム • 各パラダイムの技術の概要紹介 o

    トランスフォーマーベースの⼿法の概要 • 前提 o Web 検索・テキスト検索を想定 o 情報検索と検索システムを同じ意図で利⽤ o 最近 (2021 年) の話はキャッチアップできておらず o 詳しく知り合い⼈は Pretrained Transformers for Text Ranking: BERT and Beyond がおすすめ o めちゃくちゃ固いです… 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 3
  3. 情報検索の概要 • ⽬的 o ユーザの欲しい情報を提⽰する = 情報要求 (information need) を満たす

    • 代表的な応⽤:Web 検索システム/エンジン o 膨⼤な Web ページを全て確認することは不可 • 主要な検索システム o Google search, Microsoft Bing, Yahoo search, Baidu (百度) 2021.8.28 4 18.8億 Web サイト 55 億 Web ページ https://www.worldwidewebsize.com/ http://www.internetlivestats.com/tot al-number-of-websites/ Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要
  4. 検索システムのアーキテクチャ 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 5 検索質問の 内部表現

    クエリ ユーザの要求 Web ページ ページ集合 の内部表現 検索結果構築 スコアリング 「機械学習 活⽤事例」 ユーザへ提⽰ 機械学習の 活⽤事例を 知りたい コンピュータ内部の処理 ユーザとのインタラクション 検索インタフェース マッチ ング 内部表現 に変換
  5. 検索システムにおける要件 • 三つの要件 o ⾼精度検索 • ユーザの欲しい情報を提⽰ • 研究領域:情報検索 o

    ⾼速な検索 • 「エンジニアは 3 秒以上待たされると SNS を開く」 • 研究領域:データ⼯学,⼤規模計算,分散処理 o 直感的な操作を可能とするインタフェース • アプリケーションの特性を反映 • 研究領域:ヒューマン・コンピュータ・インタフェー ス (HCI),情報検索 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 6
  6. 情報検索技術のパラダイム • ヒューリスティック o 代表的な⼿法:TD-IDF, PageRank • 機械学習 (ランキング学習) o

    古典的 (?) 機械学習 • 代表的な⼿法:LambdaMART, ListNet • 主要な⼿法は 2000 年頃までには⼤体提案 • その後は特徴量設計を頑張る時代 o 深層学習ベースのランキング学習 • 代表的な⼿法:DSSM, DRMM • 他分野ほど⼤流⾏せず o トランスフォーマーベースの機械学習 • 典型的な使い⽅:BERT の出⼒ -> 情報検索に特化したネット ワークに⼊れる 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 7 ヒューリス ティック 深層学習の ランキング トランス フォーマー 古典的 機械学習 1960 年代 以降 1990 年代 以降 2014-2018 くらい 2019 以降 (BERT 出現後)
  7. ヒューリスティックな⼿法 • ⼤まかな分類 o 語の重みづけ⼿法 • もっともポピュラー o グラフ解析ベースの⼿法 •

    ハイパーテキストのリンク関係からスコア計算 • PageRank 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 8
  8. (補⾜) 語の重みづけ⼿法 • 定式化の⽅針 o 各語の重みを計算 o 語の重みの総和/総乗が⽂書 • 語の重みづけ⼿法の分類

    o 右に⾏くほど⾼精度な⼿法 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 9 ブーリアン モデル※ 確率 モデル 統計的 ⾔語モデル ベクトル 空間モデル ・TF-IDF ・BM25 ・クエリ 尤度モデル ※ 実際はブーリアンモデルは語の重みづけしない 全クエリキーワードを含む⽂書集合を結果として提⽰
  9. 古典的機械学習 • ランキング学習 o 教師あり学習の設定 o 回帰の⼀種 (順序だけ考慮) • クエリ-⽂書ペアの適合性評価

    2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 10 ⽂書集合 適合性判定 ランキン グ結果 訓練 クエリ 特徴量抽出 - 語の重み - リンク分析 学 習 ( モ デ ル 構 築 ) モデル テスト クエリ 特徴量抽出 - クエリ語 - セッション情報 - ユーザ情報 特徴量抽出 - 語の重み - セッション情報 - ユーザ情報
  10. 古典的機械学習 • ランキング学習 o ラベル:適合性評価 o 特徴量 • 語の重み,リンク分析,セッション・ユーザ情報 •

    200-300 次元 o 訓練 • ラベルと特徴量でモデル構築 and features o テスト • クエリに対する⽂書のスコアを推定 • 順位付きリストを提⽰ 11 DocID queryID ラベル TF-IDF BM25 QLM PageRank Male Female 1000 100 1 0.4 0.5 0.3 0.6 1 0 1001 100 0 0.6 0.8 0.1 0.2 1 0 1002 100 1 0.3 0.2 0.1 0.1 0 1 語の重み リンク分析 ユーザ情報 評価 訓練 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要
  11. 古典的機械学習 • ランキング学習 o ラベル:適合性評価 o 特徴量 • 語の重み,リンク分析,セッション・ユーザ情報 •

    200-300 次元 o 訓練 • ラベルと特徴量でモデル構築 and features o テスト • クエリに対する⽂書のスコアを推定 • 順位付きリストを提⽰ 12 DocID queryID スコア TF-IDF BM25 QLM PageRank Male Female 2000 200 0.8 0.3 0.5 0.2 0.4 0 1 2001 200 0.3 0.6 0.4 0.4 0.5 1 0 2002 200 0.5 0.3 0.5 0.7 0.3 0 1 語の重み リンク分析 ユーザ情報 テスト 推定 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要
  12. 深層学習ベースの⼿法 (neural rank) • 基本はシンプルな構造のネットワーク 2021.8.28 Machine Learning 15minutes! Broadcast:

    機械学習を⽤いた情報検索技術の⼊⾨と概要 13 Representation-based models: スコア算出時に⽂書・クエリ⽐較 Interaction-based models: 学習時から⽂書・クエリの インタラクション DSSM DRMM ⽂書 クエリ ⽂書 クエリ
  13. (補⾜スライド) BERT の学習 • ⼤規模⾔語表現 o BERT, XLNet, RoBERTa etc.

    • Pre-training (事前学習) o たくさん本を読んで⼀般教養 (素養) を⾝につける o (陽に問題は解かない) • Fine-tuning (再学習 ≒ 転移学習) o 試験科⽬の問題集 (解答例のあるもの) を解き対策する • Inference o 試験を受ける IRReading2020秋 14 2020.10.31
  14. (補⾜スライド) BERT の事前学習 • Masked language model (MLM) o マスクされたトークンを周辺⽂脈から予測

    • 15% の単語を [MASK] に変更 • 残り 85% の単語から 15% の単語を予測 • 双⽅向 transformer の出番 • Next sentence prediction (NSP) o 2つの⽂の連続/⾮連続を予測 IRReading2020秋 15 出⼒: 連続/⾮連続の 2 値を予測 ⼊⼒: 2 ⽂ (連続/⾮連続) 分散表現に変換 されて学習 出⼒: [MASK] が元の 語に復元 (予測) された 2 ⽂ 連続/⾮連続を 予測するトークン [MASK] の元の語を 予測するトークン
  15. BERT の出現 • なぜかすぐに情報検索研究に導⼊ o 導⼊コストが低いから? • モデル公開済・ライブラリの整備 o NLP

    の⼈たちがやってきただけ? • そもそも⼤規模機会読解タスクと近い o 情報検索 + 質問応答 • 他の NLP タスクと違う o 特に知識蒸留関係 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 16
  16. 最もシンプルなモデル • BM25 スコアと BERT の出⼒の線形結合 2021.8.28 Machine Learning 15minutes!

    Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 17 monoBERT
  17. 初期のモデル • BERT がベース o e.g. CEDR, PARADE o BERT

    で分散表現獲得 → ランキングモデルに⼊れる 2021.8.28 Machine Learning 15minutes! Broadcast: 機械学習を⽤いた情報検索技術の⼊⾨と概要 18 CEDR PARADE
  18. (補⾜) BERT 以降の研究 • XLNet (NeurIPS 2019) o BERT の

    pre-training を変えて改良 • RoBERTa (2019) o BERT の pre-training の枠組みのまま改良 • ELECTRA (ICLR2020) o BERT の MLM を敵対的学習する • ALBERT (ICLR 2020) o 軽量版 BERT (A Lite BERT) • T5 (2019) o Google AI が開発した転移学習フレームワーク o 論⽂⾒当たらず • GPT-3 (2020) o Open AI が開発した⾔語⽣成モデル o 1,750億個のパラメータを使⽤ (論⽂にアーキテクチャなし) 2021.1.28 3.6 Beyond BERT 20 BERT の後継モデル BERT の亜種 ELECTRA
  19. BERT 亜種は検索タスクでも有⽤? • monoBERT で RoBERTa 使う o 微妙に性能低下 •

    PARADE で ELECTRA 使う o 性能改善 2021.1.28 3.6 Beyond BERT 21
  20. 話は変わって… • 知識蒸留 (knowledge distillation) o 教師モデル (teacher model) の「振る舞いを

    模倣」した⽣徒モデル (student model) 作成 o ⽬標 • 同程度の性能 • さらに効率的 o 模倣するとは? • モデル間の出⼒のクロスエントロピーロスを⼩さ くする • なので BERT から Bi-LSTM への蒸留でもよい 2021.1.28 3.6 Beyond BERT 22
  21. 検索タスクにおける蒸留 • 検索タスクへの fine-tuning のタイミング o 蒸留の前後どっちがよいか不明 • 蒸留パターン o

    fine-tuned BERT → 蒸留 • ranker distillation o pre-trained BERT → 蒸留 → fine-tuning • LM distillation + fine-tuning o pre-trained BERT → 蒸留 → fine-tuning → 蒸留 • LM + Ranker distillation 2021.1.28 3.6 Beyond BERT 23
  22. モデルサイズと性能 • Train: 蒸留済み BERT を使って学習 • Distill: BERT を使って蒸留

    2021.1.28 3.6 Beyond BERT 24 多くの NLP タスクでは⼩さなモデルから学習する (train) ほうが⾼性能なので検索タスクは特殊
  23. トランスフォーマーベースの⼿法 • BERT の特徴 o トランスフォーマー利⽤ o ⼤規模データを使った事前学習 • モチベーション

    o トランスフォーマーを使った,より検索に特 化したモデルを考える • TK, TKL, CK 2021.1.28 3.6 Beyond BERT 25
  24. TK (Transformer Kernel) • 1. ⽂書とクエリ別々に encoding • 2. Term✕Term

    ⾏列作る o KNRM と同じ • 3. kernel (畳み込みするフィルタ) を作る o 対数スコアと⻑さ正規化スコア • 4. スコアリング 2021.1.28 3.6 Beyond BERT 27
  25. 拡張 • TKL (TK with local attention) o kernel-pooling するときに⽂書全体ではなく

    周辺語だけ使う • CK (TK with Conformer Kernel) o term-matching component 追加 • Conformer 層追加 o Conformer で調べたら transformer + CNN って出てきましたが関係は未確認 2021.1.28 3.6 Beyond BERT 28
  26. (補⾜) T5 • T5 (Text-to-Text Transfer Transformer) o NLP タスク全部まとめて

    seq2seq の転移学 習タスクとして解く o ⼊⼒データにタスクの種類を書く • 翻訳タスクの⼊⼒データ o translate English to German: [⼊⼒⽂] • 感情分析タスクの⼊⼒ o sst2 sentence: [⼊⼒分] • BERT の特殊トークン [CLS][SEP] と似た感じ o 検索タスク (ランキング) どうしたらいい? 2021.1.28 3.6 Beyond BERT 31
  27. monoT5 • monoT5 o Query: [クエリ] Document: [⽂書] Relevant: o

    適合する確率を出⼒ 2021.1.28 3.6 Beyond BERT 32 3B = three billion parameters