Slide 1

Slide 1 text

Leveraging LLMs for Unsupervised Dense Retriever Ranking (SIGIR 2024) Ekaterina Khramtsova, Shengyao Zhuang, Mahsa Baktashmotlagh, and Guido Zuccon 発表者:神⽥峻介(Cierpa & Co., Inc.) @IR Reading 2024秋

Slide 2

Slide 2 text

想定するシナリオ 検索したいデータベース(⽂書コレクション)がある ある程度どんなクエリが投げられるかも想定できる ベクトル検索のための埋め込みモデルのオプションもたくさんある 🚀 ただ訓練コーパスや評価コーパスは無い 😇 教師無しで何かしらの埋め込みモデルを使って検索システムを作りたい どの埋め込みモデルを使うべきか 🤔

Slide 3

Slide 3 text

論⽂の主張とアイデア 最適な埋め込みモデルはコーパスによって⼤きく変わる ● 訓練コーパスと評価コーパスに乖離があると性能がでない ● 例えば MTEB 全体で最も性能がいい UAE-Large-V1 モデルは、FiQA タスク に限れば all-mpnet-base-v2 モデルより 10% も nDCG@10 が低い その検索したいコレクションに適したモデルを選ぶ必要がある 提案⼿法 ● LLM を使って擬似的に評価セットを構築する ● その評価セットで最も性能が良かったモデルを採⽤する

Slide 4

Slide 4 text

1. ⽂書について、LLMを使って疑似クエリを⽣成 2. 疑似クエリについて、LLMを使って適合⽂書を紐づけて評価セットを構築 3. その評価セットを使って検索モデルを評価 提案⼿法の全体の流れ

Slide 5

Slide 5 text

検索対象の⽂書コレクションから⼀部をサンプリング 実験では k = 100 件を設定している Step 1: ⽂書について疑似クエリを⽣成

Slide 6

Slide 6 text

個々の⽂書について、LLMを使って疑似クエリを L 件ずつ⽣成する ある同じプロンプトを使い、クエリの多様性は Top-p サンプリングで担保 どのようなクエリが期待されるか既知の前提でプロンプトを設計 Step 1: ⽂書について疑似クエリを⽣成

Slide 7

Slide 7 text

SciDocs クエリ⽣成のプロンプトの例 Generate a scientific paper title that is related to the following paper.\nPaper: {title} {text}\n Generate a headline for the following news article.\nArticle: {title} {text}\n Generate a question that the following financial web article can answer. Avoid generating general questions.\nArticle: {title} {text}\n Trec-News FiQA

Slide 8

Slide 8 text

LLM を使って疑似クエリに適合⽂書を紐づけたいが、全通りのクエリ⽂書ペアに LLM を適⽤するのは⾟いので m 件ずつ候補がほしい ➔ 評価対象のモデルで似た⽂書を抽出 ➔ 任意の Fusion アルゴリズムで Top-m 件を得る(和集合ではだめ?) Step 2: 疑似クエリに適合⽂書を紐づける a.k.a. プーリング

Slide 9

Slide 9 text

抽出した⽂書クエリペアについて、LLM を使ってアノテーションする 1. Pseudo-relevance judgments 2. Pseudo-reference lists Step 2: 疑似クエリに適合⽂書を紐づける

Slide 10

Slide 10 text

Step 2.1: Pseudo-relevance judgments LLM を使ってクエリと⽂書間の関連性を付与 過去の研究を参考に三段階でラベル付け ● Highly Relevant, Somewhat Relevant, or Not Relevant

Slide 11

Slide 11 text

SciDocs Pseudo-relevance judgments のプロンプトの例 For the following paper title and document, judge whether they are 'Highly Relevant', 'Somewhat Relevant', or 'Not Relevant'.\nTitle: {query}\nDocument: {title} {text} For the following headline and news article, judge whether they are 'Highly Relevant', 'Somewhat Relevant', or 'Not Relevant'.\nHeadline: {query}\nArticle: {title} {text} For the following query and document, judge whether they are 'Highly Relevant', 'Somewhat Relevant', or 'Not Relevant'.\nQuery: {query}\nDocument: {title} {text} Trec-News FiQA

Slide 12

Slide 12 text

LLM を使ってクエリについて⽂書のランキングを⽣成 ➔ 順位の⼀致度でモデルを評価する 今年の SIGIR で LLM を使った Setwise リランキングが提案されており、それを 使⽤する ( https://github.com/ielab/llm-rankers ) Step 2.2: Pseudo-reference lists

Slide 13

Slide 13 text

LLM で作った評価セットを⽤いて個々のモデルの性能を評価 ➔ そのスコアに応じてモデルをランキング どちらかの評価セットを使ってもいいし、両⽅を使ってもいい 両⽅使う場合は、最終的に任意の Fusion アルゴリズムでランキングをまとめる Step 3: 評価セットを使って検索モデルを評価

Slide 14

Slide 14 text

実験設定 ⽬的 ● 提案⼿法で予測したモデルのランキングは真のランキングと近いか? ● i.e., そのコーパスに対して最適なモデルを選択できるか? ⽐較対象のモデル ● MTEB のリーダーボードから性能が良いモデルを 47 個を選出 評価コーパス ● BEIR ベンチマークから 13 コーパスを選出 LLM ● FLAN-T5 (細かいパラメータは論⽂を参照)

Slide 15

Slide 15 text

実験結果

Slide 16

Slide 16 text

実験結果 各コーパスについて予測された埋め込みモデルのランキングの良さを評価 Δe = (予測されたベストモデルのnDCG) - (正解のベストモデルのnDCG) 値が⼩さいほどベストに選んだモデルが理想に近い

Slide 17

Slide 17 text

実験結果 MS MARCO で得られたモデルのランキングはあまり効果的では無い ➔ 他のベンチマークのランキングがそのコーパスに刺さるとは限らない

Slide 18

Slide 18 text

実験結果 Query Performance Prediction の⽂脈で提案された⼿法もあまり効果的では無い QPP はモデルを個々にスコアリングするタスク → ⽬的の差異が結果に影響? (Fusion は結構効果的だがよくわかってない)

Slide 19

Slide 19 text

実験結果 提案⼿法は全体的に良い結果 ArguAna と Trec-News では最も良いモデルを⼀致させた

Slide 20

Slide 20 text

Ablation Study: どのステップが効果的?

Slide 21

Slide 21 text

Ablation Study: どのステップが効果的? LLMを使ったランキング(QFR)よりは、少なくともベストなモデルを当てるた めにはLLMを使った関連性付与(QFJ)の⽅が平均して効果的

Slide 22

Slide 22 text

Ablation Study: どのステップが効果的? どちらの結果も Fusion して使った⽅が性能は改善する

Slide 23

Slide 23 text

感想 ● シナリオは多くの新規開発で刺さる気がする ● ⼀旦当たりを付けて⾛り始めるためには⼀つ⼿段として持っておくと良さそう 疑問 ● 教師無しの埋め込みモデルのセレクションを⽬指した論⽂だったが、⽣成したデー タはモデルの Tuning にも使える? ● ⽂書コレクションに効果的なモデルを選ぶのって実際そんなに難しい?🤔 ● 例えば、⾦融系とか化学系とかある程度似たベンチマーク結果から⾒積もれそう ● その⾒積もりと提案⼿法とのギャップが知りたいと思った まとめ