Diverse Ranking with Policy-Value Networks

Abstract:

搜索結果多樣性的目標是從候選集合中選擇的文檔儘可能滿足多的主題。一般來說,選擇樣本的最優子集是一個NP難問題。已經存在的方法通常形式化問題爲使用貪心序列文檔選擇來對文檔進行排序。每次排序選擇能夠最大化額外信息的文檔。很顯然,貪心選擇產生了局部最優排名。這篇文章裏提出使用蒙特卡洛樹搜索(MCTS)加強馬爾科夫決策過程(MDP)來減輕這個問題,名爲M2DivM^2Div。在M2DivM^2Div中多樣性排名的構建被形式化爲MDP過程,每個動作對應於選擇一個文檔。給定一個由query,已經選擇的文檔,候選集組成的MDP狀態,利用一個遞歸神經網絡產生policy function來指導文檔選擇,value function用來預測整個排序的質量。接着使用MCTS來加強raw policy和value通過挖掘後續位置的可能排名,獲得一個更好的search policy用於decision-making。

Introduction

搜索結果多樣性可以形式化爲從候選集合中選擇一個文檔子集能夠覆蓋儘可能多的子主題。由於一個文檔的多樣性依賴於其他選擇的文檔,所以選擇一個最優的文檔子集是一個NP難問題。

已經在貪心文檔選擇框架下提出大量多樣性排序算法。例如,代表性方法MMR使用查詢文檔相關性的總和和最大化文檔距離(marginal relevance)作爲標準。貪心序列文檔選擇簡化了排序過程並且加速了在線排名。但是由貪心文檔選擇產生的排名是局部最優的。在每個排名位置,貪心選擇機制只考慮了當前排名位置的概率。但是局部最優文檔不能導致全局最優的多樣性排序,因爲文檔的利用不是獨立的。當前文檔的選擇將會改變後續候選文檔的效用並且因此影響後續的決策。一般來說,排名算法需要挖掘整個排名空間,然後這在現實中是不可行的,因爲N個文檔存在N!種不同的排名。

受啓發於AlphaGo和AlphaGo Zero在Game of Go上面的成功,在這篇文章中提出MCTS加強的MDP模型用於多樣性排序,用於減輕局部最優排名問題。在這個新的排名模型中,使用MDP來建模序列文檔選擇過程用於多樣性排名。在每個時間步驟中,基於query和之前的文檔排序,使用一個RNN來產生policy(候選文檔的分佈)來指導文檔選擇和同於估計當前整個文檔排名質量的value。爲了減輕局部最優問題,不是使用raw policy來指導選擇,而是執行一個探索性的decision making:使用MCTS來探索在後續位置可能的文檔排名,生成一個加強版的search policy用於進行當前位置的文檔選擇。由於它探索了更過未來可能的文檔排序,所以search policy與之前的raw policy相比有更高的概率來選擇一個全局最優的文檔。該過程在每個決策步驟迭代執行直到候選集合爲空。

強化學習被用於訓練模型參數。在訓練階段,在每個訓練迭代和對於每個訓練query,在每個排序位置由當前的policy function和value function指導的MCTS被執行。MCTS產生一個search policy用於文檔選擇。接着模型參數被調整來最小化損失函數。

損失函數由兩項組成:
1)predicted value和整個文檔排序的最終質量(αNDCG@M\alpha-NDCG@M)的平方損失。
2)predicted raw policy和search policy的交叉熵。隨機梯度下降被利用於指導最優化。

相關工作

2.1搜索結果多樣性

通常的做法是將搜索中的多樣化排名列表的構建形式化爲順序文檔選擇的過程。這是基於以下觀察:在多樣化排序中,文檔可以提供的附加效用不僅取決於文檔本身,還取決於前面的文檔。不同的模型設計了不同的標準來估計搜索用戶可以從候選文檔中獲取的效用。

