NIPS2010読み会
    2010-12-26
  Yoshihiko Suhara
   @sleepy_yoshi


                     1
挨拶
• 名前
 – 数原 良彦 (すはら よしひこ)
 – @sleepy_yoshi


• ランキング萌え

• 本当は他の論文を紹介する予定だったが,論文が
  むずかしく理解でき やはりランキングを愛している
  ため,本論文を選択
 – rank aggregationは未知の領域


                             2
0354

A New Probabilistic Model for
          Rank Aggregation

        T. Qin†, X. Geng‡, T.-Y. Liu†
                 † Microsoft Research Asia
            ‡ Chinese Academy of Sciences


                                             3
一言要約
• Rank aggregationのための新しい確率モ
  デルを提案。




                               4
Rank aggregation?



                    5
Rank Aggregationとは
• 課題
 – 複数のランキングリストを入力として受け取り,評価値の
   高いリストを出力することを目指す


• アプリケーション
 – メタサーチエンジン
 – 複数のリストを統合するようなアプリケーション
 – Etc..




                                6
メタサーチエンジン
                       Meta search engine
                          hoge              search




  Search engine A      Search engine B        Search engine C
    hoge      search    hoge       search       hoge      search           Final ranking:

Ranking:               Ranking:               Ranking:



                                                                   Rank aggregation




                                                                                       7
メタサーチエンジン
                       Meta search engine
                          hoge              search
                                                              Rank
                                                           aggregation
  Search engine A      Search engine B        Search engine C
    hoge      search    hoge       search       hoge      search           Final ranking:

Ranking:               Ranking:               Ranking:



                                                                   Rank aggregation




                                                                                       8
Rank aggregation
      is NOT
 learning to rank


                    9
Learning to rankとの違い
• Learning to rank (≒ Learning to rank “documents”)
   – 入力: 文書集合
   – 出力: 各文書のスコア or ランキングリスト


• Rank aggregation
   – 入力: 複数のランキングリスト
   – 出力: ひとつのランキングリスト




※ 公開データセットや学会のセッション分けではRank aggregationはlearning to rank
とされていることもあるが,ここでは区別のため,Learning to rankではないとした           10
表記法




      11
表記法 (1/3)
•   : 文書i の順位
•  −1 (): i位に位置する文書
                 ()

                              1

                              2
                              3
                              4


                  −1 ()       12
表記法 (2/3)
• 順列 =  −1 1 ,  −1 2 , … ,  −1 ()

• n次の対称群
   – 「n個のものを並び替える」操作を元とする群
   – 集合 {1, 2, ..., n} の上の置換(全単射)全体


• − : 上位k件が固定された群
   – − =  ∈  |  = , ∀ = 1, … , 



                                                        13
表記法 (3/3)
• − : 上位k件がと同様に順序づけられた群
  – −  = | ∈  ,  −1  =  −1  , ∀ = 1, … , 
                                 上位k件がと等しい




                                                                        14
既存手法の俯瞰




          15
Rank aggregationの分類と
         本論文が扱う課題

               Supervised           Unsupervised


              Weighted BordaCount     BordaCount
Order-based
               Mallows model         Mallows model
                                      Luce model

Score-based       Linear              CombMNZ
                Combination



                                       [Aslam+ 02]を参考   16
BordaCount (Borda-fuse) [Aslam+ 02]
• 選挙のための得点方式
• 候補者数N人に対し,投票者は順位を付けて投票
    – 1位にN点,2位にN-1点,…
                                                                 Final results
Search engine A      Search engine B        Search engine C
 hoge       search    hoge         search    hoge       search
                                                                          score
     A    +4                                     B    +4            B    11
                         B    +4

     B    +3                  +3                 A    +3            A     9
                         C

     C    +2             A    +2                 D    +2            C    6

     D    +1             D    +1                 C    +1            D    4


                     訓練データが不要 (unsupervised)                                  17
