1 引言
傳統的推薦方法:
協同過濾:數據稀疏、冷啟動問題。淺層模型無法學習到用戶和項目的深層次特征。
基於內容的推薦方法:需要有效的特征提取。淺層模型依賴於人工設計特征,有效性和可擴展性有限。
混合推薦方法:輔助信息往往具有多模態、數據異構、大規模、數據稀疏和分布不均勻等復雜特征,融合多源異構數據的混合推薦方法研究依然面臨着嚴峻的挑戰。
深度學習:
(1)深度學習可通過學習一種深層次非線性網絡結構,表征用戶和項目相關的海量數據,具有強大的從樣本中學習數據集本質特征的能力,能夠獲取用戶和項目的深層次特征表示。
(2)深度學習通過從多源異構數據中進行自動特征學習,從而將不同數據映射到一個相同的隱空間,能夠獲得數據的統一表征。
2 傳統的推薦系統
以上三種的具體介紹
除了傳統的推薦方法,也催生了大量新的推薦方法:
例如,基於社交網絡的推薦方法、情境感知的推薦方法等;
推薦的對象也更加多樣,不僅僅針對單個用戶,還可以針對一群用戶,產生了組推薦;
隨着移動互聯網的發展,位置社交網絡的推薦系統也受到越來越多的關注.
因此可以發現,推薦系統在推薦內容、推薦方法、推薦對象等各個方面都朝着越來越多元的方向發展.
3 深度學習技術
3.1 自編碼器 AE
其通過對用戶或項目相關的信息(包括評分數據和文本、圖像等信息)進行重構學習到用戶或項目的隱表示,然后基於這種隱表示預測用戶對項目的偏好.應用場景主要包括評分預測、文本推薦、圖像推薦等。
3.2 受限玻爾茲曼機 RBM
下面可視層X(輸入層),上面隱含層Y(通過一個公式,把可視層的數據算成隱含數據)
y1=x1*w11+x2*w21+x3*w31+x4*w41+b1(偏置)
回求x x1'=y1*w11+y2*w12+y3*w13+a1(偏置)
再求y y1'=x1'*w11+x2'*w21+x3'*w31+x4'*w41+b1
反向傳播 再進行正向運算,看x與x'的差值是否為0,是則結束,否則再反向傳播,循環,直到x和x'近乎相等為止。
通過對用戶的評分數據進行重構學習到用戶的隱表示,從而實現對未知評分的預測.應用場景主要是用戶評分預測。
3.3 深度信念網絡 DBN
通過概率大小學習的神經網絡
輸出層 OUT1=f(IN1*w11+IN2*w21+IN3*w31+IN4*w41+b1)
隱含層3
隱含層2--可視層3
隱含層1--可視層2
可視層1(輸入數據)
然后做反向傳播,重新正向算,求E,再反向,直到E很小為止。
深度信念網絡當前在推薦系統中應用較少。由於DBN在建模一維數據上比較有效,因此被應用於提取音樂的特征表示,從而進行音樂推薦。當前的應用場景僅限於音樂推薦。
3.4 卷積神經網絡 CNN
卷積運算:得到D1-D6的6個數據
池化:先對D1-D6分組([D1,D2]、[D3,D4]、[D5,D6]),選出小組中最大的值(D2,D4,D6)
放入卷積神經網絡中的數據,即輸入數據(自變量X,因變量是標簽Y)
自變量:手寫圖中每個數字圖都是28*28,共784個點,每個點代表灰度,0是黑色,255是白色。x1,x2...x784就是輸入數據。
標簽:就是圖上的數字到底是幾(0-9)
把上面的數據帶入到CNN中,就開始正向傳播。
正向傳播:卷積--池化--BP網絡全連接(輸入數據->卷積1-->池化1->卷積2-->池化2->...->卷積n->池化n->BP網絡->輸出數據)
(1)如何卷積
1. 將表1的數據還原成28*28的矩陣
2. https://blog.csdn.net/u013631121/article/details/80286691
卷積神經網絡在推薦系統中應用較為廣泛,主要被用於從圖像、文本、音頻等內容中提取項目的隱藏特征,從而獲取項目的低維向量表示,並結合用戶隱表示為用戶產生推薦。當前的應用場景主要包括圖像推薦、音樂推薦、文本推薦等。
3.5 循環神經網絡 RNN
更好的處理序列的信息
循環神經網絡在推薦系統中的應用主要是用來建模數據之間的序列影響,從而幫助獲取更有效的用戶和項目隱表示。主要包括兩個方面:首先是被應用於建模推薦系統中用戶行為的序列模式,其次是在獲取用戶和項目隱表示的過程中,循環神經網絡被應用於建模用戶和項目相關的文本信息中詞語之間序列影響。當前的應用場景主要包括評分預測、圖像推薦、文本推薦、基於位置社交網絡中的興趣點推薦等。
4 基於深度學習的推薦系統
基本框架:
輸入層:
用戶的顯式反饋(評分、喜歡/不喜歡);隱式反饋數據(瀏覽、點擊等行為數據)
用戶畫像(性別、年齡、喜好等);項目內容(文本、圖像等描述或內容)數據
用戶生成內容(社會化關系、標注、評論等輔助數據)
輸出層:
通過利用學習到的用戶和項目隱表示,通過內積、Softmax、相似度計算等方法產生項目的推薦列表。
4.1 深度學習在基於內容的推薦系統中的應用
4.1.1 基於多層感知機的方法
4.1.2 基於卷積神經網絡的方法
4.1.3 基於循環神經網絡的方法
4.1.4 基於深度信念網絡的方法
4.2 深度學習在協同過濾中的應用
4.2.1 基於受限玻爾茲曼機的協同過濾方法
4.2.2 基於自編碼器的協同過濾方法
4.2.3 基於分布式表示技術的協同過濾方法
4.2.4 基於循環神經網絡的協同過濾方法
4.2.5 基於生成對抗網絡的協同過濾方法
4.2.6 基於其他深度學習模型的協同過濾方法
4.3 深度學習在混合推薦系統中的應用
4.3.1 基於自編碼器的混合推薦方法
4.3.2 基於其它深度學習模型的混合推薦方法
4.4 深度學習在社交網絡的推薦系統中的應用
4.4.1 基於深度學習的社交網絡社會化關系影響建模
4.4.2 基於深度學習的位置社交網絡序列模式建模
4.5 深度學習在情境感知的推薦系統中的應用、
4.6 應用比較
5 基於深度學習的推薦系統研究的趨勢展望