根據這一想法,Car-bonell和Goldstein 提出了最大邊際相關性(maximal marginal relevance)標準來指導文檔的選擇。在每次迭代中,選擇具有最高邊際相關性得分的文檔,其中得分是查詢 - 文檔相關性與文檔與當前結果集中的文檔的最大距離的線性組合,也就是新穎性。然後,在下一次迭代中隨着結果集中文檔的數量增加1更新邊際相關性得分。基於MMR,Guo和Sanner提出了概率潛在MMR模型。 xQuAD以子查詢的形式直接模擬原始查詢的不同方面,並將效用估計爲檢索到的文檔與每個識別的子查詢的相關性。 PM-2將找到不同搜索結果的問題視爲文檔排名的比例表示。胡等人提出了一種效用函數,它明確地利用了查詢的層次意圖,並選擇了最大化層次結構多樣性的文檔。評估方法也是基於意圖層次結構開發的。He等人提出結合隱式和顯式主題表示來構建更多樣化的排名。 Gollapudi和Sharma提出了一種結果多樣化的公理方法。

機器學習技術已被應用於構建多樣性排名,也採用貪婪的順序決策作爲基本框架。 關鍵問題是如何在training queries的基礎上自動學習效用函數。 一些研究人員將utility定義爲手工相關特徵和新穎特徵的線性組合。 效用函數中的新穎項可以用神經張量網絡的深度學習模型建模。 江等人使用遞歸神經網絡和max-pooling來明確地利用注意機制來模擬子主題信息。 夏等人。 [33]提出用MDP模擬文檔utility的動態,並用policy gradient來學習模型參數。

2.2 強化學習for IR

強化學習已廣泛用於variant IR應用。例如,在[20]中,提出了一種基於部分觀察馬爾可夫決策過程(POMDP)的雙贏搜索框架,將會話搜索建模爲雙智能代理隨機遊戲。在模型中,搜索用戶的狀態被編碼爲四個隱藏的決策制定狀態。在[38]中,基於日誌的文檔re-ranking被建模爲POMDP。 [33]和[30]建議用MDP構建文檔排名的過程,分別用於搜索結果多樣化和相關性排序的排序任務。多武裝強盜,另一種強化學習模型,也被廣泛應用於排名學習。例如,[23]提出了兩種在線學習強盜算法,用於根據用戶點擊行爲來學習不同的文檔排名。 [37]將信息檢索系統的交互式優化正式化爲決鬥性強盜問題,[16]提出級聯強盜爲用戶識別K最具吸引力的文檔。另見[12]
強化學習模型也用於構建推薦系統。例如,[26]設計了一個基於MDP的推薦模型,用於考慮每個建議的長期影響和每個建議的預期值。 Lu和Yang [19]提出了POMDP-Rec,一種神經優化的POMDP算法,用於構建協作過濾推薦系統。
在本文中,我們還採用MDP的強化學習模型來形式化搜索結果多樣化中的多樣化排序過程。

3. MDP and MCTS

應用MDP和MCTS來建模多樣性排序過程

3.1 Markov decision process

MDP提供了一個數學框架,用於使用代理 - 環境接口對順序決策過程進行建模。 MDP的關鍵組成部分包括:在這裏插入圖片描述
MDP模型運行過程:
在每個時間步驟t,接收狀態stSs_t \in S,並基於此選擇一個actionatA(st)a_t \in A(s_t)。下一個時間,將已選狀態作爲action的一部分,產生一個新狀態st+1=T(st,at)s_{t+1}=T(s_t, a_t)。強化學習的目標是最大化V(s0)V(s_0).

3.2 Monte Carlo tree search

由MDP做出的決策(根據policy選擇最confident的actions)可能會獲得次優解。理論上挖掘決策序列的整個空間會得到全局最優解。然而,這是不現實的。MCTS是一個在整個空間進行啓發式搜索的工具,與貪心選擇相比更有可能會產生一個更好的決策序列。

給定t,policy function p,state value function V,MCTS的目標是搜索一個加強版本的policy用於做出更好的決策。MCTS由四部分組成:selection,expansion,simulaition和back-propagation:
在這裏插入圖片描述
MCTS在actions之上輸出一個search policy π\pi,用於在時間t選擇action,迭代持續直到整個序列生成。

4.使用policy-value networks進行多樣化排序

在這裏插入圖片描述
在本節中介紹所提出的M2Div模型,該模型利用MDP和MCTS對不同的排序過程進行建模,並分別加強在每個MDP迭代中選擇文檔的策略。每個MDP time step對應於一個排序位置,在每一個時間,policy-value network接收sts_t,經過LSTM產生狀態sts_t的表示。在這之後,根據當前的policy函數p和value fucntion V進行MCTS搜索。MCTS的輸出是一個加強版的新的search policy π\pi。接着根據加強的policy π\pi來選擇ata_t,其從候選文檔集中選擇一個文檔並將其放置在位置t+1t+1。到下一個時間步t+1t+1,產生一個新的狀態st+1s_{t+1},過程重複直到所有的文檔都排好序。

