推薦系統和深度學習結合(IJCAI2018)
來自專欄模型筆記19 人贊了文章
作者He Xiangnan在此篇文章之前也有幾篇相關工作,本文提到的論文鏈接是https://www.comp.nus.edu.sg/~xiangnan/papers/ijcai18-ConvNCF.pdf。使用外積衡量embedding向量相關性的做法值得借鑒。
推薦系統中矩陣分解模型非常重要,它將用戶和物品抽象表示成隱向量,然後使用用戶和物品的隱向量(embedding vector)進行點乘來度量兩者的相關性。整個過程涉及兩個子問題,一個是用戶和商品的表示(representation),另一個是基於模型對兩者的相關性建模(model)。針對建模這塊,最近一些工作是將要麼將user embedding和item embedding直接concat,要麼就是將兩者進行點乘,然後再接全連接層。文章指出這樣對embedding處理較為粗糙,無法較好地建模兩者的相關性。這也就是文章的出發點。下圖就是文章工作的框架圖。
文章提出了在embedding層使用外積的做法。假如embedding大小為k,通過外交操作得到的k*k矩陣稱作interaction map。文章提到這種方式特別適合協同過濾任務,因為該矩陣不僅包含了矩陣分解中的interaction signal(對角線元素就是前面提到的直接點乘結果),還包含了其他潛在的pairwise interaction。這樣就為後續的非線性層提供了更多的語義信息。
那後續怎麼處理呢?文章這裡並沒有使用全連接MLP,而是引入了卷積網路CNN。因為得到的interaction map是一個二維的矩陣,進行卷積操作的想法也很順暢。使用CNN的話,可以使得模型的參數量明顯得到降低。
推薦閱讀:
※機器學習入門筆記6
※20行代碼入門「機器學習」,1小時帶你實現識花程序
※python3機器學習經典實例-學習筆記7-分類演算法
※機器學習評估方法