sigir2011読み会 3. learning to rank
DESCRIPTION
SIGIR2011読み会の発表資料TRANSCRIPT
Session 3: Learning to Rank
担当: 数原
【SIGIR2011勉強会】
Learning to rank 30秒解説 (1/2)
近代的な検索システムは多数のランキング素性を用いたランキング関数の出力値で文書をソート
クエリq
クエリqを含む 文書d
𝜙1(𝑞, 𝑑)
𝜙𝑚(𝑞, 𝑑)
𝜙𝑚+1(𝑑)
𝜙𝑛(𝑑)
𝐰TΦ(𝑞, 𝑑)
・・・ ・・・
検索スコア
文書の重要度 (クエリ非依存)
ランキング関数
クエリ・文書関連度 (クエリ依存)
e.g., BM25
e.g., PageRank
= Φ(𝑞, 𝑑) 2
Learning to rank 30秒解説 (2/2)
クエリ毎に作成された評価データなどを用いてランキング関数を生成する技術 (= Learning to rank)
Training
data
(𝒙11, 𝑦11)
…
… (𝒙21, 𝑦21)
(𝒙𝑛11, 𝑦𝑛11)
(𝒙12, 𝑦12)
…
(𝒙22, 𝑦22)
(𝒙𝑛22, 𝑦𝑛22)
(𝒙1𝑁, 𝑦1𝑁)
…
(𝒙2𝑁, 𝑦2𝑁)
(𝒙𝑛𝑁𝑁, 𝑦𝑛𝑁𝑁)
𝑞1 𝑞2 𝑞𝑁
Learning-to-rank
アルゴリズム
ランキング関数
3
Session 3: Learning to Rank
Bagging Gradient-Boosted Trees for High Precision, Low
Variance Ranking Models
by Y. Ganjisaffar, R. Caruana, C. V. Lopes
Learning to Rank for Freshness and Relevance
by N. Dai, M. Shokouhi, B. D. Davison
A Cascade Ranking Model for Efficient Ranked Retrieval
by L. Wang, J. Lin, D. Metzler
Relevant Knowledge Helps in Choosing Right Teacher:
Active Query Selection for Ranking Adaptation
by P. Cai, W. Gao, A. Zhou, K.-F. Wong
4
Bagging Gradient-Boosted Trees for High Precision,
Low Variance Ranking Models
5
Bagging Gradient-Boosted Trees for High Precision,
Low Variance Ranking Models
LambdaMARTの拡張であるBL-MARTの提案.
背景 以下の2つの要因を排除することで精度向上を目指す
vs. bias => boosting (LambdaMARTで実現)
vs. variance => bagging (今回の貢献)
アプローチ Baggingを行うことにより,varianceを抑える
パラメータの組み合わせを網羅的に探索
学習の工夫
sub-sample
random feature selection
6
補足: Bagging と Bias/Variance
Bagging
Bias / Variance
…
…
学習アルゴリズム
(LambdaMART)
𝑠1
𝑠2
𝑠𝑁
1
𝑁 𝑠𝑖
𝑁
𝑖=1
検索スコア
bias小 / variance小 bias小 / variance大 bias大 / variance小 bias大 / variance大
7
実験結果: 世界最高レベルの精度を達成
8
Learning to Rank Freshness and Relevance
9
Learning to Rank Freshness and Relevance
FreshnessとRelevanceについて最適化を行うランキング学習アルゴリズムCS-DACを提案
背景 時事的なクエリは,検索結果の新鮮さ (freshness) が大切
ただ,freshnessは適合度 (relevance) とは独立した概念
アプローチ FreshnessとRelevance の調和平均を混合ラベルとして利用
βパラメータは学習
この混合ラベルを用いて最適化することでFreshnessとRelevanceに対して適切なモデル学習を実現
Temporal feature を利用
Divide-and-conquer ranking framework の利用
10
CS-DAC RankingSVM
𝒚𝑛𝑤𝑇𝒙𝑛
loss
クエリと文書 (i.e., 文書ペア) に対して
ヒンジ損失の傾きに対して重みを与えている
入力クエリによって,ランキングモデルの重みを変更 機械学習における局所線形埋め込みのアイディア
ただし,
個々のランキングモデル𝑓𝑖(⋅)の目的関数
(RankingSVMの改良)
11
実験結果
Freshness Relevance
Freshness, Relevance両方の評価でベースラインを上回る精度
[Dai+ 11]より抜粋
12
A Cascade Ranking Model
for Efficient Ranked Retrieval
13
A Cascade Ranking Model for Efficient Ranked Retrieval
ランキング処理を多段階のステージ処理で行うことにより,高精度かつ高速なランキング関数を実現
背景
高精度なランキング関数のためには多数のランキング素性が必要
計算コストが高い
精度と同時に効率 (速度) も最適化したい
アプローチ 文書集合を減らしながら段階毎にランキング関数を適用
「精度(NDCG)」と「コスト(ランキング素性の計算にかかる時間×ランキング対象の文書数)」を目的関数とした学習を行う
14
Cascade Ranking Model
ステージ毎に文書群の pruning と ranking を行う
各ステージ𝑆𝑡は,枝刈り関数𝐽𝑡(𝛽𝑡),ランキング関数𝐻𝑡,重み𝛼𝑡で構成される
𝑆𝑡 =< 𝐽𝑇 𝛽𝑡 , 𝐻𝑡, 𝛼𝑡 >
[Wang+ 11]より抜粋
15
Relevant Knowledge Helps in Choosing Right Teacher:
Active Query Selection for Ranking Adaptation
16
Relevant Knowledge Helps in Choosing Right Teacher:
Active Query Selection for Ranking Adaptation
Domain adaption + Active learning
背景
評価データ作成はコストが高い
ソースドメインの訓練データとターゲットドメインの訓練データが (少量) 与えられた場合に効率よく精度を上げる未評価のクエリの評価データを作成したい
使える訓練データをうまく活用
(今回はクエリ単位で重みづけ)
[Cai+ 11]より抜粋
アプローチ Vote entropyを用いて手持ち訓練データで生成されるランキング関数では不得意なクエリを発見⇒評価付与
ソースドメインの訓練データはクエリ毎に異なる重みを用いて学習
17
RankingSVM for Ranking Adapation
RankingSVMを改良 Query weighting による domain adaptation
事前パラメータ: 𝜆𝑠, 𝜆𝑡
⋅ +はヒンジ損失
クエリに対する重み
NDCG
気持ち: ターゲットドメインの訓練データで学習したモデルのNDCGが高いクエリ
⇒重み大
18
クエリ選択と学習アルゴリズム
生成したランキングモデル群に対して最も一致しないクエリ
を選択
vote entropyを利用
気持ち: ランキングモデルの予測が最も不一致の場合にVE(q)は最大
(メンバーの半分が文書𝑑𝑖を文書𝑑𝑗より上位にランキ
ングすると予測)
[Cai+ 11]より抜粋
19