IRGAN: A Minimax Game for Unifying Generative and Discriminative Information Retrieval Models
在現代資訊檢索領域一直是兩大學派之爭的局面。一方面,經典思維流派是假設在文件和資訊需求(由查詢可知)之間存在著一個獨立的隨機生成過程。另一方面,現代思維流派則充分利用機器學習的優勢,將文件和搜尋詞聯合考慮為特徵,並從大量訓練資料中預測其相關性或排序順序標籤。
本篇 SIGIR2017 的滿分論文則首次提出將兩方面流派的資料模型透過一種對抗訓練的方式統一在一起,使得兩方面的模型能夠相互提高,最終使得檢索到的文件更加精準。文章的實驗分別在網路搜尋、推薦系統以及問答系統三個應用場景中實現並驗證了結果的有效性。
論文連結:https://arxiv.org/pdf/1705.10513.pdf
閱讀筆記精選
Gapeng
讀完整個文章,我覺得值得學習的地方有很多:
1. 把 GAN 應用到 IR 上,這個算是一個亮點。
2. 作者不是生硬地套用 GAN 的框架,而是因地制宜,根據 IR 任務的特點,巧妙設計了 G 和 D,將 IR 的生成模型和判別模型統一到 GAN 框架下。
3. IR 系統,從資料庫中檢索相似的資訊,應對的是離散的資料,而 GAN 一般在連續情況下容易 work。常用的 SGD 在這裡並不 work,作者採用 RL 的 policy gradient 作為替代。 IRGAN 將 generative retrieval model 和 discriminative retrieval model 分別作為 GAN 的 generator 和 discriminator(文章裡對生成模型和判別模型的提法跟我們通常所說的剛好相反)。所以,IRGAN 訓練的結果是兩個 IR 系統!一個是生成模型,一個是判別模型! 作者開源了程式碼,做了一些實驗實驗:web search,item recommendation,question answering,實驗結果表明,IRGAN 打敗了多種 strong baselines,帶來顯著的效能提升。作者認為,這種效能提升得益於 GAN 的對抗訓練機制。兩類 IR 模型統一到 GAN 框架下,雖然它們的效能不同,但是跟沒有采用對抗訓練的模型相比,它們之中至少有一個能夠得到顯著的效能提升。
Ttssxuan
1. 資訊獲取主要有兩種模式:a. 預測給出的文件相關性;b. 給出文件對,判別他們之間的相關性;
2. 判別模型:挖掘標註與非標註的資料中的資訊,用於指導訓練擬合文件內在相關性分佈生成模型;
3. 生成模型:生成判別模型難以判別的例子;
4. 經典相關性模型著重於,如何從查詢生成(相關)文件;獨立模型,每個token是獨立從相關文件檔中生成;統計語言模型一般是從文件中生成查詢元素;在詞嵌模型中,詞從其上下文中生成;在推薦系統中,也有類似的方法,從 item 的上下文中生成 item;
5. 模型擴充套件到 pointwise, pairwise, listwise, 其中 pointwise 基於人的判斷來衡量相關性,pairwise 主要是在所有文件對中找出最相關的文件對,listwise 著重於返回最合理的相關性排序;
6. 觀察到的正例和未觀察到的正例之間會存在內在聯絡,生成器需要基於判別器的資訊來快速推動這些未觀察到的正例;
7. 與 conditional GAN 有些相似;
8. 生成模型提供了一種新的負取樣方式;
9. 使用 IR 的獎勵機制,是在傳統模型中不可獲取的;
10. 應用於:網頁搜尋線上排序(sf: LambdaRank, LambdaMART, RankNet)、item 推薦系統(cf matrix factorisation)、問答系統(退化成 IR 的評估)
illegaldata
總結 - 作者有兩個思路很巧妙:
1. 不像傳統的 GAN,用噪聲訊號作為輸入做生成,然後判別,而是將 Query 做輸入,直接利用 Generative 和 Discriminative IR Models 做 GAN;
2. 將 RL 的 Policy Gradient 引入針對離散的輸入變數;以上兩個步驟使得 GAN 更具推廣意義。
Q&A 精選
hustliaohh
the generative retrieval focusingon predicting relevant documents given a query, and the discrim-inative retrieval focusing on predicting relevancy given a query-document pair.
生成模型用於預測與查詢相關的文件,判別模型用於預測給出的查詢對的相關性。(GAN 網路的基本原理,本文很好的將資訊檢索抽象成 GAN 網路的表達方式)
fryzhang: 常用的 GAN 來生成樣本,都是來比較是否足夠真實。IR 的任務也是給定樣本,判斷是否 relevant。本文的將 GAN 與 IR 結合的思路給人一種簡單卻又讓人恍然大悟的感覺。
lgpang
which depicts the (user’s)relevance preference distribution over the candidate documentswith respect to her submitted query
這句話很重要,說明獲得的資訊是否符合使用者提交的請求(正相關),具有很強的主觀性。對於同樣的搜尋語句,不同的使用者期盼得到的答案可能不一樣。所以相關性應該是根據每個使用者的搜尋歷史,點選歷史,棄選歷史量身定製的。難道這個條件機率函式要加上使用者的因素,改寫成 p(d | q, u, r) ?其中 u 代表特定的使用者。就像 google 搜尋,如果一個使用者登陸了 google chrome 瀏覽器,那麼搜尋結果就會根據個人的訪問歷史定製。
illegaldata: 這個思路有點意思,可以試試把 web search 和 item recommendation 結合起來,就是帶使用者明細的訓練和測試資料不太好找。
jianzhengming
log(1-D(d|qn)) 中的 D(d|qn) 與 ptrue 中的 D(d|qn) 應該是不同的概念吧?
Ttssxuan: 是同一個概念,可以把 minmax 拆分成 min 和 max,對於 min 則是 discriminator 儘量把 ptrue 分對,儘量把 pgen 分對的減少 (1 - d),對於 max 也是類似,只是針對 generator。
argmax: 同一個概念,也是同樣的函式,但計算的分佈不一樣。
wangbin11
sigmoid function of the discriminator score
D 的定義用 sigmod 函式定義有什麼好處?用於估算機率嗎?mark 一下,看完再 review 這個問題。
END: 這裡跟原始 GAN 中一樣吧,也是輸出機率吧,也可看做是二分類問題。