Weighted BordaCount (Borda-fuse)
• 検索エンジンの性能に基づいて得点に重みづけを行う
    – 訓練データにおける各エンジンの検索評価指標の値を利用

          x0.5                   X3.0                X0.1        Final results
Search engine A      Search engine B        Search engine C
 hoge       search    hoge         search    hoge       search
                                                                          score
     A    +4                                     B    +4            B    13.9
                         B    +4

     B    +3                  +3                 A    +3            C    10.1
                         C

     C    +2             A    +2                 D    +2            A     8.3

     D    +1             D    +1                 C    +1            D    3.7


                  BordaCountよりも性能が良い [Aslam+ 02]                            18
MallowsモデルとLuceモデル




                     19
既存の順位モデル
• Mallowsモデル [Mallows 57]
  – 距離ベース手法


• Luceモデル [Luce 59][Plackett 63]
  – 多段階手法




                                   20
順序の距離を用いたRank aggregationの例

• 入力: M個のリスト ( = 1, … )
• 出力: 各リストに対する距離の和が最小のリスト
                         

          = argmin          (,  )
                         =1




     どのようにリスト間の距離を測るか?
                                                21
順序リスト間の距離
• 代表的な距離

                                      
                                                                  2
Spearman距離            ,  =            −  
                                     =1
                                      

Spearman footrule     ,  =            − ()
                                     =1

                                      

Kendall距離             ,  =                1  −1    > −1 
                                     =1 >
                                                     1  = 1 if x is true, 0 otherwise




                                                                                          22
補足: xx距離とxx相関係数の関係
• Spearmanの順位相関係数は,Spearman距離を
   −1,1 に正規化したもの

