孫金楊,劉柏嵩,任豪,錢江波
(寧波大學信息科學與工程學院,浙江 寧波 315211)
學術論文是科研人員重要的研究工具,近年來,隨著科學研究的進步,學術論文數量呈指數式增長,每年在各個領域都有超過百萬篇的學術論文被發表,嚴重的“信息過載”導致科研人員需要花費更多的時間、精力尋找論文。推薦系統能有效解決論文“信息過載”的問題,將論文的獲取方式由主動轉化為被動,極大程度滿足科研人員的學術需求[1]。
協同過濾(collaborative +iltering,CF)在推薦系統中使用最為廣泛,通過用戶和項目的歷史交互信息來探索用戶的興趣偏好。然而,由于用戶和論文的交互矩陣高度稀疏,極大限制了 CF在論文推薦領域中的推薦性能,為此,一種常見的做法是引入論文的輔助信息來增強推薦性能。
如今,已有不少研究利用各類輔助信息,在論文推薦中,輔助信息以引文網絡和文本信息為主。前者通過論文之間的引用關系構建引文網絡[2],論文的引用關系表明一篇論文對另一篇論文的影響,但忽略了論文自身的內容信息,同時還存在新論文不會被引用而被邊緣化的冷啟動問題[3];后者是指利用論文的標題和摘要信息來更好地表征論文,標題和摘要包含大量的語義信息,挖掘語義信息融入推薦模型中能夠有效緩解數據稀疏問題。
隨著深度學習[4-6]在各領域中取得的研究成果增多,利用深度學習對文本進行語義挖掘[7-8]也愈發流行。參考文獻[9]使用卷積神經網絡從項目的邊信息中提取項目的語義特征,并在用戶項目的潛在向量中引入對抗性干擾,然后將其集成到概率矩陣分解中,以計算用戶對項目的推薦分數。參考文獻[10]提出了一種基于長短期記憶(long an2 short-term memory,LSTM)的上下文感知引文推薦模型,基于LSTM分別學習引文上下文和論文的分布式表示,并計算論文的相關性來生成推薦列表。參考文獻[11]使用堆疊降噪自編碼網絡提取項目的評論信息,并整合到協同過濾的評分矩陣中,進一步提升協同過濾的推薦性能。現有大部分對于文本的處理方法是單一的,對于論文而言,這些方法對標題和摘要是無差別處理的,本文認為論文的標題是論文內容的核心概括,而摘要是標題的解釋和內容上的擴展,通過對兩者不同細粒度的語義提取和結合,能更好地提取論文的語義特征。
在論文推薦中,用戶和論文的交互方式往往屬于隱式反饋,即只能獲取到用戶閱讀過哪些論文,而無法得知用戶對于論文的感興趣程度(例如電影的評分),因此,即使用戶閱讀過某篇論文,無法確定該用戶是否喜歡這篇論文,也就很難確定正負樣本。對于隱式反饋的推薦場景,常見的方法是將用戶交互過的項目作為正樣本[12],而負樣本則從未交互過的項目中隨機采樣得到,這種方法會導致無法對用戶的興趣偏好精確建模,進而影響推薦效果。生成對抗網絡(generative a2-versarial network,GAN)[13]的提出為隱式反饋的推薦場景提供了新的方向,其基本思想是生成模型和判別模型進行極大極小的博弈,兩者迭代交替訓練,相互促進。在推薦領域中,生成模型的目標是擬合用戶的興趣偏好,不需要經過負采樣。參考文獻[14]提出的IRGAN是首個將GAN應用到推薦系統的模型,通過GAN的思想將生成模型和判別模型對抗訓練,并采用強化學習中的策略梯度優化模型,訓練好的生成模型能夠產生推薦結果。參考文獻[15]針對由于策略梯度訓練不穩定和準確率不高的兩大問題,提出了一種基于生成對抗網絡的協同過濾通用框架(CFGAN),使用向量級的訓練使模型可進行梯度下降,有效緩解了GAN訓練過程中的不穩定性。參考文獻[16]則將對抗性擾動加入推薦模型中,提出對抗個性化排名模型(APR),對抗性擾動的作用是幫助模型提前考慮由噪聲引起的偏差,能有效提高模型的泛化能力。
為了解決上述在論文推薦領域的問題,本文提出了一種融合細粒度語義特征的學術論文對抗推薦模型——TAGAN。對于論文的標題、摘要,使用卷積神經網絡(CNN)提取標題的全局語義特征,并使用雙層的LSTM網絡分別建模摘要的單詞序列和語句序列,同時,在建模單詞序列中引入注意力機制,將標題和摘要進行關聯,通過語句序列建模構建細粒度的論文語義特征。然后,將論文的語義特征融入基于生成對抗網絡的推薦模型中,利用生成模型逼近用戶的真實興趣分布,并進行相應的推薦。在公開的論文數據集上的實驗表明,本文提出的模型能有效建模用戶興趣偏好,提升論文推薦性能。
區別于傳統方法將標題和摘要作為文本信息統一處理,本文認為標題是論文整體內容的表示,而摘要則是標題內容的擴展和具體化,兩者之間存在很多語義上的關聯。語義特征提取的原理如圖1所示,將語句中單詞的順序位置作為學習語句表示的重要特征,并使用LSTM來建模摘要語句中的單詞序列。同時,由于摘要語句和標題的語義信息密不可分,在建模過程中引入注意力機制來建立標題與摘要的關聯,基本假設是,摘要中的詞在語義上與標題中的詞在語義上接近時,具有更高的重要性。相比而言,標題往往是一個概括性的描述或名詞,和語句中的單詞序列有一定差別,本文使用CNN來建模標題的全局語義信息。最后,使用LSTM處理由語句向量組成的語句序列,同時,使用標題向量來初始化網絡參數。

