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

疎ベクトル検索と密ベクトル検索: 第68回 Machine Learning 15minutes! Broadcast

疎ベクトル検索と密ベクトル検索: 第68回 Machine Learning 15minutes! Broadcast

第68回 Machine Learning 15minutes! Broadcast (https://machine-learning15minutes.connpass.com/event/252238/) にて「疎ベクトル検索と密ベクトル検索」というタイトルで話した内容です

keyakkie

July 30, 2022
Tweet

More Decks by keyakkie

Other Decks in Technology

Transcript

  1. 疎ベクトル検索

    密ベクトル検索
    第68回 Machine Learning 15minutes! Broadcast
    欅 惇志 ([email protected])
    ⼀橋⼤学
    ソーシャル・データサイエンス教育研究推進センター
    准教授
    キーワード
    検索
    BERT
    検索

    View Slide

  2. ⾃⼰紹介
    • ⽒名
    o 欅惇志 (KEYAKI Atsushi)
    • 専⾨
    o 情報検索,⾃然⾔語処理,対話システム,
    データベースシステム
    • 職歴
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    2
    アカデミア 企業 アカデミア
    東京⼯業⼤学
    情報理⼯学院
    助教
    (2014.4-2019.3)
    デンソー
    アイティー
    ラボラトリ
    アソシエイト
    リサーチャー
    (2019.4-2022.3)
    ⼀橋⼤学
    ソーシャル・データ
    サイエンス教育研究
    推進センター
    准教授
    (2022.4-)

    View Slide

  3. • 来年度からは SDS 学部・研究科に所属予定
    • 構想
    o 伝統的に強みがある社会科学と、数理・統計教育に基づく
    データサイエンスを融合させることにより、社会における
    情報技術の進展や、いわゆるデジタル・トランスフォー
    メーションに貢献できる⼈材を輩出すべく、新たにソー
    シャル・データサイエンス学部/ソーシャル・データサイ
    エンス研究科(仮称)の設置を構想しています。
    o 社会科学×統計・情報・AI→ビジネス⾰新と社会課題解決
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    3
    唐突な宣伝
    欅の分担はここ

    View Slide

  4. さらなる宣伝
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    4
    優秀な
    学⽣
    御社

    • 共同研究⼤歓迎です!!!
    o 対象トピック:欅の専⾨分野,社会科学×情報

    View Slide

  5. 発表概要
    • 本⽇の内容
    o 疎・密ベクトル検索の Pros & Cons
    o 疎ベクトル検索と密ベクトル検索
    o 密ベクトル検索の⾼速化
    • 参考
    o 機械学習を⽤いた情報検索技術の⼊⾨と概要
    • 第 58 回 Machine Learning 15minutes! Broadcast
    o Pretrained Transformers for Text Ranking:
    BERT and Beyond (v3) Chapter 5
    • 初学者が独学できるくらい基本から丁寧なサーベイ
    • ただし 204 ページ!
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    5

    View Slide

  6. 疎・密ベクトル検索の Pros & Cons
    疎ベクトル
    検索
    密ベクトル
    検索
    検索精度 ○ ◎
    検索速度 ◎ ✕〜○
    メモリ・ストレージ
    消費消費
    ◎ ✕
    インデキシング
    コスト
    ○ △
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    6
    BERT により
    第⼀関⾨突破
    第⼆関⾨も突破
    されつつある
    進歩の経緯
    次の関⾨も
    今後どんどん
    改善されそう
    情報検索において検索精度はクリティカル
    それが満たされてから他の要件に取り組まれる
    ⼀⾒必ずしも密ベクトル検索が優れて
    いるように⾒えませんが…
    ͕͜͜
    ϙΠϯτ
    キーワード
    検索
    BERT
    検索

    View Slide

  7. ⽤語
    • ベクトル検索 (Vector search)
    o ⽂書・検索質問 (クエリ) を
    ベクトルで表現
    • ベクトル間の類似性≒
    ⽂書・クエリ間の類似度
    o 詳しくは右記参照
    • 疎ベクトル (Sparse vector)
    o ベクトルの⼤部分の成分の値がゼロ
    o 𝑣!
    = 𝟎, 𝟎, 𝟎, 1, 𝟎
    o 以降,ベクトルの添字 𝑆 は疎ベクトル
    • 密ベクトル (Dense vector)
    o ベクトルの⼤部分の成分の値が⾮ゼロ
    o 𝑣"
    = 0.3, 0.6, 𝟎, 0.8, −0.2
    o 以降,ベクトルの添字 𝐷 は密ベクトル
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    7
    Google を⽀える推薦モデル
    「Two-Tower」とベクトル近傍
    検索技術@Google Cloud Day:
    Digital ʼ22

    View Slide

  8. 疎ベクトル検索
    • いわゆる従来のキーワード検索
    o 世の中の⼤部分の検索エンジンが該当
    • 仕組み
    2021.7.30 8
    クエリ ⽂書
    疎ベクトル化
    𝑞!
    = 0, 0, 0, 1, 0, ⋯ 𝑑!
    = 0, 0, 0.8, 0.6, 0, ⋯
    類似度算出
    cos 𝑞!
    , 𝑑!
    =
    𝑞!
    . 𝑑!
    𝑞!
    𝑑!
    内積
    0
    0
    0
    1
    0

    !
    $
    0
    0
    0.8
    0.6
    0

    !
    =
    0
    0
    0
    0.6
    0

    !
    疎ベクトル同⼠の内積も疎
    後述

    View Slide

  9. 疎ベクトル化
    • クエリ・⽂書は語彙空間上に射影
    o それぞれクエリベクトル・⽂書ベクトル
    • 次元数は語彙数 (数万〜数⼗万)
    • ⽂書⻑ << 語彙数のため,極めて疎ベクトル
    o 類似度計算 (コサイン類似度,内積) が低コスト
    o 値がゼロの成分は演算をスキップできる
    2021.7.30 9
    apple
    mango
    grape 1
    1
    2
    𝑑"
    𝑑#
    語彙数 3 の空間の例
    𝑑"
    : “apple mango”
    𝑑#
    : “grape and grape”

    View Slide

  10. 密ベクトル検索
    • 狭義では word2vec 以降の分散表現検索を指す
    o (広義では潜在意味解析 LSI も密ベクトル検索?)
    • 仕組み
    2021.7.30 10
    クエリ ⽂書
    密ベクトル化
    𝑞$
    = 0.3, 0.6, 0, 0.8, −0.2, ⋯ 𝑑$
    = −1, 0.5, 0.2, 0.6, −0.9, ⋯
    類似度算出
    cos 𝑞$
    , 𝑑$
    =
    𝑞$
    . 𝑑$
    𝑞$
    𝑑$
    内積
    密ベクトル同⼠の内積も密
    後述
    0.3
    0.6
    0
    0.8
    −0.2

    !
    $
    −0.1
    0.5
    0.2
    0.6
    −0.9

    !
    =
    −0.3
    0.3
    0
    0.48
    0.18

    !

    View Slide

  11. 密ベクトル化
    • クエリ・⽂書は分散表現として表現
    o 次元数は数百次元に設定 (300 次元程度)
    o 各次元が何を表現しているのか明らかでない
    o 密ベクトルのため類似度計算は⾼コスト
    • (softmax を使うモデルは更に⾼コスト)
    • Word2vec, GloVe, fastText
    o (⽂脈から) 単語の意味を学習
    • アナロジータスクで有名:
    𝑣 𝑘𝑖𝑛𝑔 − 𝑣 𝑚𝑎𝑛 + 𝑣 𝑤𝑜𝑚𝑎𝑛 = 𝑣 𝑞𝑢𝑒𝑒𝑛
    o 得られる分散表現は静的
    • BERT (Transformer)
    o アテンションによって関連語に着⽬
    o ⽂脈を埋め込む
    o 得られる分散表現は動的
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    11
    どの⽂書の中の
    king も同じ意味
    国家トピックとトランプ
    トピックの⽂書で
    king の意味が異なる

    View Slide

  12. 密ベクトル検索の⾼速化
    • 近似最近傍探索 (Nearest neighbor search,
    NNS)
    o SIMD による並列演算:スケールしない
    o 多次元インデックス (kd ⽊):⾼々数次元まで
    o 近似最近傍探索 (Approximate NNS, ANN)※
    • 局所性鋭敏型ハッシュ (Locality-sensitive hashing)
    • 近接グラフ (Proximity Graph)
    o Hierarchical Navigable Small World (HNSW)
    • 直積量⼦化 (Product Quantization)
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    12
    ※ 近似最近傍探索の
    最前線@MIRU 2019
    チュートリアル
    研究利⽤では faiss (Facebook)
    がデファクト

    View Slide

  13. まとめ
    • 発表内容
    o 分散表現検索 (密ベクトル検索) が熱い
    • 今後更に実⽤的になりそう
    2021.7.30
    第68回 Machine Learning 15minutes! Broadcast:
    疎ベクトル検索と密ベクトル検索
    13
    • 共同研究⼤歓迎です!!!
    o 対象トピック:欅の専⾨分野,
    社会科学×情報

    View Slide