鄭建國,蘇成卉
(東華大學(xué) 旭日工商管理學(xué)院,上海 200050)
隨著影片數(shù)量的逐年增加,電影信息過載現(xiàn)象日益加劇。推薦系統(tǒng)實(shí)時(shí)反饋給用戶其偏好的選擇,可以高效地解決這一問題。傳統(tǒng)推薦算法只考慮顯性評(píng)分對(duì)用戶偏好的影響,存在嚴(yán)重的數(shù)據(jù)稀疏性問題[1],日益增長的用戶及項(xiàng)目數(shù)量使得傳統(tǒng)推薦方法推薦精度不佳。而視頻簡介文本可以在一定程度上反映用戶、視頻信息和真實(shí)評(píng)分三者的潛在關(guān)系,伴隨著NLP文本處理領(lǐng)域的發(fā)展,如何在推薦系統(tǒng)中高效利用文本數(shù)據(jù)成為研究熱點(diǎn)。此外,神經(jīng)網(wǎng)絡(luò)等深度學(xué)習(xí)模型主要解決分類問題,不適合直接實(shí)現(xiàn)推薦任務(wù),存在可解釋性不強(qiáng)的問題[2],將機(jī)器學(xué)習(xí)算法與傳統(tǒng)經(jīng)典的推薦算法相融合實(shí)現(xiàn)推薦研究成為推薦領(lǐng)域需要進(jìn)一步研究的方向。
本文為了充分挖掘用戶、視頻信息和真實(shí)評(píng)分三者的關(guān)系,首先,針對(duì)視頻劇情簡介文本數(shù)據(jù),利用卷積神經(jīng)網(wǎng)絡(luò)(CNN)和雙向長短期循環(huán)神經(jīng)網(wǎng)絡(luò)(BiLSTM)構(gòu)建混合的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)(CBiLSTM)來提取視頻文本潛在特征,生成視頻潛在特征概率分布來表示視頻潛在特征;其次,將混合的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)CBiLSTM與受偏置約束的概率矩陣分解算法融合生成混合推薦模型(CBiLSTM-PMF+),實(shí)現(xiàn)評(píng)分預(yù)測(cè),為電影視頻網(wǎng)站的推薦策略提供思路。
視頻推薦的研究主要是基于用戶的歷史行為數(shù)據(jù)(評(píng)分為主),預(yù)測(cè)用戶對(duì)未觀看視頻的打分,進(jìn)而反映用戶對(duì)未觀看視頻的偏好程度,將預(yù)測(cè)評(píng)分高的影片作為推薦結(jié)果[3]。視頻推薦的相關(guān)研究主要分為兩類:①利用多源異構(gòu)數(shù)據(jù)提取更豐富的特征。②改進(jìn)算法模型或使用混合推薦模型增強(qiáng)預(yù)測(cè)能力[4]。
為了緩解傳統(tǒng)推薦模型因數(shù)據(jù)稀疏性導(dǎo)致的推薦精度不足問題,利用各類輔助信息學(xué)習(xí)潛在特征,如用戶屬性、社交網(wǎng)絡(luò)、用戶信任信息、視頻描述文件、視頻圖像、用戶對(duì)項(xiàng)目的評(píng)論。陳婷等[5]通過社交網(wǎng)絡(luò)中的用戶間信任關(guān)系填補(bǔ)稀疏矩陣,將信任度代替相似度,對(duì)協(xié)同過濾提出改進(jìn)。Yashar Deldjoo等[6]提出了一種基于內(nèi)容的推薦系統(tǒng),將視頻文件類型等顯性特征融合到傳統(tǒng)的基于內(nèi)容的推薦技術(shù)中,并從視頻內(nèi)容中提取和使用低級(jí)視覺特征,給用戶提供個(gè)性化推薦。肖成龍等[7]融合用戶社交網(wǎng)絡(luò)信息以及關(guān)鍵用戶信息和視頻評(píng)分信息并配比不同權(quán)重實(shí)現(xiàn)視頻評(píng)分預(yù)測(cè)。石佩生等[8]將用戶基本屬性、評(píng)分時(shí)間戳與用戶評(píng)分、偏好、評(píng)價(jià)項(xiàng)目的相似因子相結(jié)合解決推薦冷啟動(dòng)問題。江周峰等[9]利用社會(huì)化標(biāo)簽來填補(bǔ)特征項(xiàng),改進(jìn)了一種融合標(biāo)簽的基于內(nèi)容的推薦算法。
近幾年,學(xué)者將深度學(xué)習(xí)算法與傳統(tǒng)推薦算法實(shí)現(xiàn)了融合,Wu等[10]使用去噪自動(dòng)編碼器來構(gòu)建僅考慮評(píng)級(jí)數(shù)據(jù)的協(xié)同過濾方法。Bansal等[11]使用一種變形RNN門控循環(huán)單元(GRU),對(duì)隱式反饋數(shù)據(jù)集有效地編碼用于多任務(wù)學(xué)習(xí)。Wei J等[12]基于深度神經(jīng)網(wǎng)絡(luò)(SADE)提取視頻的內(nèi)容特征,用于冷啟動(dòng)視頻項(xiàng)目的評(píng)級(jí)的預(yù)測(cè)。Andy W.Chen等[13]使用機(jī)器學(xué)習(xí)模型KNN算法,通過每對(duì)視頻和標(biāo)簽的相關(guān)性分?jǐn)?shù)找到將在數(shù)據(jù)中分離視頻的最佳聚類數(shù)。He等[14]使用視頻海報(bào)圖像數(shù)據(jù)從預(yù)訓(xùn)練的CNN獲得圖像特征。
在文本處理方面,有學(xué)者將深度學(xué)習(xí)算法與傳統(tǒng)推薦算法融合。Wang等[15]提出堆棧去噪自編碼器(SDAE)和概率矩陣分解(PMF)融合的協(xié)同深度學(xué)習(xí)算法(CDL)。但SADE和LDA兩者都使用詞袋模型,忽略了上下文單詞環(huán)境對(duì)視頻文本信息的影響。Yoon Kim[16]在word2vec和詞嵌入技術(shù)的基礎(chǔ)上,提出TextCNN模型,利用單層CNN算法實(shí)現(xiàn)句子分類,并設(shè)置多通道和卷積窗口,充分反映文本特征,此模型簡單、高效并且獲得很高的準(zhǔn)確率,成為文本分類處理領(lǐng)域的經(jīng)典。Donghyun等[17]提出了一種上下文感知的混合推薦算法ConvMF,將深度學(xué)習(xí)中的CNN與概率矩陣分解模型PMF融合,彌補(bǔ)了SADE和LDA的缺陷,進(jìn)一步提高了混合模型的推薦精度, 是推薦系統(tǒng)領(lǐng)域利用隱式文本數(shù)據(jù)結(jié)合顯性評(píng)分?jǐn)?shù)據(jù)實(shí)現(xiàn)評(píng)分預(yù)測(cè)的經(jīng)典算法。Ye H等[18]將考慮時(shí)序特征的長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)與概率矩陣分解模型PMF融合,但忽略了上下文語義獲取。
本文將在前人研究基礎(chǔ)上進(jìn)行改進(jìn),集成多神經(jīng)網(wǎng)絡(luò)算法與受偏置約束概率矩陣分解算法,解決現(xiàn)有算法存在的缺陷問題,并進(jìn)一步提高推薦精確度。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)[19]的基本結(jié)構(gòu)由輸入層、卷積層、池化層、全連接層和輸出層構(gòu)成。卷積層是對(duì)嵌入向量和濾波矩陣做內(nèi)積。池化層對(duì)卷積層得到的每一個(gè)特征圖進(jìn)行池化。學(xué)者的大量研究已經(jīng)證實(shí)最大值池化的方式相較于平均值池化可以提取更好的特征,效果更優(yōu),目前研究都采用最大值池化方法。全連接層將池化層的輸出特征作為輸入,經(jīng)激活函數(shù)激活,得到固定維數(shù)的特征向量。CNN在分類問題方面效果突出,但在推薦算法方面的成果卻不多,主要因?yàn)橥扑]是回歸問題,兩者的目標(biāo)不同。在針對(duì)文本數(shù)據(jù)的推薦算法中,學(xué)者將CNN融合經(jīng)典推薦算法構(gòu)建混合推薦模型實(shí)現(xiàn)更精準(zhǔn)的推薦效果。
在傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡(luò)中,各層間的神經(jīng)元相互連接,可以保留短距離的時(shí)序特征,但隱層間的梯度不穩(wěn)定,存在梯度消失或梯度爆炸的問題。而長短期時(shí)序循環(huán)神經(jīng)網(wǎng)絡(luò)(LSTM)結(jié)構(gòu)使得梯度能夠很好的在各隱藏層中傳遞,可以很好地學(xué)習(xí)文本等具有時(shí)序特點(diǎn)的數(shù)據(jù)。LSTM結(jié)構(gòu)的神經(jīng)元僅學(xué)習(xí)層間前邊神經(jīng)元的信息,而單詞的前后詞語都會(huì)影響語義關(guān)系。雙向長短期循環(huán)神經(jīng)網(wǎng)絡(luò)(BiLSTM)融合兩組學(xué)習(xí)方向相反(一個(gè)按句子順序,一個(gè)按句子逆序)的長短期時(shí)序循環(huán)神經(jīng)網(wǎng)絡(luò)(LSTM),相較LSTM可以更好理解上下文語義。
LSTM神經(jīng)網(wǎng)絡(luò)由遺忘門ft、 輸入門it、 記憶單元ct和輸出門ot這4個(gè)主要元素組成。遺忘門決定記憶單元前一個(gè)狀態(tài)信息的留存,輸入門控制記憶單元中當(dāng)前時(shí)刻信息的輸入,記憶單元根據(jù)當(dāng)前輸入信息更新記憶狀態(tài),再由輸出門判斷記憶單元對(duì)下一個(gè)狀態(tài)的輸出結(jié)果。計(jì)算過程為
ft=σ(Wf[ht-1,xt]+bf)
(1)
it=σ(Wi[ht-1,xt]+bi)
(2)
(3)
(4)
ot=σ(Wo[ht-1,xt]+bo)
(5)
ht=ot*tanh(ct)
(6)
其中,W是矩陣乘法操作,ht表示記憶單元的狀態(tài),xt表示信息輸入,b是函數(shù)的偏置項(xiàng),σ是sigmoid函數(shù),*表示點(diǎn)乘操作。
(7)
其中,⊕是連接運(yùn)算符。這種雙層結(jié)構(gòu)使得BiLSTM模型可以充分學(xué)習(xí)輸入序列數(shù)據(jù)中詞語的上下文信息。
矩陣分解算法(PMF)可以從稀疏的評(píng)分矩陣中挖掘潛在特征,在主流的協(xié)同過濾中廣泛使用,尤其在稀疏性很強(qiáng)的數(shù)據(jù)上取得了良好的效果。PMF算法將原有的高維的用戶U-項(xiàng)目V評(píng)分矩陣拆分成低維矩陣并進(jìn)行擬合。因此,模型可以利用各類影響推薦結(jié)果的數(shù)據(jù)并轉(zhuǎn)化為低維矩陣并與評(píng)分矩陣進(jìn)行擬合,提高模型預(yù)測(cè)的準(zhǔn)確率。
概率矩陣分解模型(PMF)假設(shè)觀測(cè)噪聲(用戶-項(xiàng)目評(píng)分矩陣R與用戶和項(xiàng)目潛在特征矩陣U、V做內(nèi)積得到的近似評(píng)分矩陣間的誤差值)服從高斯分布,N個(gè)用戶和M個(gè)項(xiàng)目的評(píng)分?jǐn)?shù)據(jù)的條件概率表示為
(8)
同時(shí),模型假設(shè)用戶潛在特征矩陣U和項(xiàng)目潛在特征矩陣V服從零均值的球面高斯分布,其中ui和vj為某個(gè)特定用戶i和影片j的K維特征向量,用戶潛在特征模型U和視頻潛在特征模型V的條件概率分布表示為
(9)
(10)
貝葉斯公式可以將用戶潛在特征矩陣U和項(xiàng)目潛在特征矩陣V的后驗(yàn)概率表示為
(11)
對(duì)后驗(yàn)概率取對(duì)數(shù),去掉常數(shù)項(xiàng)簡化后的目標(biāo)函數(shù)表示為
(12)
假設(shè)在視頻推薦系統(tǒng)中,有N個(gè)觀影用戶,M個(gè)被觀看的影片以及相應(yīng)的用戶對(duì)觀看視頻的評(píng)分,目的是預(yù)測(cè)用戶對(duì)未觀看影片的評(píng)分,進(jìn)而實(shí)現(xiàn)影片推薦。一般情況下,大量的用戶和影片會(huì)產(chǎn)生非常稀疏的評(píng)分?jǐn)?shù)據(jù),導(dǎo)致僅憑評(píng)分?jǐn)?shù)據(jù)預(yù)測(cè)用戶觀影偏好精確度不佳。本文通過獲取視頻影片簡介文檔,得到樣本數(shù)據(jù)N(ui,vj,rij,Dj)。 其中,rij表示用戶i對(duì)視頻j的評(píng)分,用戶評(píng)分為1~5整數(shù)值,代表用戶對(duì)視頻的偏好程度,rij∈RN*M。Dj是視頻j的視頻簡介短文本文檔。
因此,本文要解決的問題是,針對(duì)文本型的數(shù)據(jù),如何挖掘隱含文本特征;如何利用用戶-視頻評(píng)分矩陣R以及視頻簡介短文本文檔Dj來提取用戶特征和視頻特征,將用戶特征和視頻特征表示利用混合推薦模型實(shí)現(xiàn)用戶對(duì)未觀看視頻的評(píng)分預(yù)測(cè)。
為了清晰的表述本文提出的模型,將結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(CNN)和長短期記憶網(wǎng)絡(luò)(LSTM)的多神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)簡稱為CBiLSTM,將多神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與偏置約束概率矩陣分解算法融合的混合推薦算法簡稱為CBiLSTM-PMF+,并匯總了模型中的常用符號(hào)與含義,見表1。
表1 本文常用符號(hào)及含義
在推薦系統(tǒng)領(lǐng)域,對(duì)文本數(shù)據(jù)特征的提取已有的方法只考慮文本數(shù)據(jù)中的局部特征,無法獲取短文本數(shù)據(jù)在上下文語義中存在的時(shí)序特征。在文本情感分析領(lǐng)域,已有學(xué)者證實(shí)結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(CNN)和長短期記憶網(wǎng)絡(luò)(LSTM)模型既能夠有效提取短文本局部最優(yōu)特征,又能夠解決遠(yuǎn)距離的上下文依賴,并且局部特征和時(shí)序特征融合可以取得更好的文本分類效果[20]。因此,在TextCNN文本分類模型基礎(chǔ)上,本文構(gòu)建了視頻文本特征潛在模型,即卷積神經(jīng)網(wǎng)絡(luò)和雙向長短期循環(huán)神經(jīng)網(wǎng)絡(luò)混合的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)(CBiLSTM)從視頻劇情簡介短文本文檔集中學(xué)習(xí)生成文本潛在特征表示,如圖1所示。視頻簡介文本嵌入層一方面訓(xùn)練CNN模型學(xué)習(xí)到文本主要特征,一方面訓(xùn)練BiLSTM模型學(xué)習(xí)到上下文語義特征,融合文本主要特征和上下文語義特征,以更好地學(xué)習(xí)視頻簡介語義,既解決單卷積神經(jīng)網(wǎng)絡(luò)模型忽略詞在上下文語義中時(shí)序特征的問題,也可以有效避免傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(luò)梯度消失或梯度彌散問題[20]。
圖1 基于CBiLSTM神經(jīng)網(wǎng)絡(luò)的文本特征提取框架
基于CBiLSTM神經(jīng)網(wǎng)絡(luò)的視頻文本特征潛在模型設(shè)計(jì)包括嵌入層、卷積層、池化層、全連接層、BiLSTM層、拼接層和輸出層。接下來對(duì)每層進(jìn)行詳細(xì)分析。
(1)嵌入層
(13)
(2)CNN卷積層
(14)
其中,f(?) 是一個(gè)非線性激活函數(shù),本文采用可以加速收斂并避免局部最值的Relu函數(shù), ?表示內(nèi)積操作,Di∶(i+wsp-1)∈Rwsp×Kw,i∈[1,l-wsp+1],bp是卷積核偏置項(xiàng)。
(15)
其中,p∈[1,Nw],Nw是卷積核個(gè)數(shù),l-wsp+1代表多組不同的卷積窗口下得到的特征維度。
(3)CNN池化層和全連接層
為了從卷積層內(nèi)積操作后得到的特征圖中提取主要特征,池化層對(duì)卷積層的輸出進(jìn)行降維,減小特征圖的計(jì)算復(fù)雜度。在卷積層每個(gè)滑動(dòng)窗口下得到的映射屬性特征都是不定長度的,利用最大池化的方法將每個(gè)卷積核得到的特征保留最大值特征,使得特征長度一致,易于后續(xù)控制模型過擬合問題。卷積層和池化層將文本數(shù)據(jù)映射到隱層特征空間上,然后全連接層將模型學(xué)到的“分布式特征表示”映射到樣本標(biāo)記空間中。全連接層將池化層輸出的同種大小的滑動(dòng)窗口下得到的卷積映射屬性值進(jìn)行連接,得到文檔特征向量表示為
(16)
(4)CNN拼接層
全連接層將同種大小的滑動(dòng)窗口下的映射屬性值連接后,在CNN拼接層,將q組不同大小的滑動(dòng)窗口下得到的文檔特征向量實(shí)現(xiàn)拼接,實(shí)現(xiàn)TextCNN框架特征的輸出,每個(gè)影片簡介通過CNN結(jié)構(gòu)學(xué)習(xí)到的文檔特征向量表示為
(17)
(5)BiLSTM層
(6)CBiLSTM模型拼接層
(18)
(7)CBiLSTM模型輸出層
因?yàn)橥扑]任務(wù)不是分類問題,模型最后輸出不再通過softmax層分類。為防止過擬合,輸出層將CBiLSTM模型拼接層學(xué)習(xí)的視頻文檔潛在特征融合向量cblj添加Dropout層并映射到D維空間,每次迭代放棄部分訓(xùn)練好的參數(shù),使權(quán)值的更新不再依賴部分固有特征,最終得到所需要的D維CBiLSTM模型表示的文檔特征列向量θj, 表示為
θj=tanh(Wθ·(tanh(Wdropout(cblj·rdropout)+bdropout))+bθ)
(19)
其中,Wθ,Wdropout是非線性映射矩陣,rdropout是Dropout丟棄控制向量[21],服從伯努利分布,bdropout,bθ是偏置向量。
首先,CBiLSTM-PMF+模型考慮了用戶評(píng)分行為相似性反映用戶特征相似性這一影響因素,受限概率矩陣分解算法可以約束用戶的特征,使得評(píng)分行為相近的用戶生成相似的用戶潛在特征向量,解決推薦系統(tǒng)中對(duì)評(píng)分影片較少的用戶的未觀看視頻的評(píng)分預(yù)測(cè)接近影片評(píng)分均值的問題;其次,CBiLSTM-PMF+模型將視頻文本特征潛在模型集成到概率矩陣分解算法中,通過視頻文本潛在特征模型生成的視頻文本潛在特征矩陣來表示視頻潛在特征;最后,CBiLSTM-PMF+還考慮到有的用戶傾向于對(duì)滿意的物品評(píng)分,導(dǎo)致個(gè)人評(píng)分均值偏高,或者優(yōu)質(zhì)視頻本身受評(píng)分均值偏高[22],將受約束偏置與全局平均融入推薦算法模型中。
PMF+模型首先使用受限概率矩陣分解算法(CPMF)構(gòu)建用戶潛在特征模型和評(píng)分模型??紤]到評(píng)分視頻集合相似的用戶具有相似的興趣,用戶潛在特征向量ui表示為
(20)
其中,Wu是用戶潛在特征的約束矩陣 (Wu∈RD×M), 表示用戶對(duì)某一特定視頻進(jìn)行評(píng)分的結(jié)果與用戶特征向量的先驗(yàn)均值相關(guān);Yi是用戶潛在特征的補(bǔ)償矩陣,當(dāng)用戶在新用戶狀態(tài)下(即用戶沒有發(fā)生視頻打分行為),沒有先驗(yàn)均值的影響,Ui=Yi。
本文PMF+模型在此基礎(chǔ)上,加入用戶偏置Pi, 視頻偏置Qj, 并對(duì)用戶偏置加入全局平均約束Zj(Zj∈RD×M), 來避免用戶評(píng)分行為傾向?qū)υu(píng)分預(yù)測(cè)產(chǎn)生的影響。因此,假設(shè)視頻打分的噪聲(用戶-視頻評(píng)分矩陣R與融入約束和偏置的用戶和視頻潛在特征矩陣做內(nèi)積得到的近似評(píng)分矩陣間的誤差值)服從期望為0,方差為σ2的高斯分布,用戶-視頻評(píng)分生成概率模型的條件概率先驗(yàn)分布由式(8)改進(jìn)表示為
(21)
其中,參數(shù)Y,Z,P,Q,Wu依據(jù)式(9)和式(10)分別服從期望為0的高斯先驗(yàn)分布且相互獨(dú)立分布,條件概率分布分別表示為
(22)
(23)
(24)
(25)
(26)
在3.2章節(jié)中,視頻文本潛在特征模型通過CBiLSTM結(jié)構(gòu)將視頻簡介短文本文檔集Dj輸出為文檔特征列向量θj, 并表示成視頻文本潛在特征矩陣θ。 在PMF+模型中,假設(shè)視頻潛在特征矩陣服從高斯分布,引入一個(gè)均值0方差為σV2高斯噪聲向量ε, 使視頻潛在特征矩陣Vj的每個(gè)列向量都通過3個(gè)變量生成:①CBiLSTM模型中的內(nèi)部權(quán)重變量W; ②視頻簡介短文本文檔集Dj; ③高斯噪聲向量ε, 實(shí)現(xiàn)CBiLSTM結(jié)構(gòu)與PMF+模型的集成。視頻潛在特征向量vj表示為
vj=θ+ε
(27)
因此,視頻潛在特征模型的條件概率先驗(yàn)分布表示為
(28)
假設(shè)視頻文本潛在特征模型參數(shù)集W中每個(gè)參數(shù)wl服從期望為0,方差為σW2的零均值球面高斯分布,參數(shù)集W條件概率分布表示為
(29)
本文提出的CBiLSTM-PMF+模型主要參數(shù)有:用戶潛在特征模型U包含的Y,Z,P,Q,Wu; 視頻潛在特征模型V和CBiLSTM模型參數(shù)集W。 基于式(11),通過貝葉斯推理推得用戶潛在特征矩陣U和視頻潛在特征矩陣V的后驗(yàn)概率表示為
(30)
CBiLSTM-PMF+模型的參數(shù)優(yōu)化學(xué)習(xí)過程借鑒了現(xiàn)有模型的最大似然估計(jì)(MAP),基于式(12),去掉給定常量并簡化后的損失函數(shù)表示為
(31)
為了最小化損失函數(shù),本文采用梯度下降(SGD)方法增量學(xué)習(xí)參數(shù)Yj,Pi,Wuj,Qj,Zj,Vj。 對(duì)每一個(gè)樣本數(shù)據(jù) (useri,moviej,rij,Dj) 的損失函數(shù)由式(31)簡化為
(32)
得到參數(shù)更新
(33)
(34)
(35)
(36)
(37)
(38)
θ←CBiLSTMW(D′j)
(39)
與用戶潛在特征模型U和視頻潛在特征模型V的更新不同,CNN-BiLSTM神經(jīng)網(wǎng)絡(luò)模型參數(shù)集W采用反向傳播算法訓(xùn)練優(yōu)化,優(yōu)化過程執(zhí)行到損失函數(shù)收斂,損失函數(shù)表示為
(40)
當(dāng)模型參數(shù)優(yōu)化更新完成,預(yù)測(cè)用戶對(duì)未觀看視頻的評(píng)分表示為
(41)
本文使用python語言實(shí)現(xiàn)提出的CBiLSTM-PMF+模型,神經(jīng)網(wǎng)絡(luò)模型由深度學(xué)習(xí)框架keras搭建,科學(xué)計(jì)算由科學(xué)運(yùn)算庫numpy、math實(shí)現(xiàn)。
為了驗(yàn)證提出算法的有效性和推薦效果,評(píng)分?jǐn)?shù)據(jù)來源于AIV(amazon instant video)數(shù)據(jù)集、ML-100k(MovieLens-100k)和ML-1M(MovieLens-1M)3個(gè)穩(wěn)定的基準(zhǔn)真實(shí)數(shù)據(jù)集。這些數(shù)據(jù)集均包含用戶對(duì)項(xiàng)目的評(píng)分信息,評(píng)分值是[1,5]范圍內(nèi)的整數(shù)。除此之外,AIV數(shù)據(jù)集還提供視頻描述文檔信息,而MovieLens 數(shù)據(jù)集沒有電影視頻的描述文檔信息,運(yùn)用爬蟲工具在IMDB互聯(lián)網(wǎng)視頻數(shù)據(jù)庫中爬取數(shù)據(jù)集視頻的視頻簡介。3個(gè)數(shù)據(jù)集的詳細(xì)信息見表2。
表2 實(shí)驗(yàn)數(shù)據(jù)集的統(tǒng)計(jì)信息
模型對(duì)獲取的評(píng)分?jǐn)?shù)據(jù)和影片文本數(shù)據(jù)先進(jìn)行預(yù)處理:①去除沒有視頻簡介的視頻;②去除評(píng)分?jǐn)?shù)量小于3的用戶;③計(jì)算視頻簡介出現(xiàn)的單詞的tf-idf,取tf-idf值大于0.5且前8000個(gè)值最高的詞作為詞匯表,其它詞去除;④如果詞匯表的單詞未出現(xiàn)在語料庫中,則隨機(jī)初始化,生成正態(tài)分布隨機(jī)數(shù)。
CBiLSTM嵌入層的詞向量使用glove.6B.200d語料庫獲取。CBiLSTM-PMF+中涉及的λY,λWu,λV超參數(shù)在PMF和CPMF算法的文獻(xiàn)中均有實(shí)驗(yàn)取值作為參考,調(diào)整范圍不大。主要針對(duì)CBiLSTM-PMF+算法中λP,λQ,λZ參數(shù)進(jìn)行調(diào)整,這3個(gè)參數(shù)與λY,λWu,λV屬同類型參數(shù),使用EM算法在每一次迭代過程中自動(dòng)調(diào)整參數(shù)。參數(shù)集W使用基于RMSprop方法的mini-batch批處理訓(xùn)練。
本文選取均方根誤差(root mean squared error,RMAE)來評(píng)價(jià)算法的評(píng)分準(zhǔn)確率。RMAE值越小,說明預(yù)測(cè)模型的精確度越高,是推薦算法中最常用的評(píng)價(jià)指標(biāo),其表達(dá)式為
(42)
實(shí)驗(yàn)設(shè)置CBiLSTM-PMF+混合推薦模型中用戶和項(xiàng)目潛在特征矩陣的分解維度D為50,視頻簡介文檔最大長度設(shè)置為300,詞向量維度Kw為200,參數(shù)集W的mini-batch設(shè)置為128,3組不同滑動(dòng)窗口寬度wsp分別設(shè)置為3、4、5,每組滑動(dòng)窗口下卷積核數(shù)量設(shè)置為100,SGD方法參數(shù)學(xué)習(xí)率設(shè)置為0.0001。根據(jù)實(shí)驗(yàn)結(jié)果得到參數(shù)λY,λV,λP,λQ,λZ,λWu在不同數(shù)據(jù)集上推薦效果最佳時(shí)的設(shè)置見表3,其中為降低模型復(fù)雜度,CBiLSTM-PMF+模型設(shè)置同類型超參數(shù)λV=λY,λWu=λZ,λP=λQ。
表3 不同實(shí)驗(yàn)數(shù)據(jù)集上的超參數(shù)設(shè)置
(1)不同數(shù)據(jù)集上各種算法的推薦質(zhì)量對(duì)比
實(shí)驗(yàn)環(huán)節(jié)選擇以下幾種算法,在ML-100k、ML-1M、AIV這3個(gè)數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn):
PMF:概率矩陣分解算法,僅通過用戶對(duì)項(xiàng)目的顯性評(píng)分?jǐn)?shù)據(jù)實(shí)現(xiàn)預(yù)測(cè)。
ConvMF[17]:一種基于上下文感知的混合推薦經(jīng)典算法,將卷積神經(jīng)網(wǎng)絡(luò)算法(CNN)與概率矩陣分解模型PMF融合,實(shí)現(xiàn)混合推薦。
LS-PMF[18]:單一長短期循環(huán)神經(jīng)網(wǎng)絡(luò)算法LSTM與概率矩陣分解模型PMF融合的文本特征混合推薦算法。
BLS-PMF:單一雙向長短期循環(huán)神經(jīng)網(wǎng)絡(luò)算法BiLSTM與概率矩陣分解模型PMF融合的文本特征混合推薦算法。
CBiLSTM-PMF:本文提出的多神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)文本特征融合,并集成PMF算法的文本特征混合推薦算法。
CBiLSTM-PMF+:本文提出的多神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)文本特征融合,并集成考慮了約束偏置PMF的混合推薦算法。
為驗(yàn)證利用CNN和BiLSTM進(jìn)行文本特征融合方法的性能,在對(duì)文本數(shù)據(jù)處理過程中,分別選擇ConvMF、LS-PMF、BLS-PMF以及本文提出的CBiLSTM-PMF混合推薦模型實(shí)現(xiàn)評(píng)分預(yù)測(cè)。選取設(shè)置epoch為5,進(jìn)行對(duì)比實(shí)驗(yàn),每次評(píng)價(jià)指標(biāo)RMAE值取5次迭代的均值,不同算法在不同數(shù)據(jù)集上的精確度結(jié)果見表4。
從表4中可以看出,在各個(gè)數(shù)據(jù)集上,本文提出的CBiLSTM-PMF算法對(duì)比其它3個(gè)算法都有不同程度上的精確度的提高,多神經(jīng)網(wǎng)絡(luò)(CBiLSTM)進(jìn)行文本特征融
表4 不同算法在不同數(shù)據(jù)集上的精確度評(píng)價(jià)指標(biāo)結(jié)果(a)
合實(shí)現(xiàn)推薦的效果優(yōu)于單神經(jīng)網(wǎng)絡(luò)特征混合推薦模型。說明CBiLSTM結(jié)構(gòu)可以在獲取上下文語義時(shí)序特征的同時(shí)不受梯度問題影響,從而使得精確度更高,也表明了同時(shí)考慮局部特征和上下文時(shí)序特征這兩方面信息進(jìn)行評(píng)分預(yù)測(cè)的合理性。
本文還將提出的考慮了約束偏置的混合推薦模型(CBiLSTM-PMF+)與經(jīng)典算法進(jìn)行對(duì)比。實(shí)驗(yàn)設(shè)置算法中涉及的超參數(shù)見表3,各模型的效果評(píng)估見表5。
表5 不同算法在不同數(shù)據(jù)集上的精確度評(píng)價(jià)指標(biāo)結(jié)果(b)
由表5可以看出,僅通過用戶對(duì)項(xiàng)目的顯性評(píng)分?jǐn)?shù)據(jù)實(shí)現(xiàn)預(yù)測(cè)的PMF算法在精確度上低于結(jié)合文本數(shù)據(jù)提取隱式文本特征得到的預(yù)測(cè)精確度,說明模型融入影片的簡介描述可以更精確判斷用戶觀影喜好。多神經(jīng)網(wǎng)絡(luò)和約束偏置下概率矩陣分解混合推薦算法(CBiLSTM-PMF+)效果明顯優(yōu)于傳統(tǒng)的概率矩陣分解算法(PMF),并實(shí)驗(yàn)證實(shí)優(yōu)于經(jīng)典模型ConvMF,效果略優(yōu)于CBiLSTM-PMF,表明了考慮用戶評(píng)分行為相似性和偏向性可以減少非用戶喜好因素(如評(píng)分習(xí)慣等)對(duì)推薦產(chǎn)生的負(fù)影響,提升預(yù)測(cè)結(jié)果的精確度。
(2)用戶和視頻潛在特征向量維度D
影響CBiLSTM-PMF+混合推薦方法性能的主要參數(shù)除了表3涉及的超參數(shù)以外,還有用戶和視頻潛在特征向量維度D和詞向量化后的維數(shù)Kw。
設(shè)置D為10、20、50、100,以ML-1M為例,觀察其變化對(duì)RMSE值的影響如圖2所示。
圖2 不同潛在特征向量維度D下的RMSE值
(3)詞向量化后的維數(shù)Kw
設(shè)置Kw為100、200、300,以ML-1M為例,觀察其變化對(duì)RMSE值的影響如圖3所示。
圖3 不同詞向量化維數(shù)Kw下的RMSE值
通過實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),維度D與維數(shù)Kw在某個(gè)數(shù)值最低并隨后趨于平穩(wěn),維度的增加不會(huì)使得評(píng)價(jià)指標(biāo)數(shù)值明顯下降,推薦效果趨于穩(wěn)定。為減少模型迭代次數(shù),采用的最佳設(shè)置為用戶和視頻潛在特征向量維度D=50,詞向量化后的維數(shù)Kw=200。
本文首先提出了一種利用卷積神經(jīng)網(wǎng)絡(luò)和雙向長短期循環(huán)神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)特征融合的文本潛在特征表示模型(CBiLSTM);其次考慮了用戶評(píng)分行為相似性反映了用戶特征相似性這一影響因素,還考慮到有的用戶傾向于對(duì)滿意的物品評(píng)分,導(dǎo)致個(gè)人評(píng)分均值偏高,或者優(yōu)質(zhì)視頻本身受評(píng)分均值偏高,采用受約束偏置概率矩陣分解算法集成;最后構(gòu)建了一種針對(duì)視頻簡介信息和視頻評(píng)分信息的混合推薦算法(CBiLSTM-PMF+),完成視頻評(píng)分預(yù)測(cè)的任務(wù)。
目前,本文的工作未考慮到評(píng)分的時(shí)效對(duì)預(yù)測(cè)評(píng)分的影響,用戶對(duì)電影觀看的興趣隨著時(shí)間推移可能會(huì)發(fā)生變化,而引入時(shí)間窗口這種考慮時(shí)間因素的方法是將歷史數(shù)據(jù)刪掉以展現(xiàn)觀影喜好變化,帶來評(píng)分稀疏性嚴(yán)重的問題。因此,下一步考慮時(shí)間信息對(duì)用戶偏好的影響值得進(jìn)行深入研究。此外,評(píng)分?jǐn)?shù)據(jù)極度稀疏,隱式數(shù)據(jù)(如瀏覽、收藏、點(diǎn)擊等行為)更容易獲取。因此,通過更高維度的用戶行為表示來分析用戶偏好也值得進(jìn)一步探究。