圖1 論文細粒度語義特征提取方法
本文使用詞向量模型 Bor22vec預訓練語料庫中所有標題和摘要的詞向量。令論文的標題表示 為T={wT,1,wT,2, … ,wT,n}, 摘 要 表 示 為A={a1,a2,… ,az},其中,wT,n表示標題中單詞的詞向量,n為標題的單詞數量,az表示摘要中的各個語句,z為摘要中語句的數量,對摘要中的語句做進一步的表示,使得aj={wj,1,wj,2, …,wj,m},wj,m表示摘要中第j個語句中的詞向量,m為第j個句中的單詞數量。
卷積神經網絡在文本語義提取上表現優異,本文使用參考文獻[17]提出的針對文本信息的CNN結構對標題進行語義提取,具體而言,將標題中的詞向量拼接轉化成詞向量矩陣,并通過卷積層、池化層和全連接層得到標題的語義向量,如式(1)所示。

其中,W表示CNN中的參數,T是由標題中詞向量拼接而成的詞向量矩陣。
針對摘要部分,首先對摘要中的每個語句進行語義的提取,文本將語句看作一個單詞序列,采用 LSTM 網絡進行建模,LSTM包含一連串的重復模塊,每個模塊的單元狀態都存儲著重要的順序信息,這些信息將在每個時間步更新。此外,還可以容納可變長度的序列,適用于摘要的單詞序列。將轉化成詞向量的單詞序列aj={wj,1,wj,2, … ,wj,m}輸入網絡中,如式(2)所示。

其中,htw-1、htw分別表示LSTM網絡在tw-1時刻和tw時刻的輸出,θ1表示LSTM網絡的參數。
為了有效地考慮標題和摘要單詞之間的相關性,本文設計了一種注意力機制來學習每個語句單詞的相對重要性,從而更精確地表征句向量。具體而言,對于語句中的每個單詞,通過其詞向量與標題向量之間的內積來計算兩者的相關性分數,如式(3)所示。

其中, si m(wj,x,t)表示第j個語句中第x個單詞與標題向量的相關性分數,該分數越高,這個單詞和標題的語義關聯程度越深。
然后,通過so+tmax函數進行歸一化處理,得到每個單詞的權重,如式(4)所示。

其中,m為第j個句中的單詞數量,xα為相應單詞在語句中的權重。
利用LSTM中各個單詞的輸出狀態,可通過式(5)獲得第j個摘要語句的句向量。

在獲取到標題向量t和摘要的句向量A={a1,a2,… ,az}之后,本文將標題視為最能概括論文的文本內容,而摘要語句則提供了豐富的語義信息,可以依次解釋標題的詳細內容,為此,本文引入第二個LSTM網絡來建模標題和摘要的語義信息,同時,利用標題向量來初始化網絡權重,這有助于網絡的訓練并取得一個良好的效果,隨后,將摘要的句向量依次輸入該網絡中,如式(6)所示。