• Kendallの順位相関係数は,Kendall距離を −1,1
  に正規化したもの



                           / ̄ ̄ ̄\
                          / ─    ─  \    これ豆知識な。
                        / (●) (●) \.
                        |   (__人__)    |
                        \     ` ⌒´   /
                        /            \

                                                   23
Mallowsモデル
• 距離ベースの確率モデル
                           1                                                       分散
          ,  =            exp(− ,  )
                       (, )                                                 パラメータ

                                                                 ∈  ,  ∈ 

            ,  =             exp(− ,  )
                         ∈


Rank aggregationへの利用法 [Lebanon+ 02]
                                              
                        1
            = max            exp(−                 (,  )
                    (, )
                                             =1



              計算に膨大なコスト ((!)) がかかる                                                    24
Luce (Plackett-Luce) モデル
• 各順位ごとに確率を計算する多段階の確率モデル
• 個々の文書iに対するスコア を用いて以下の通り計算
                                     exp(−1 1 )
    −1 (1)が1位にランクされる確率           
                                   =1 exp(−1  )

                                     exp(−1 2 )
    −1 (2)が2位にランクされる確率           
                                   =2 exp(−1  )

順列の確率は,              
                               exp(−1  )
              =          
                      =1   = exp(−1  )


     文書のスコアの関数として定義しているため,
     多目的の順列間距離を用いることができない                                 25
提案法




      26
提案手法のアプローチ
• Mallowsモデルのように距離ベースの確率モデルで
  あり,Luceモデルのように段階ごとに効率よく確率を
  計算できるモデル

• 右剰余類 (right coset) を用いた距離のモデル化




                                   27
右剰余類− 
                           −4 
                          C                  と同じ
A    A      A                    C      C

     B                    B
B               B                B      B

C    C          C         D
                                 D     D
                    ・・・
                          E
D    D          E                E     E

E    F                    A
                D                A      F
F    E          F         F
                                 F      A

    全順列 (=6!)                  上位4件がと等しい
                               全順列の部分集合
                                                     28
提案手法: CPSモデル (1/2)
• Coset-permutation distance based stagewise (CPS)
                                                                     右剰余類に含まれる全
                              1                                      リストとリストの距離
      − ,  =                                (, )         の平均
                           − 
                                        ∈− 



Luceモデルよろしく,k位のランクの確率は,

                      exp(− − ,  )
                
                = exp(−         − , ,  ,  )

                                         − , , 

                                                                                29
提案手法: CPSモデル (2/2)
• リストの確率は
                             
                                       exp(− − ,  )
        ,  =               
                            =1   = exp(−   − , ,  ,  )


• 入力リストが複数与えられた場合には,
                                                     m番目の入力リスト
                                          
                                   exp(−    =1     − ,  )
   ,  =                           
                    =1     = exp(−    =1     − , ,  ,  )

    = *1 , … ,  +
    = *1 , … ,  +
                                                                                         30
CPSモデルを用いたRank aggregation
• 確率が最大となるランキングリストを選択

                        = argmax (|, )


                                     
                              exp(−    =1     − ,  )
  ,  =                       
                 =1    = exp(−   =1     − , ,  ,  )

                                                              = *1 , … ,  +
                                                              = *1 , … ,  +



                                                                                      31
効率的な計算
•   −  ! の計算量が必要に見えるが,実際には
  (2 )の計算量で済む.
 – 詳細は論文を参考




                               32
既存モデルとの関係
• Mallowsモデル
  – 距離ベースであること
  – Mallowsモデルとの大きな違いは計算効率


• Luceモデル
  – 段階ごとに確率を計算すること




                             33
4. Algorithms for Rank Aggregation




                                 34
学習
• 訓練データ  =          , ()
  –   : ground truthランキング
  – () : M個の入力ランキング

の最尤推定を行うため,以下の対数尤度をについて最大化




                                     eは凸関数かつ対数凸関数であるため


   ()は上に凸であるため,
   勾配法などで大域的最適なを求めることができる
                                                         35
出力ランキングの推定
• 入力: M個のランキング,学習したパラメータ
• 出力: 最終ランキング

        M個のランキングとパラメータを用いて
          最適なランキングを推定する


• 推定手法1: global inference
• 推定手法2: sequential inference
  – 高速化した手法


                                 36
推定手法1: global inference
• Mallowsモデルと同様に全順列 ( ∈  全て) について確率
  を計算する
  • 計算量はんぱない


                                     
                             exp(−     =1     − ,  )
   ,  =                      
                  =1   = exp(−   =1     − , ,  ,  )




                                                                                    37
推定手法2: Sequential inference
• 最終ランキングの最上位から文書をひとつずつ決定していく




                                38
実験



     39
実験条件 (1/2)
• データセット
 – LETORデータセット (MQ2007-agg, MQ2008-agg)
 – MQ2008-smallを作成
    • 8文書以下のクエリに限定
 – 3段階の適合性評価: (Highly relevant, relevant, irrelevant)


• 評価方法
 – 評価指標: NDCG
 – 5-fold Cross validationの結果を平均



                                                    40
補足: NDCG
• Normalized Discounted Cumulative Gain
   – [0, 1]
• 適合性評価が多段階のタスクを評価する指標
                             
                                    2 − 1
              @ =                           e.g.,  = *4,3,2,1+
                                   log 2 (1 + )
                            =1



                                 @
                  @ =
                                @

       @: 理想的なランキングにおけるDCG@kの値



                                                                                 41
実験条件 (2/2)
• 比較手法
  –   CPS-G: CPSモデル (global inference)
  –   CPS-S: CPSモデル (sequential inference)
  –   Mallows: Mallowsモデル (最尤推定)
  –   MallApp: Mallowsモデル (MCMCサンプリングによる推定)
  –   BordaCount


• MQ2008-smallのみの利用
  – CPS-G, Mallows, MallAppは計算量の問題で大規模データ
    に適用不可能なため,MQ2008-smallのみを用いて評価

                                          42
結果




     43
結果




     WeightedBordaCountじゃないみたい


                            44
まとめ
• Rank aggregationのための新しい確率モデルである
  CPSモデルを提案した
• Coset-permutation distanceを利用する
• Luceモデル (高速に計算可能) と Mallowsモデル (高
  い表現力) の利点を引き継いでいる

• Future work
  – (1) 3つの距離以外にも効率よく計算可能なモデルを
  – (2) unsupervisedなrank aggregationにも適用したい
  – (3) 提案モデルの他の利用方法を模索したい


                                               45
参考文献
• 引用文献
 – [Aslam+ 01] J. A. Aslam, M. Montague. Models for
   Metasearch. SIGIR2001.
 – [Lebanon+ 02] G. Lebanon, J. Lefferty. Cranking: Combining
   Rankings Using Conditional Probability Models on
   Permutation. ICML2002.


• 距離の確率モデルについては下記のサーベイ文献
  を参考にした
 – [神嶌 09] 神嶌敏弘. 順序の距離と確率モデル. SIG-
   DMSM-A902-07. 2009.


                                                           46
Thank you!




             47

NIPS2010読み会: A New Probabilistic Model for Rank Aggregation

  • 1.
    NIPS2010読み会 2010-12-26 Yoshihiko Suhara @sleepy_yoshi 1
  • 2.
    挨拶 • 名前 –数原 良彦 (すはら よしひこ) – @sleepy_yoshi • ランキング萌え • 本当は他の論文を紹介する予定だったが,論文が むずかしく理解でき やはりランキングを愛している ため,本論文を選択 – rank aggregationは未知の領域 2
  • 3.
    0354 A New ProbabilisticModel for Rank Aggregation T. Qin†, X. Geng‡, T.-Y. Liu† † Microsoft Research Asia ‡ Chinese Academy of Sciences 3
  • 4.
  • 5.
  • 6.
    Rank Aggregationとは • 課題 – 複数のランキングリストを入力として受け取り,評価値の 高いリストを出力することを目指す • アプリケーション – メタサーチエンジン – 複数のリストを統合するようなアプリケーション – Etc.. 6
  • 7.
    メタサーチエンジン Meta search engine hoge search Search engine A Search engine B Search engine C hoge search hoge search hoge search Final ranking: Ranking: Ranking: Ranking: Rank aggregation 7
  • 8.
    メタサーチエンジン Meta search engine hoge search Rank aggregation Search engine A Search engine B Search engine C hoge search hoge search hoge search Final ranking: Ranking: Ranking: Ranking: Rank aggregation 8
  • 9.
    Rank aggregation is NOT learning to rank 9
  • 10.
    Learning to rankとの違い •Learning to rank (≒ Learning to rank “documents”) – 入力: 文書集合 – 出力: 各文書のスコア or ランキングリスト • Rank aggregation – 入力: 複数のランキングリスト – 出力: ひとつのランキングリスト ※ 公開データセットや学会のセッション分けではRank aggregationはlearning to rank とされていることもあるが,ここでは区別のため,Learning to rankではないとした 10
  • 11.
  • 12.
    表記法 (1/3) • : 文書i の順位 • −1 (): i位に位置する文書 () 1 2 3 4 −1 () 12
  • 13.
    表記法 (2/3) • 順列= −1 1 , −1 2 , … , −1 () • n次の対称群 – 「n個のものを並び替える」操作を元とする群 – 集合 {1, 2, ..., n} の上の置換(全単射)全体 • − : 上位k件が固定された群 – − = ∈ | = , ∀ = 1, … , 13
  • 14.
    表記法 (3/3) • −: 上位k件がと同様に順序づけられた群 – − = | ∈ , −1 = −1 , ∀ = 1, … , 上位k件がと等しい 14
  • 15.
  • 16.
    Rank aggregationの分類と 本論文が扱う課題 Supervised Unsupervised Weighted BordaCount BordaCount Order-based Mallows model Mallows model Luce model Score-based Linear CombMNZ Combination [Aslam+ 02]を参考 16
  • 17.
    BordaCount (Borda-fuse) [Aslam+02] • 選挙のための得点方式 • 候補者数N人に対し,投票者は順位を付けて投票 – 1位にN点,2位にN-1点,… Final results Search engine A Search engine B Search engine C hoge search hoge search hoge search score A +4 B +4 B 11 B +4 B +3 +3 A +3 A 9 C C +2 A +2 D +2 C 6 D +1 D +1 C +1 D 4 訓練データが不要 (unsupervised) 17
  • 18.
    Weighted BordaCount (Borda-fuse) •検索エンジンの性能に基づいて得点に重みづけを行う – 訓練データにおける各エンジンの検索評価指標の値を利用 x0.5 X3.0 X0.1 Final results Search engine A Search engine B Search engine C hoge search hoge search hoge search score A +4 B +4 B 13.9 B +4 B +3 +3 A +3 C 10.1 C C +2 A +2 D +2 A 8.3 D +1 D +1 C +1 D 3.7 BordaCountよりも性能が良い [Aslam+ 02] 18
  • 19.
  • 20.
    既存の順位モデル • Mallowsモデル [Mallows57] – 距離ベース手法 • Luceモデル [Luce 59][Plackett 63] – 多段階手法 20
  • 21.
    順序の距離を用いたRank aggregationの例 • 入力:M個のリスト ( = 1, … ) • 出力: 各リストに対する距離の和が最小のリスト = argmin (, ) =1 どのようにリスト間の距離を測るか? 21
  • 22.
    順序リスト間の距離 • 代表的な距離 2 Spearman距離 , = − =1 Spearman footrule , = − () =1 Kendall距離 , = 1 −1 > −1 =1 > 1 = 1 if x is true, 0 otherwise 22
  • 23.
    補足: xx距離とxx相関係数の関係 • Spearmanの順位相関係数は,Spearman距離を −1,1 に正規化したもの • Kendallの順位相関係数は,Kendall距離を −1,1 に正規化したもの / ̄ ̄ ̄\ / ─ ─ \ これ豆知識な。 / (●) (●) \. | (__人__) | \ ` ⌒´ / / \ 23
  • 24.
    Mallowsモデル • 距離ベースの確率モデル 1 分散 , = exp(− , ) (, ) パラメータ ∈ , ∈ , = exp(− , ) ∈ Rank aggregationへの利用法 [Lebanon+ 02] 1 = max exp(− (, ) (, ) =1 計算に膨大なコスト ((!)) がかかる 24
  • 25.
    Luce (Plackett-Luce) モデル •各順位ごとに確率を計算する多段階の確率モデル • 個々の文書iに対するスコア を用いて以下の通り計算 exp(−1 1 ) −1 (1)が1位にランクされる確率 =1 exp(−1 ) exp(−1 2 ) −1 (2)が2位にランクされる確率 =2 exp(−1 ) 順列の確率は, exp(−1 ) = =1 = exp(−1 ) 文書のスコアの関数として定義しているため, 多目的の順列間距離を用いることができない 25
  • 26.
  • 27.
    提案手法のアプローチ • Mallowsモデルのように距離ベースの確率モデルで あり,Luceモデルのように段階ごとに効率よく確率を 計算できるモデル • 右剰余類 (right coset) を用いた距離のモデル化 27
  • 28.
    右剰余類− −4 C と同じ A A A C C B B B B B B C C C D D D ・・・ E D D E E E E F A D A F F E F F F A 全順列 (=6!) 上位4件がと等しい 全順列の部分集合 28
  • 29.
    提案手法: CPSモデル (1/2) •Coset-permutation distance based stagewise (CPS) 右剰余類に含まれる全 1 リストとリストの距離 − , = (, ) の平均 − ∈− Luceモデルよろしく,k位のランクの確率は, exp(− − , ) = exp(− − , , , ) − , , 29
  • 30.
    提案手法: CPSモデル (2/2) •リストの確率は exp(− − , ) , = =1 = exp(− − , , , ) • 入力リストが複数与えられた場合には, m番目の入力リスト exp(− =1 − , ) , = =1 = exp(− =1 − , , , ) = *1 , … , + = *1 , … , + 30
  • 31.
    CPSモデルを用いたRank aggregation • 確率が最大となるランキングリストを選択 = argmax (|, ) exp(− =1 − , ) , = =1 = exp(− =1 − , , , ) = *1 , … , + = *1 , … , + 31
  • 32.
    効率的な計算 • − ! の計算量が必要に見えるが,実際には (2 )の計算量で済む. – 詳細は論文を参考 32
  • 33.
    既存モデルとの関係 • Mallowsモデル – 距離ベースであること – Mallowsモデルとの大きな違いは計算効率 • Luceモデル – 段階ごとに確率を計算すること 33
  • 34.
    4. Algorithms forRank Aggregation 34
  • 35.
    学習 • 訓練データ = , () – : ground truthランキング – () : M個の入力ランキング の最尤推定を行うため,以下の対数尤度をについて最大化 eは凸関数かつ対数凸関数であるため ()は上に凸であるため, 勾配法などで大域的最適なを求めることができる 35
  • 36.
    出力ランキングの推定 • 入力: M個のランキング,学習したパラメータ •出力: 最終ランキング M個のランキングとパラメータを用いて 最適なランキングを推定する • 推定手法1: global inference • 推定手法2: sequential inference – 高速化した手法 36
  • 37.
    推定手法1: global inference •Mallowsモデルと同様に全順列 ( ∈ 全て) について確率 を計算する • 計算量はんぱない exp(− =1 − , ) , = =1 = exp(− =1 − , , , ) 37
  • 38.
    推定手法2: Sequential inference •最終ランキングの最上位から文書をひとつずつ決定していく 38
  • 39.
  • 40.
    実験条件 (1/2) • データセット – LETORデータセット (MQ2007-agg, MQ2008-agg) – MQ2008-smallを作成 • 8文書以下のクエリに限定 – 3段階の適合性評価: (Highly relevant, relevant, irrelevant) • 評価方法 – 評価指標: NDCG – 5-fold Cross validationの結果を平均 40
  • 41.
    補足: NDCG • NormalizedDiscounted Cumulative Gain – [0, 1] • 適合性評価が多段階のタスクを評価する指標 2 − 1 @ = e.g., = *4,3,2,1+ log 2 (1 + ) =1 @ @ = @ @: 理想的なランキングにおけるDCG@kの値 41
  • 42.
    実験条件 (2/2) • 比較手法 – CPS-G: CPSモデル (global inference) – CPS-S: CPSモデル (sequential inference) – Mallows: Mallowsモデル (最尤推定) – MallApp: Mallowsモデル (MCMCサンプリングによる推定) – BordaCount • MQ2008-smallのみの利用 – CPS-G, Mallows, MallAppは計算量の問題で大規模データ に適用不可能なため,MQ2008-smallのみを用いて評価 42
  • 43.
  • 44.
    結果 WeightedBordaCountじゃないみたい 44
  • 45.
    まとめ • Rank aggregationのための新しい確率モデルである CPSモデルを提案した • Coset-permutation distanceを利用する • Luceモデル (高速に計算可能) と Mallowsモデル (高 い表現力) の利点を引き継いでいる • Future work – (1) 3つの距離以外にも効率よく計算可能なモデルを – (2) unsupervisedなrank aggregationにも適用したい – (3) 提案モデルの他の利用方法を模索したい 45
  • 46.
    参考文献 • 引用文献 –[Aslam+ 01] J. A. Aslam, M. Montague. Models for Metasearch. SIGIR2001. – [Lebanon+ 02] G. Lebanon, J. Lefferty. Cranking: Combining Rankings Using Conditional Probability Models on Permutation. ICML2002. • 距離の確率モデルについては下記のサーベイ文献 を参考にした – [神嶌 09] 神嶌敏弘. 順序の距離と確率モデル. SIG- DMSM-A902-07. 2009. 46
  • 47.