排序學習即 Learning To Rank(L2R),主要用於信息檢索領域,綜合考慮多個排序特徵,來對搜素結果進行排序。
基本介紹
- 中文名:排序學習
- 外文名:Learning to Rank
- 分類:社交網路推薦模型
定義,排序學習算法,
定義
最近幾年排序學習是非常熱門的研究領域,而傳統的排序也有大量的成熟的方法,
主要分為相關度排序和重要性排序這兩類排序模型。對於相關度排序模型,比如布爾模型、隱語義分析模型等,它們主要是根據查詢與文檔之間的相似度來對文檔進行排序;而對於重要性排序模型,主要思想是基於文檔之間的圖模型來判斷文檔的重要性,比如比較權威的谷歌的創始人拉里·佩奇和謝爾蓋·布林於 1998 年在史丹福大學提出的 PageRankp[24]算法,以及康奈爾大學的 Jon Kleinberg博士提出的 HITS等。
對於傳統的排序模型,其不足之處在於單個模型只使用一個單一的特徵,而搜尋排序結果是由許多排序因素影響的,這就涉及如何對各個參數進行調節的問題,人工調參不僅浪費時間而且得到的效果也不一定好,而機器學習的方法可以解決這個問題,就是使用排序學習訓練新的模型,並自動學得這個新模型的參數。前面有提到,排序學習屬於監督的機器學習方法,這種機器學習方法可以很輕鬆的融合多個特徵,其模型參數是由疊代得出,且針對特徵值稀疏、過擬合問題都有很好的解決策略,有深厚的理論基礎。
排序學習是是一種基於監督學習的排序方法,由於其良好的效果,已經被很多領域所認可和採納,例如在實際網路搜尋中,谷歌、Bing、百度等搜尋引擎對召回結果的排序。同樣的,在研究領域,排序學習也受到了廣泛的關注,例如 ICML,NIPS等信息檢索、機器學習的國際會上有超過 100篇的相關文章,而在信息檢索頂級會議 SIGIR上,每年都至少有兩個 session 是有關排序學習的。排序學習的任務是對一組文檔進行排序,其希望能夠通過使用人工標註的數據來進行算法設計,挖掘出隱藏在數據中的規律,從而完成對任意查詢需求給出反映相關性的文檔排序。
排序學習算法
排序學習分為三大類,即 PointWise、PairWise和 ListWise。下面我們將分別介紹這三種方法。
1. 單文檔方法(PointWise Approach),顧名思義,就是將單獨的一篇文檔轉換為特徵向量,通過使用機器學習算法,學習訓練集合中的分類方法,然後利用學習好的分類規則對一篇文檔進行打分。
2. 文檔對方法(PaireWise Approach)。在上文介紹的單文檔方法中,其主要是從單文檔屬性的角度來對文檔的相關性進行判斷,並沒有考慮文檔之間的關係。而對於搜尋系統來說,用戶希望查詢返回的網頁中最相關的網頁能夠排名靠前,因此,搜尋系統最主要的問題就是確定文檔之間的順序關係。所以,在文檔對方法中,主要考慮的是文檔之間的順序關係是否合理。
3. 文檔列表方法(ListWise Approach)。ointWise 方法和 PairWise 方法使得訓練集從單個文檔擴展到了文檔對之間,那ListWise方法更進一步,使訓練集擴充到了整個文檔的範圍之內。ListWise方法中,通過用查詢返回的整個文檔集合作為訓練集實例,來進行評分函式 F的訓練。