其中,otu-1和otu分別表示tu-1和tu時刻網絡的輸出,atu表示tu時刻輸入網絡中的句向量,θ2表示網絡的參數。該網絡最后時刻的輸出向量作為論文的內容向量,如式(7)所示。

其中,qc表示論文的內容向量。
最后,將其輸入生成對抗網絡的推薦框架中進行模型的訓練。
生成對抗網絡的推薦框架包括生成模型G和判別模型D,對于給定用戶u,G嘗試生成一組u可能感興趣的推薦列表,而D則試圖判斷生成物品和用戶實際感興趣物品的差異。本文在IRGAN[14]模型基礎上,融合論文的文本信息,框架如圖2所示。IRGAN模型只利用了用戶和項目的交互記錄,本文通過融入文本信息,在一定程度上緩解數據稀疏性問題,進而提升推薦性能。

圖2 TAGAN推薦框架
生成模型G采用的是矩陣分解模型(MF),對于用戶的隱式反饋信息,在嵌入層通過嵌入矩陣可將用戶和論文轉化為相應的特征向量,如式(8)所示。

其中,P∈Rb×k,Q∈Rd×k分別表示用戶和論文的嵌入矩陣,b、d分別表示用戶數量和論文數量,k為特征向量的維度,vu、vi分別表示用戶和論文根據ID轉化的獨熱向量,pu、分別表示用戶和論文的交互特征。

其中,β為平衡因子,用來調節文本信息的參與度。
用戶對論文的推薦分數可通過內積來計算,如式(10)所示。

其中,bi表示論文的偏置項。
生成模型G計算用戶對候選論文的推薦分數并使用so+tmax函數轉化為推薦分布,如式(11)所示,從該分布中進行采樣得到推薦列表。

其中,τ表示調節因子,其值越小,推薦列表會更加集中于分數較高的論文。
判別模型D是一個二分類器,IRGAN在推薦任務中使用基于點對(pointwise)的矩陣分解算法,本文發現在隱式反饋中,優化已交互論文和生成論文的相對關系能加速模型的收斂,更有利于生成模型G的訓練。因此,本文的判別模型D采用貝葉斯個性化排序算法(BPR)。
判別模型D判斷用戶u對從歷史記錄中采樣的論文i和生成模型生成的論文j所組成三元組<u,i,j>的偏序關系正確與否,如式(12)所示。

其中,D(i,j|u)表示判別模型D對三元組<u,i,j>偏序關系正確判斷的可能程度,σ為sigmoi2函數。判別模型D通過更新參數使能盡可能正確判斷出三元組的偏序關系,即最大化兩個樣本之間的差距,而生成模型G通過更新參數使得判別模型D無法準確判斷出三元組的偏序關系,即最小化兩個樣本之間的差距,由此可得到兩者的代價函數,如式(13)所示。

其中,生成模型G通過最小化代價函數更新參數θ,判別模型D通過最大化代價函數更新參數φ,兩者交替更新,直至模型收斂。
由于生成模型G生成的推薦列表傳遞給判別模型D是一個離散采樣過程,所以無法通過梯度下降對生成模型進行更新,這里采用強化學習中的策略梯度來更新生成模型的參數,如式(14)所示,整體框架的算法流程如算法1所示。

算法1TAGAN算法流程
輸入用戶-項目隱式交互矩陣,論文語義特征
輸出生成器Gθ
隨機化初始生成模型參數θ和判別模型參數φ;
Repeat
forDsteps do
生成模型G生成推薦列表
在判別模型中構建三元組
基于式(13)更新判別模型參數
end for
forGsteps do
生成模型G生成推薦列表
固定判別模型參數生成反饋
基于式(14)更新生成模型參數
end for
until TAGAN收斂
本文的實驗采用兩個公開的論文數據集citeulike-a和 citeulike-t。這兩個數據集都包含論文的標題和摘要信息以及用戶和論文的交互數據。對于這兩個數據集,分別將其隨機分為兩個子集,其中80%的交互數據作為訓練集,其余20%的交互數據為測試集。本文刪除了缺少標題摘要或其內容有損的論文和其相應的交互記錄,同時,過濾掉交互記錄小于10次的用戶,經處理后的兩個數據集,稀疏度分別高達99.79%和99.88%。
本文使用命中率(HR)和歸一化累計折扣累積增益(NDCG)兩個評價指標對推薦模型進行性能評估,評價指標定義如下。
(1)在TopK推薦中,HR是一種常用的衡量召回率的指標,強調用戶感興趣的論文是否出現在推薦列表中,定義如式(15)所示。

