基於自編碼器的推薦系統論文引介
來自專欄 RUC智能情報站
前言:近年來,深度神經網路被廣泛應用於推薦系統。本文整理了6篇基於自編碼器的推薦相關工作,希望能對大家有所啟發。
說明:本文所述內容圍繞自編碼器進行,相關內容需要一定基礎知識,可結合參考資料前兩篇博文先做了解。
本文作者:何高樂,2014級本科生,目前研究方向為網路表示學習、深度學習,來自中國人民大學大數據管理與分析方法研究北京市重點實驗室。
備註:本文首發於知乎[RUC智能情報站],如需轉載請告知作者並註明本專欄文章地址
論文一:《AutoRec: Autoencoders Meet Collaborative Filtering》WWW 2015
1、寫作動機
2015年附近,深度神經網路在視覺(vision)和對話(speech)數據建模方面取得了顯著的突破,該文作者由此產生了把深度神經網路應用到協同過濾模型的想法。該文基於自編碼器提出了協同過濾模型AutoRec,並通過實驗證明了該模型較此前的基於神經網路的協同過濾模型具有更強的表示能力和更高的計算效率。
2、問題定義
給定用戶集合 、物品集合 、部分用戶-物品評分記錄構成的用戶-物品評價矩陣,對未知用戶-物品評價行為做評分預測,根據均方根誤差(RMSE)做評估。
3、具體模型
如上圖所示,該文提出的AutoRec模型採取了最簡單的自編碼器結構,通過一層神經網路編碼輸入特徵得到隱藏層表示,再通過一層神經網路表示對隱藏層表示做解碼還原輸入特徵。根據輸入特徵的不同,該模型可分為 和 :輸入特徵為用戶-物品評價矩陣的行,則為基於物品特徵學習的自編碼器 ;輸入特徵為用戶-物品評價矩陣的列,則為基於用戶特徵學習的自編碼器 。
論文二:《Deep Collaborative Filtering via Marginalized Denoising Auto-encoder》 (CIKM 2015)
1、寫作動機
協同過濾方法中,學習有效的隱藏因子十分重要。在用戶-物品評價數據稀疏和冷啟動場景下,傳統協同過濾模型難以學習高效的隱藏因子;一些方法試圖通過加入用戶(物品)附加信息來為隱藏因子提供環境信息,但又時常因為附加信息稀疏難以提煉有效信息。在此背景下,該文作者基於邊緣化降噪自編碼器(marginalized denoising auto-encoders)對矩陣分解做了泛化,提出了深度協同過濾模型DCF。
2、問題定義
給定用戶集合 、物品集合 、部分用戶-物品評分記錄構成的用戶-物品評價矩陣 以及用戶(物品)的附加信息 ( ),對未知用戶-物品評價行為做評分預測,根據均方根誤差(RMSE)做評估。
3、具體模型
如上圖,以用戶物品對 為例,DCF模型通過邊緣化降噪自編碼器對用戶(物品)的附加信息編碼得到隱藏因子 ( ),然後通過隱藏因子對矩陣相應元素做預測。此過程為對概率矩陣分解(PMF)的一種泛化,其用戶(物品)隱藏因子通過用戶(物品)的附加信息編碼得到(PMF通過高斯分布和高斯雜訊生成用戶(物品)隱藏因子)。
論文三:《Collaborative Denoising Auto-Encoders for Top-N Recommender Systems》 (WSDM 2016)
1、寫作動機
真實推薦系統中,top-N推薦任務具有較多應用場景。該文作者基於降噪自編碼器(Denoising Autoencoder)提出了系統過濾推薦模型CDAE,用於完成基於用戶偏好的top-N推薦任務。CDAE模型在特定情況下可對多種經典協同過濾模型做泛化,具有較強的可解釋性。
2、問題定義
給定用戶集合 、物品集合 、部分用戶物品隱式反饋構成的用戶-物品評價矩陣(用戶-物品評價不低於4則矩陣相應元素置1,否則均置0),對每個用戶做top-N推薦。
3、具體模型
如上圖所示,CDAE模型以用戶-物品評價矩陣的行作為輸入( 式模型),通過一層神經網路編碼得到用戶的隱藏表示,再通過一層神經網路還原用戶的交互行為(隱式反饋)。與最簡單的 模型不同,CDAE模型在編碼得到隱藏表示時加入了對用戶特徵的考量,語義更豐富。為了使模型更具魯棒性,CDAE模型對輸入特徵做了雜訊處理(通過dropout或者加入高斯雜訊實現)。
論文四:《AutoSVD++: An Efficient Hybrid Collaborative Filtering Model via Contractive Auto-encoders》SIGIR 2017
1、寫作動機
由於傳統的協同過濾推方法在數據稀疏情形下表現較差,結合內容信息和協同過濾的複合推薦模型受到了較多關注。大多數複合模型依賴於特徵工程,常包含較多雜訊且受限於特徵提取方法,難以有效建模內容信息和用戶-物品交互間的複雜聯繫。近年來,深度學習在推薦系統中取得了較好的成果,證明了深層神經網路具備提煉複雜交互特徵的能力。
該文基於contractive auto-encoder(CAE)泛化矩陣分解,提出了一種具有較高計算效率和可擴展性的複合推薦模型AutoSVD++。該模型能夠有效利用內容信息來豐富物品隱藏表示,並通過利用隱式反饋,為用戶提供高質量的物品推薦。
2、問題定義
給定用戶集合 、物品集合 、用戶隱式反饋矩陣 、物品對應附加信息(內容信息) 和部分用戶-物品評價記錄構成的用戶-物品評價矩陣 ,對未知用戶-物品評價行為做評分預測,根據均方根誤差(RMSE)做評估。
3、具體模型
針對用戶物品對 做評分預測,SVD模型僅考慮了用戶和物品隱藏因子的特徵交互以及用戶和物品的偏置項,其通過 做評分預測;在其基礎上SVD++模型加入了對用戶隱式反饋的考量,通過 做預測。
如上圖所示,AutoSVD(AutoSVD++)模型通過CAE抽取物品內容信息的隱藏表示,並將其加入物品隱藏特徵。AutoSVD模型與SVD模型類似,通過CAE抽取物品內容信息 的隱藏表示 ,與物品偏置向量 結合得到複合的物品隱藏特徵 ,通過 做評分預測,其中 為內容隱藏因子的正則化超參數;在AutoSVD基礎上加入對用戶隱式反饋的考量,AutoSVD++模型通過 做預測。
論文五:《Collaborative Variational Autoencoder for Recommender Systems》(KDD 2017)
1、寫作動機
協同過濾推薦系統僅通過評價信息為用戶推薦物品,但由於數據的稀疏性、冷啟動等問題,人們逐漸把更多的注意力放到了結合內容信息和評價信息的複合推薦系統。該文針對多媒體場景下的複合推薦任務,提出了貝葉斯生成模型CVAE。
2、問題定義
給定用戶集合 ,物品集合 ,物品對應內容信息 和部分用戶物品隱式反饋構成的用戶-物品評價矩陣 ,對未知用戶-物品的隱式反饋做預測。
3、具體模型
如上圖左側所示,該模型主要可以分為兩個部分:基於自編碼器的內容信息處理部分和基於概率模型的貝葉斯預測部分。以用戶-物品對 為例,變分自編碼器將物品的內容信息 編碼得到物品內容信息的概率隱藏表示 ;物品評分信息刻畫類似概率矩陣分解,首先通過正態分布對每個用戶、物品抽取隱藏表示 、 ,物品的概率隱藏表示 綜合考慮了評分信息和內容信息的概率隱藏表示 ,最終通過物品隱藏表示 與用戶隱藏表示 來對隱式反饋 做預測。
論文六:《Variational Autoencoders for Collaborative Filtering》(WWW 2018)
1、寫作動機
該文作者把變分自編碼器拓展應用於基於隱式反饋的協同過濾推薦任務,希望通過非線性概率模型克服線性因子模型的局限。該文提出了基於變分自編碼器(Variational Autoencoder)的生成模型VAE_CF,並針對變分自編碼器的正則參數和概率模型選取做了適當調整,使其在當前推薦任務中取得最佳結果。
2、問題定義
給定用戶集合 ,物品集合 ,用戶物品隱式反饋構成的用戶-物品評價矩陣 。將用戶集合分為訓練用戶和保留用戶兩部分,然後採用訓練用戶的所有隱式反饋訓練模型,測試則針對保留用戶進行,給出部分隱式反饋對剩餘部分做預測(通過重構向量打分高低來排序得到,類似top-N推薦)。
3、具體模型
如上圖所示,該模型根據標準高斯分布抽取K維隱藏因子 ,然後根據非線性函數 生成用戶 點擊所有物品的概率分布 ,最後根據多元分布 重構用戶點擊歷史(隱式反饋的用戶-物品評價矩陣對應行)。VAE_CF模型較標準的變分自編碼器做了如下調整:1、將正則參數調至0.2(低於常規值1),稱其為部分正則化(partially regularized)2、使用了多元分布而非高斯分布。
參考資料:
深度學習之自編碼器AutoEncoder - CSDN博客自編碼器與堆疊自編碼器簡述 - CSDN博客AutoRec: Autoencoders Meet Collaborative FilteringDeep Collaborative Filtering via Marginalized Denoising Auto-encoderCollaborative Denoising Auto-Encoders for Top-N Recommender SystemsAutoSVD++: An Efficient Hybrid Collaborative Filtering Model via Contractive Auto-encodersCollaborative Variational Autoencoder for Recommender SystemsVariational Autoencoders for Collaborative FilteringProbabilistic Matrix Factorization推薦閱讀:
※今天終於弄明白了滑鼠滾輪編碼器
※編碼器作為伺服電機一部分,到底發揮著怎樣的作用?
※自編碼器筆記(根據「花書」《深度學習》十四章整理)
TAG:深度學習DeepLearning | 推薦系統 | 編碼器 |