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

論文読み会 WWW2022 | Learning Probabilistic Box Embeddings for Effective and Efficient Ranking

cocomoff
March 30, 2023

論文読み会 WWW2022 | Learning Probabilistic Box Embeddings for Effective and Efficient Ranking

論文読み会の資料です.

(A slide for the paper-reading activity at my company, written in Japanese.)

cocomoff

March 30, 2023
Tweet

More Decks by cocomoff

Other Decks in Research

Transcript

  1. Learning Probabilistic Box Embeddings for
    Effective and Efficient Ranking
    著者: Lang Mei, Jiaxin Mao, Gang Guo, Ji-Rong Wen
    (Renmin Univ. of China)
    学会: WWW2022
    @cocomoff
    1/21

    View Slide

  2. 目次(余計な話が多い)
    背景
    埋め込み・検索・推薦、ChatGeoPT
    KDD'22, ERNIE-GeoL
    階層性
    Box Embeddings関係の話
    EACL2017, Learning to Predict Denotational Probabilities For
    Modeling Entailment
    ACL2018, Probabilistic Embedding of Knowledge Graphs with Box
    Lattice Measures
    ICLR2019, Smoothing the Geometry of Probabilistic Box
    Embeddings
    EMNLP2021, Box Embeddings: An open-source library for
    representation learning using geometric structures
    WWW'22の内容 (ランキング)
    2/21

    View Slide

  3. 背景: 埋め込み・検索・推薦
    最近、埋め込みベクトルを利用した検索・推薦などに興味がある(NLP2023: 技術文
    書、2023年度業務: 地理空間情報 (経路・旅程)?)
    ここ数年、インタラクティブ最適化をやってきたのでChatGPTに乗っかりたい
    ChatGeoPTとかもある
    3/21

    View Slide

  4. 背景: ERNIE-GeoL
    Baidu の ERNIE に対して地理情報を食べさせたやつ (ERNIE-GeoL, KDD'22)
    heterogeneous graphを使ってランダムウォークさせて埋め込み
    タスク: クエリの意図推定、クエリとPOIのマッチング、住所のパース、
    geocoding (地名のマッチングみたいなもの)、next POI推薦
    他の基盤モデルそのまま使うよりも、Geo情報でtuneすると性能上がる
    技術文書(専門性が高い、階層性がある)や旅程推薦(地理的な制約)を思うと、タスク
    が対象としている情報の構造性があった方が、信頼できる出力が出てきそう
    会社の部署構造、引用関係のネットワーク、地名の階層構造…
    4/21

    View Slide

  5. 背景: 階層性
    地理情報 (POIの列を単語の列とみなす) よりもNLPの世界の方が進んでる
    埋め込みを見てみると、いろいろある
    単語のベクトル埋め込み、ポアンカレ埋め込み、ガウス埋め込み、箱埋め込み、…
    今日は「箱埋め込み」とランキングの論文(WWW'22)に注目
    箱埋め込み: パラメータを倍に増やして、箱の包含関係を使う
    5/21

    View Slide

  6. 目次(余計な話が多い)
    Box Embeddings関係の話
    EACL2017, Learning to Predict Denotational Probabilities For
    Modeling Entailment
    ACL2018, Probabilistic Embedding of Knowledge Graphs with Box
    Lattice Measures
    ICLR2019, Smoothing the Geometry of Probabilistic Box
    Embeddings
    EMNLP2021, Box Embeddings: An open-source library for
    representation learning using geometric structures
    WWW'22の内容 (ランキング)
    背景
    埋め込み・検索・推薦、ChatGeoPT
    KDD'22, ERNIE-GeoL
    階層性
    6/21

    View Slide

  7. 埋め込み: EACL2017 具体的な学習方法・モデルは省略
    含意関係を判定するRTE (Recognizing Textual Entailment) タスクの論文
    背景知識
    Word2vec的な技術でベクトル埋め込みできるという世界観(分布仮説)
    他の考え方: 文 が説明できる画像の集合によって の表示的な意味
    を議論する (visual denotation): 結果がグラフになる (集合の階層関係)
    表示的な意味関係 (集合の包含関係) を使って順序関係(順序埋め込み)を学習する
    過去の研究によれば、少なくとも分布仮説による表現と同じぐらい有効
    7/21

    View Slide

  8. 埋め込み: ACL2018 説明かなり飛ばしてます
    順序埋め込みを束の上で議論すればいいのでは?という論文
    束; 順序によって構成される数学的なオブジェクト
    半順序集合 ( )
    束; 部分集合族で、join と meet が計算できるもの
    メインのアイデア: 既存手法(半開区間)では議論してないけど、埋め込みベクトルの値
    域は に押し込めて、区間の積・max・minを使った束 (Box Lattice)
    性能も良かった
    8/21

    View Slide

  9. 埋め込み: ICLR2019 説明かなり飛ばしてます
    厳密な箱じゃなくて、重なり部分が計算できるなめらかな表現でいいのでは?
    厳密な箱だと重ならないペアで勾配が0で学習が難しい
    なめらかな箱にすると、パラメータも少なく学習が簡単
    特にスパース/inbalancedなデータの場合、なめらかな箱の方が性能が良い
    9/21

    View Slide

  10. 埋め込み: EMNLP2021 (demo) ライブラリあるよ
    Demo paperなので論文にpythonのコードが書いてある
    基本的な機能 (箱の表現 BoxTensor、箱の問い合わせや重なり合い具合を評価する
    ために使う体積の評価 Volume、データローダーと初期化など)
    Box Embeddingと階層構造の図 (左)
    例: を埋め込み、 となるように学習する (右)
    論文のコードをGoogle Colabで動かしたら結果再現できた
    10/21

    View Slide

  11. 目次(余計な話が多い)
    WWW'22の内容 (ランキング)
    背景
    埋め込み・検索・推薦、ChatGeoPT
    KDD'22, ERNIE-GeoL
    階層性
    Box Embeddings関係の話
    EACL2017, Learning to Predict Denotational Probabilities For
    Modeling Entailment
    ACL2018, Probabilistic Embedding of Knowledge Graphs with Box
    Lattice Measures
    ICLR2019, Smoothing the Geometry of Probabilistic Box
    Embeddings
    EMNLP2021, Box Embeddings: An open-source library for
    representation learning using geometric structures
    11/21

    View Slide

  12. ここから本編です:
    12/21

    View Slide

  13. WWW'22: 背景と結果
    ベクトル埋め込みベースの検索システム (近傍検索・ランキング・推薦など) は、深層学
    習時代では基本的な技術になっているが、微妙な点もある:
    (effectiveness): クエリーやアイテムの多様性・不確実性の表現能力
    ベクトル空間の1つの点に埋め込めるほど明確ではない
    (efficiency): 近傍探索が大変
    アイデア: 箱にすればいいのでは (box retrieval を提案)?
    13/21

    View Slide

  14. WWW'22: ベクトル埋め込み・箱埋め込み
    ベクトル埋め込み
    オブジェクト を -次元ベクトル に埋め込む
    距離 や類似度 を検索に使う
    箱埋め込み
    オブジェクト を -次元のaxis-aligned hyper-rectangleに埋め込む
    表記
    体積
    重なり
    区間の重なり:
    2つの箱が疎:
    重なった体積: .
    定理: はカーネル関数
    14/21

    View Slide

  15. WWW'22: 箱埋め込みの学習; Parameterization
    箱をそのまま最適化するのは disad. なのでガンベル分布の箱の縁を最適化する
    分布関数
    ガンベル分布のmax/minは、ガンベル分布(パラメータのmax/min)に従う
    箱でmin/maxを計算する場合 (平均のところがlog-sum-exp; LSE):
    体積の期待値を求めるために:
    ,
    ガンベル分布を仮定したときの期待体積
    : Euler-Mascheroni constant
    たぶんどこかに式展開があるはず… (arXiv 2010.04831 or UAI21) 15/21

    View Slide

  16. WWW'22: 問題設定・ロス関数
    前提
    クエリ 、アイテム 、クエリ に適合したアイテムの集
    合 に対して、 で埋め込む。ガンベル分
    布による期待体積 を用いてスコアを求める。
    ランキングロス
    LtRタスク: 正のアイテム は高いスコアを、負のアイテム
    (sampling戦略で取得) は低いスコアになるように学習する。
    exp()の2項目が大きく、1項目が小さくなればロスが小さくなる
    検索タスクのために2つの制約をつける
    箱の体積の制約
    箱の重なりに関する制約
    16/21

    View Slide

  17. WWW'22: 制約
    LtRの全体ロス: ランキングロス+制約×2
    箱が大きすぎると曖昧な埋め込みになってダメそう(クエリ・アイテム両方):
    𝟙
    𝟙
    疎な箱同士(重なっていない軸がある)はフィルタリングに有効そう:
    正例 と負例 の領域が重ならないようにペナルティを付与したい
    一番近いところにマージン ぐらいの幅があるようにペナルティ
    17/21

    View Slide

  18. WWW'22: 学習したあとの箱はどうなってるのか?
    学習後、クエリ とアイテム に箱埋め込みが計算できる
    の重なり合いはどうなるか
    箱の各次元 でそれぞれ確率 ぐらいで重なっ
    ていると仮定 (重なる = relevant)
    各次元が独立だと仮定
    重なっている部分 について
    著者の主張:
    各次元ごとに関係のないアイテム (irrelevant
    items) をフィルタリングしていけば良い
    かぶっていない次元が1つでもあれば関係のないアイテムと判定
    高速に判定するために索引構造を作る
    18/21

    View Slide

  19. WWW'22: Indexing & Search
    右のような軸があるかを高速に探したい
    書いてあること (抜粋)
    箱埋め込みの両側 ( )について、
    対象データ の各次元の情報をソー
    トしておく:
    各軸で二分探索する
    各軸レベルで探す
    bit演算でできるので高速に計算できる
    関連アイテムをランキングにする方法
    索引から関連アイテム を取得して、重なり体積を計算して出力する
    空間索引使わないの? (R-Treeなど)
    高次元 ( ) だと死ぬので使わない
    19/21

    View Slide

  20. WWW'22: 実験 (検索)
    TREC2019 Deep Learning (DL) Track
    8,841,823 passages, 502,939 training queries, 6,980 test queries
    ベースラインの STAR と同じ負例サンプリング手法を用いた
    箱埋め込みしただけで既存のベースラインより良い。制約つけると箱の重なり具合が
    いい感じに調整されて、効率が上がっている。
    20/21

    View Slide

  21. WWW'22: 実験 (推薦)
    推薦実装の統一的なフレームワーク Recbole を使って、MovieLens-1M と
    AmazonBooks を利用してベースライン (DSSM/GRU4REC/SASREC) と比較した
    20インタラクションしたユーザのみ
    負例をランダムに100個と、全体使った場合で比較
    21/21

    View Slide