Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
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
Slide 2
Slide 2 text
目次(余計な話が多い) 背景 埋め込み・検索・推薦、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
Slide 3
Slide 3 text
背景: 埋め込み・検索・推薦 最近、埋め込みベクトルを利用した検索・推薦などに興味がある(NLP2023: 技術文 書、2023年度業務: 地理空間情報 (経路・旅程)?) ここ数年、インタラクティブ最適化をやってきたのでChatGPTに乗っかりたい ChatGeoPTとかもある 3/21
Slide 4
Slide 4 text
背景: ERNIE-GeoL Baidu の ERNIE に対して地理情報を食べさせたやつ (ERNIE-GeoL, KDD'22) heterogeneous graphを使ってランダムウォークさせて埋め込み タスク: クエリの意図推定、クエリとPOIのマッチング、住所のパース、 geocoding (地名のマッチングみたいなもの)、next POI推薦 他の基盤モデルそのまま使うよりも、Geo情報でtuneすると性能上がる 技術文書(専門性が高い、階層性がある)や旅程推薦(地理的な制約)を思うと、タスク が対象としている情報の構造性があった方が、信頼できる出力が出てきそう 会社の部署構造、引用関係のネットワーク、地名の階層構造… 4/21
Slide 5
Slide 5 text
背景: 階層性 地理情報 (POIの列を単語の列とみなす) よりもNLPの世界の方が進んでる 埋め込みを見てみると、いろいろある 単語のベクトル埋め込み、ポアンカレ埋め込み、ガウス埋め込み、箱埋め込み、… 今日は「箱埋め込み」とランキングの論文(WWW'22)に注目 箱埋め込み: パラメータを倍に増やして、箱の包含関係を使う 5/21
Slide 6
Slide 6 text
目次(余計な話が多い) 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
Slide 7
Slide 7 text
埋め込み: EACL2017 具体的な学習方法・モデルは省略 含意関係を判定するRTE (Recognizing Textual Entailment) タスクの論文 背景知識 Word2vec的な技術でベクトル埋め込みできるという世界観(分布仮説) 他の考え方: 文 が説明できる画像の集合によって の表示的な意味 を議論する (visual denotation): 結果がグラフになる (集合の階層関係) 表示的な意味関係 (集合の包含関係) を使って順序関係(順序埋め込み)を学習する 過去の研究によれば、少なくとも分布仮説による表現と同じぐらい有効 7/21
Slide 8
Slide 8 text
埋め込み: ACL2018 説明かなり飛ばしてます 順序埋め込みを束の上で議論すればいいのでは?という論文 束; 順序によって構成される数学的なオブジェクト 半順序集合 ( ) 束; 部分集合族で、join と meet が計算できるもの メインのアイデア: 既存手法(半開区間)では議論してないけど、埋め込みベクトルの値 域は に押し込めて、区間の積・max・minを使った束 (Box Lattice) 性能も良かった 8/21
Slide 9
Slide 9 text
埋め込み: ICLR2019 説明かなり飛ばしてます 厳密な箱じゃなくて、重なり部分が計算できるなめらかな表現でいいのでは? 厳密な箱だと重ならないペアで勾配が0で学習が難しい なめらかな箱にすると、パラメータも少なく学習が簡単 特にスパース/inbalancedなデータの場合、なめらかな箱の方が性能が良い 9/21
Slide 10
Slide 10 text
埋め込み: EMNLP2021 (demo) ライブラリあるよ Demo paperなので論文にpythonのコードが書いてある 基本的な機能 (箱の表現 BoxTensor、箱の問い合わせや重なり合い具合を評価する ために使う体積の評価 Volume、データローダーと初期化など) Box Embeddingと階層構造の図 (左) 例: を埋め込み、 となるように学習する (右) 論文のコードをGoogle Colabで動かしたら結果再現できた 10/21
Slide 11
Slide 11 text
目次(余計な話が多い) 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
Slide 12
Slide 12 text
ここから本編です: 12/21
Slide 13
Slide 13 text
WWW'22: 背景と結果 ベクトル埋め込みベースの検索システム (近傍検索・ランキング・推薦など) は、深層学 習時代では基本的な技術になっているが、微妙な点もある: (effectiveness): クエリーやアイテムの多様性・不確実性の表現能力 ベクトル空間の1つの点に埋め込めるほど明確ではない (efficiency): 近傍探索が大変 アイデア: 箱にすればいいのでは (box retrieval を提案)? 13/21
Slide 14
Slide 14 text
WWW'22: ベクトル埋め込み・箱埋め込み ベクトル埋め込み オブジェクト を -次元ベクトル に埋め込む 距離 や類似度 を検索に使う 箱埋め込み オブジェクト を -次元のaxis-aligned hyper-rectangleに埋め込む 表記 体積 重なり 区間の重なり: 2つの箱が疎: 重なった体積: . 定理: はカーネル関数 14/21
Slide 15
Slide 15 text
WWW'22: 箱埋め込みの学習; Parameterization 箱をそのまま最適化するのは disad. なのでガンベル分布の箱の縁を最適化する 分布関数 ガンベル分布のmax/minは、ガンベル分布(パラメータのmax/min)に従う 箱でmin/maxを計算する場合 (平均のところがlog-sum-exp; LSE): 体積の期待値を求めるために: , ガンベル分布を仮定したときの期待体積 : Euler-Mascheroni constant たぶんどこかに式展開があるはず… (arXiv 2010.04831 or UAI21) 15/21
Slide 16
Slide 16 text
WWW'22: 問題設定・ロス関数 前提 クエリ 、アイテム 、クエリ に適合したアイテムの集 合 に対して、 で埋め込む。ガンベル分 布による期待体積 を用いてスコアを求める。 ランキングロス LtRタスク: 正のアイテム は高いスコアを、負のアイテム (sampling戦略で取得) は低いスコアになるように学習する。 exp()の2項目が大きく、1項目が小さくなればロスが小さくなる 検索タスクのために2つの制約をつける 箱の体積の制約 箱の重なりに関する制約 16/21
Slide 17
Slide 17 text
WWW'22: 制約 LtRの全体ロス: ランキングロス+制約×2 箱が大きすぎると曖昧な埋め込みになってダメそう(クエリ・アイテム両方): 𝟙 𝟙 疎な箱同士(重なっていない軸がある)はフィルタリングに有効そう: 正例 と負例 の領域が重ならないようにペナルティを付与したい 一番近いところにマージン ぐらいの幅があるようにペナルティ 17/21
Slide 18
Slide 18 text
WWW'22: 学習したあとの箱はどうなってるのか? 学習後、クエリ とアイテム に箱埋め込みが計算できる の重なり合いはどうなるか 箱の各次元 でそれぞれ確率 ぐらいで重なっ ていると仮定 (重なる = relevant) 各次元が独立だと仮定 重なっている部分 について 著者の主張: 各次元ごとに関係のないアイテム (irrelevant items) をフィルタリングしていけば良い かぶっていない次元が1つでもあれば関係のないアイテムと判定 高速に判定するために索引構造を作る 18/21
Slide 19
Slide 19 text
WWW'22: Indexing & Search 右のような軸があるかを高速に探したい 書いてあること (抜粋) 箱埋め込みの両側 ( )について、 対象データ の各次元の情報をソー トしておく: 各軸で二分探索する 各軸レベルで探す bit演算でできるので高速に計算できる 関連アイテムをランキングにする方法 索引から関連アイテム を取得して、重なり体積を計算して出力する 空間索引使わないの? (R-Treeなど) 高次元 ( ) だと死ぬので使わない 19/21
Slide 20
Slide 20 text
WWW'22: 実験 (検索) TREC2019 Deep Learning (DL) Track 8,841,823 passages, 502,939 training queries, 6,980 test queries ベースラインの STAR と同じ負例サンプリング手法を用いた 箱埋め込みしただけで既存のベースラインより良い。制約つけると箱の重なり具合が いい感じに調整されて、効率が上がっている。 20/21
Slide 21
Slide 21 text
WWW'22: 実験 (推薦) 推薦実装の統一的なフレームワーク Recbole を使って、MovieLens-1M と AmazonBooks を利用してベースライン (DSSM/GRU4REC/SASREC) と比較した 20インタラクションしたユーザのみ 負例をランダムに100個と、全体使った場合で比較 21/21