IR Two Tower Model の記事を読む Cascade Ranking System
単一な複雑なランキングアルゴリズムは、大規模な候補セットを効率的にランク付けすることはできない。
効率性と効果をバランスさせるために、多段ランキングシステム(multi-ranking system)が採用される。
Multi-ranking system
Recall と Pre-ranking の初期段階では、シンプルで高速なアルゴリズムが使用される。
recall metrics に焦点を当てる。
後半の段階の Ranking と Re-ranking では、大規模な Deep Neural Network が使用される
Latency と Accuracy のトレードオフを考慮しながら、各段階で適切なアルゴリズムが選ばれる。
各アルゴリズムは、各候補に対して何らかの Relevance や Similarity の値を計算し、最も関連性の高い候補セットを次の段階に渡す
Two Tower Model
pre-ranking
retrieval phase で取得した候補に対して、初期フィルタリングを実施する。
ranking phase と比較すると、多くの候補データを評価する必要があるため、より高速なアプローチが好まれる
移り変わり
第一世代
非パーソナライズされた方法でプリランキングスコアを計算する
第二世代
ロジスティック回帰
第三世代
Two Tower Model
ベクトル生成ベースの Deep Neural Network
検索システムでクエリを最も関連性の高いドキュメントにマッピングする手段として開発された
Two Tower Model のメリット
精度と推論効率に焦点を当てた設計
2つのタワーが独立して変更して latent representations を生成し、出力層でのみ相互作用する
item embeddings は、index service に保存されることが多い
Related DNN Paradigms
DNN
https://blog.reachsumit.com/img/posts/2023/two-tower-model/related_dnn_paradigms.png
(a) Representation-based ranker architecture
query と document の embedding をそれぞれ計算し、出力層でそれらの相互作用を介して類似性を推定する。
(b) Query & Document interaction based architecture
word や phrase level の関連性の interaction matrix でモデル化し、それを CNN や MLP のようなニューラルネットワークに入力する。
DRMM や KNRM model
(c) All-to-all interaction architecture
Cross-Encoder
クエリとドキュメントの相互作用だけではなく、クエリとドキュメント間の相互作用もモデル化する
(d) Late Interaction
query と document の feature 内の相互作用を保持し、クエリとドキュメントの相互作用を出力層まで遅らせる。
ColBERT
Comparing Dual Encoder Architectures
Architecture
DSSMのような two tower model は dual encoder または bi-encoder architecture と呼ばれる
これらのモデルは、2つのサブネットワークを使用して入力データを embedding に encode する。
モデルの最適化は、embedding 空間での類似性指標に基づいて行われる
Siamese encoder model
2つの同一のサブネットワークで構成される特定のタイプの dual encoder
これらのサブネットワークはパラメータを共有する
Asymmetric Dual Encoder
2つの異なるパラメータ化された encoder を持つモデルを指す
dual encoder 間に特定の非対称性が必要なシナリオで利用される
https://blog.reachsumit.com/img/posts/2023/two-tower-model/dual_encoder_architectures.png
研究結果より、Siamese Dual Encoder は Asymmetric Dual Encoder よりも優れていることが示された
Asymmetric Dual Encoder が2つの入力を互いに独立した embedding 空間に mapping しがちであり、それが検索品質を損なう。
Asymmetric Dual Encoder のパフォーマンスは、2つの encoder 間でプロジェクション層を共有する(e)ことで Siamese Dual Encoder と同等かそれ以上に向上する
しかし、two tower 間で token embedder を共有するアプローチ(c)や token embedder をトレーニング中に固定する方法(d)は、少しの改善をする。
Enhancing Two Tower Model
Dual Augmented Two-Tower Model (DAT)
2つの tower 間の特徴インタラクションをモデル化するため、各 tower の embedding 入力を他の tower からの過去の positive インタラクションを捉えるベクトルをで拡張するアプローチ
効果は限られる
Interaction Enhanced Two Tower Model (IntTower)
情報相互作用と推論効率の両方を強調する two tower model
以下の3つのブロックで構成されている
Light-SE Block
異なる特徴の重要性を特定し、各タワーにおける精緻化された feature embedding を取得するために使用する
有益な特徴を選択的に強調し、あまり役に立たない特徴を抑制する
https://blog.reachsumit.com/img/posts/2023/two-tower-model/senet_lightse.png
Squeeze操作:空間次元全体の特徴マップを集約し、チャネル記述子を生成する
Excitation操作:チャネル依存性に基づいた self-gating mechanism によって有益な特徴を励起する
FE-Block
マルチレイヤーの user embeddings と item embeddings の最終レイヤーとの間で、fine-gaied early feature interaction を行う。
https://blog.reachsumit.com/img/posts/2023/two-tower-model/fe_block_cir_block.png
CIR Module
Contrastive Interaction Regularization module
Info NCE loss function を利用して、user と postive item の間の距離を短縮する
$ L_{\text{InfoNCE}}=-E\lbrack \log \frac{f(x, c)}{\sum_{x' \in X} f(x', c)} \rbrack
Architecture
Light-SE block、FE-Block、CIR Module を組み合わせている。
精度・パフォーマンス共に良い。
https://blog.reachsumit.com/img/posts/2023/two-tower-model/inttower_arch.png
Other
他にも紹介されている
Computing power cost-aware Online and Lightweight Deep pre-ranking system
Feature Selection method based on feature Complexity and variational Dropout
参考