4.1 MDP formulation of diverse ranking

假設我們給出一個查詢q,它與一組檢索到的文檔在這裏插入圖片描述相關聯,其中查詢q和文檔xi都用它們的初步表示來表示,即向量通過doc2vec模型學習,X是所有可能文檔的集合。 多樣性排名的目標是構建一個可以對文檔進行排名的模型,以便排名最高的文檔涵蓋搜索查詢的儘可能多的各種子主題。
多樣化排名的構建可以被視爲具有MDP的順序決策的過程,其中每個時間步驟對應於一個排名位置。 MDP的states, actions, transition function, value function, and policy function設置爲:
在這裏插入圖片描述
在這裏插入圖片描述在這裏插入圖片描述
Value function被學習用來近似prefined評估度量。
這篇文章中使用LSTM來將輸入狀態s表示爲一個real vector,接着將value function定義爲LSTM輸出的加權總和的非線性轉換。
給定:
在這裏插入圖片描述
在t-th cell的輸出向量和cell state vector被連接作爲LSTM的輸出:
在這裏插入圖片描述
在這裏插入圖片描述

4.2 Strengthening policy with MCTS

使用等式4中的raw policy進行貪心搜索可能會導致局部最優排名,因爲policy僅僅總結了歷史信息而沒有考慮action ata_t將會如何影響未來的決策。
爲了緩解這個問題,按照AlphaGo 和AlphaGo Zero的做法,我們建議使用MCTS在排名領域進行先行搜索。具體而言,在每個排名位置t,執行MCTS搜索,以當前策略函數p和值函數V爲指導,並輸出強化的新搜索策略π\pi。相信搜索策略π\pi將爲排序位置選擇比由等式(4)中的原始策略p選擇的更好的動作(文檔)。這是因爲前瞻MCTS試圖探索整個排名空間並且可以部分地緩解次優排名問題。
圖2顯示了MCTS過程,算法1顯示了詳細信息。樹的每個節點對應於MDP狀態。樹搜索算法將根節點SRS_R,搜索次數K,值函數V,策略函數p,標籤JJ和評估度量R作爲輸入。請注意,J和R僅在訓練時使用。該算法迭代K次並輸出用於爲根節點SRS_R選擇文檔的強化搜索策略。假設MCTS tree的每個邊e(s,a)(從狀態s到狀態T(s,a)的邊),存儲了action value Q(s,a),訪問計數N(s,a)和先驗概率P(s,a) 。根狀態SRS_R的原始策略p(sR)p(s_R)通過以下步驟得到加強:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
當traversal到達了葉子節點sLs_L,如果是在測試階段沒有標籤可以利用,使用VSLV_{S_L}來評估節點。在訓練階段如果sLs_L不是終點也使用VSLV_{S_L}來評估,如果是終點,則使用真實的性能度量來評估。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

4.3 Training with reinforcement learning

在這裏插入圖片描述
當排序終止後,會組成一個文檔的分佈,使用評估標準來給出一個ground-truth return。其中R可以是任意的多樣性排序度量標準例如αNDCG@M\alpha-NDCG@M。在每個時間步驟E={(st,πt)}t=1TE=\{(s_t, \pi_t)\}_{t=1}^T生成的數據和最終的評估r被用於在訓練中的ground-truth signals來調整value function。調整模型參數以最小化預測值V(st)與根據所選評估度量評估排名之間的誤差,並最大化原始策略pstp_{st}與搜索策略πt\pi_t的相似性。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
圖3說明了給定訓練查詢的損失的構造。 通過反向傳播和隨機梯度下降來訓練模型參數。 在訓練過程中的所有參數上使用AdaGrad 。
請注意,在第t次迭代(算法2的第8行到第12行)構建的搜索樹在後續步驟中重複使用:與所選文檔相對應的子節點(所選action)變爲 新的根節點; 此子項下面的子樹及其所有統計信息都會保留,而樹的其餘部分將被丟棄。

4.4 Online ranking

在這裏插入圖片描述
在這裏插入圖片描述在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章