其中,N表示數據集中所有論文的數量,分子表示在K個推薦論文中用戶感興趣的論文數量。
(2)歸一化累計折扣累積增益是一種用來衡量推薦列表排序質量的評價指標,用戶感興趣的論文在推薦列表的排名越靠前,則該指標值越大,該指標的定義如式(16)所示。

其中,Zk是標準化因子,ir的值為0或1,表示論文i的預測相關性,lg(1+i)表示位置i的衰減函數。
· ItemPop[18]:一種基于項目的流行度進行推薦的方法,屬于非個性化推薦。
· MF-BPR[19]:基于貝葉斯個性化排序的矩陣分解推薦算法,通過交互矩陣分析用戶和項目的潛在向量,并以成對的排序方式進行模型的訓練。
· ConvMF[17]:卷積矩陣分解,使用卷積神經網絡提取項目的輔助特征,并集成到概率矩陣分解模型中進行推薦計算。
· IRGAN[14]:信息生成檢索對抗網絡,將生成對抗網絡的思想應用到推薦領域,通過生成模型和判別模型的相互博弈不斷改進推薦模型。
3.4.1 實驗對比
在TopK推薦時,分別設定K的值為5、10、15,在兩個數據集上的結果分別如圖3和圖4所示。圖3中,TAGAN在兩個指標上表現都優于基線模型,分別比IRGAN和ConvMF在HR上提升了0.081和0.077,NDCG提升了0.073和0.071,這得益于對論文信息的細粒度語義特征提取和生成對抗網絡擬合真實樣本分布的能力。相比而言,無個性化推薦的 ItemPop算法僅依靠論文的流行度進行推薦,效果遠差于其余個性化推薦模型,這也說明了個性化推薦的重要性。MF-BPR和IRGAN均只使用到用戶論文的交互數據,它們的推薦性能弱于或接近于使用輔助信息的ConvMF,這也表明了引入輔助信息能有效緩解數據稀疏問題。同時,IRGAN的各方面指標都高于MF-BPR,也證明了 GAN推薦算法擬合用戶興趣偏好的能力。而TAGAN集成了細粒度的語義特征和GAN推薦算法,其推薦能力相比基線模型都有不同幅度的提升。

圖3 citeulike-a中不同模型推薦性能比較

圖4 citeulike-t中不同模型推薦性能比較
3.4.2 模型簡化測試
TAGAN主要由論文語義提取和GAN推薦算法兩部分組成,為了進一步驗證GAN推薦算法擬合用戶偏好的能力,本節在原框架中使用MF-BPR替換 GAN推薦算法部分,簡稱TABPR-MF,并做相應的對比實驗,實驗對比結果如圖5所示。可以發現,在引入相同輔助信息的情況下,TAGAN的效果更佳,在兩個數據集上HR指標分別提高了0.057和0.064,這也證實了GAN在推薦領域中的可行性。同時,TABPR-MF的效果要優于 MF-BPR,也間接說明了引入輔助信息的有效性。

圖5 TAGAN和TABPR-MF實驗對比結果
3.4.3 參數β的效果
語義權重參數β作用是調節語義特征在建模過程的重要性,通過實驗發現,不同的參數值會影響推薦效果,本節將參數β從0調整到1并以0.2為步長進行調整,結果如圖6所示,兩個數據集的性能趨勢非常相似,在增加β的值時,它們都有更好的性能表現,當β的值為 0.6時,模型的表現最佳。但是,進一步調整增加β的值將大大降低推薦性能。這說明,語義特征的嵌入和交互特征需要合理組合,才能更好地提升論文的表達性。

圖6 參數β對推薦性能的影響
本文提出了一種融合細粒度語義特征的學術論文對抗推薦模型(TAGAN),利用 CNN和雙層的LSTM 網絡分別提取論文的標題和摘要的語義信息。同時,引入注意力機制關聯標題和摘要,加強論文的特征表示,并融入GAN推薦算法,借助生成模型能高度擬合樣本分布的能力對用戶的興趣偏好建模,進一步提升推薦的效果。未來的研究方向會聚焦于 GAN推薦算法,當前的生成模型使用的還是矩陣分解模型,相比于神經協同過濾[20]等模型,其建模用戶項目交互能力略顯不足。因此,下一步的研究將嘗試使用交互能力更強的推薦模型并將其嵌入GAN推薦算法中,以此來提升推薦的性能。