張永賓,趙金樓
(1. 哈爾濱工程大學經濟管理學院,黑龍江 哈爾濱 150001;2. 黑龍江科技大學管理學院,黑龍江 哈爾濱 150022)
隨著各類資訊、短視頻,以及購物平臺的大量涌現,信息的傳遞和商品的推廣變得越來越便利。平臺和用戶之間相互糾纏,為用戶提供便捷生活的同時,平臺和商家也能獲得更多利益。為了更好的達到用戶與平臺利益最大化,信息挖掘與推薦成為至關重要的環節[1]。根據用戶行為推測出其興趣方向,并為其提供個性化推薦。能夠促進平臺的精準服務,提高用戶的搜索效率。對于當前的各類網絡平臺而言,個性化推薦都是具有極大商業價值的技術板塊。
為了反映用戶的偏好,大部分推薦系統采用標簽的形式進行資源整合。可以通過用戶選擇或者系統自動歸納的方法來為用戶分配標簽,而系統分配標簽可以依據圖或者關鍵詞[2]。其中用戶選擇很容易影響體驗感,并且容易出現標簽稀疏與可信度較低等問題。系統分配標簽則面臨非結構化數據的處理問題。尤其是對主題和情感的挖掘處理,目前常見的分析方法有交叉熵[3]、TF-IDF[4]、PLSA[5]和LDA[6]等。LDA作為主題構建模型,能夠采取無監督的方法和概率的形式對主題進行聚類。LDA不僅可以實現語義分析,還可以完成隱含主題的提取,以及文檔間聯系。但是,采取LDA生成模型的時候,容易產生語義缺失和興趣影響,從而降低標簽的準確性。在此基礎上,文本標簽自身也受多重因素影響,不同因素對不同標簽的影響程度也存在差異,且這種影響權重難以確定。為此,一些推薦算法采取注意力模型來解決該問題。如文獻[7]基于模型和訓練得到標簽之后,引入注意力來計算文本的特征,該方法的動態效果較好。同樣,文獻[8]也在網絡學習的基礎上融合了注意力機制,通過加權方式來描述對不同特征的關注度。
結合LDA與注意力機制的優點和特性,本文將其采取融合處理。利用LDA進行文檔標簽的提取,引入HowNet的分層機制來計算相似度,從而避免采用距離方式求解相似度對精度的影響。構建注意力模型,并進行注意力注入。通過實體與語義兩部分的注入,有效挖掘隱藏興趣主題與實體的對應關系。
LDA為文檔構建模型,訓練數據集文本采取one-hot編碼后,作為LDA輸入,經過模型訓練后得到數據集對應的主題與詞分布情況。LDA模型的處理過程描述如圖1所示。其中,DT表示參與訓練的數據集;di表示數據i;a表示訓練數據的輸入參數;θt表示文檔t對應主題分布;nti表示單詞的主題編號;wti表示主題分布;N表示主題數量;φn表示主題n的分布;b表示主題分布參數。

圖1 LDA模型的處理過程
利用LDA模型,可以歸納出文檔中主題與詞的分布情況。但是,在這種框架下的主題單詞選取一般具有局限性,無法保證單詞選取的完整性,進而影響推薦效果。于是,這里引入HowNet來處理單詞語義,增強算法的語義理解能力。HowNet庫能夠實現對中文詞匯的處理,通過分層機制,將單詞分解成以義原為最小單位來描述,這正好與LDA的“主題—文檔—詞”相對應。與其它詞典相比,它能夠不通過距離計算得到語義間的相似性。對于任意義原xi,其信息量的求解方式為
(1)
其中,n(xi)為xi的子節點數目;N為所有義原數目。根據最大信息量,義原xi與xj間的相似程度表示如下

(2)
由于底層義原與上層概念之間為多對一關系,概念Ci與Cj分別為Ci={xi1,xi2,…,xim}、Cj={xj1,xj2,…,xjk}。于是,概念Ci與Cj相似程度的計算公式表示如下

(3)
其中,S(Ai,Aj)代表Ci與Cj集合相似性;Ni與Nj依次代表Ci與Cj的記錄個數。通過引入Ni與Nj相關項,可以對S(Ai,Aj)的計算過程進行偏差控制。
單詞由多個概念描述構成,依據概念相似性,可以進一步求解得到單詞的相似性。將單詞wi與wj分別表示為wi={Ci1,Ci2,…,Cip}、wj={Cj1,Cj2,…,Cjq},那么wi與wj相似程度公式如下

(4)
利用HowNet分層結構,可以將相似單詞采取分層做細粒度分析,從而改善單詞與主題的映射精度。基于LDA的整體訓練流程描述為:
步驟1:得到文檔t的主題分布
θt=Dirichlet(a),t∈[1,DT]
(5)
步驟2:得到主題詞分布
φn=Dirichlet(b),t∈[1,N]
(6)
步驟3:利用θt確定nti所屬主題編碼與詞分布

(7)
步驟4:計算相似度。通過分層機制,結合義原與概念,計算得到任意兩個單詞wi與wj之間的匹配程度。
注意力機制能夠更好的為關注事務服務,針對重點信息進行高效處理。此外,因為網絡學習無法較好的體現各特征詞的重要性,所以本文將注意力嵌入到網絡層中,通過權值的改變,優化推薦內容的精確程度。
對于訓練輸入的文本,采取BOW編碼,經過LDA處理得到每一個文本對應的主題分布情況。文本中的特征單詞分布可以表示為

(8)
其中,[w1,w2,…,wn]是對應主題單詞分布;[p1,p2,…,pn]是分布概率;n為主題單詞數量。把文本與主題一起遞交給HowNet,通過訓練得到詞向量。HowNet能夠最大程度獲取文本中的主題特征,并將詞向量[w1,w2,…,wn]提交至網絡學習。學習網絡會利用傳輸層提取出上下文內容,并利用隱層求解出全部隱態結果,最終得到隱態輸出為

(9)

由于存在詞間依賴,網絡訓練過程中需要考慮詞間關聯,于是引入Softmax層,在該層采取特性分類

(10)
其中,X∈R為輸入數據;din表示輸入數據的維度。在Softmax層中,會取最大概率進行輸出。
在推薦算法進行預測時,為了防止出現隱藏興趣主題無法找到實體情況的發生,在注意力層中將其分為實體與語義兩部分處理。其中,先啟動實體部分,完成重要語義實體注入。再啟動語義部分,根據傳輸路徑的關注度,注入合理的相近實體。
由用戶和實體間的關系,可以構建關于它們的圖G={(u,e)|u,e∈U∪E},其中,U與E分別表示用戶與實體集合。利用E中各元素的連接性,可以得到它們的關聯路徑

(11)
其中,l表示階數;r表示實體關系。由u、e和r構成的三元組(u,r,e),確定評價函數如下

(12)
其中,eu、ee分別是用戶和實體的映射,且eu+r和ee近似相等。評價函數Er(u,e)可以幫助更好的訓練嵌入關系,但是,想要判斷(u,r,e)是否合理,需要進行損失判斷,方式如下

(13)
其中,σ(·)為sigmoid函數。利用(u,r,e)中實體導致的差異來實現無效元組的更新,增強e元素的信息強度。針對傳輸路徑l而言,其上的實體注意力描述如下

(14)
M為注意力向量;ReLU為激活方程。考慮到在網絡學習過程中,任意傳輸路徑上實體和用戶的相互作用均具有非對稱特征,在計算得到實體和用戶關系后,緊接著采取歸一操作。經過Softmax處理后,可以得到實體注意力加權因子如下

(15)


(16)


(17)
式中的E為實體集合;V、W依次為語義注意力和加權變量;activa(·)為非線性處理;off為偏移量。通過對V的非線性操作,突出重點語義的實體,對應的注意力加權因子表示如下

(18)
根據加權因子的大小,確定傳輸路徑的重要程度,進而得到相似實體的關聯程度。基于前述分析,最終的注入方程表示如下

(19)
仿真選擇Amazon開放的TH和SO數據集。其中,TH的用戶數量為16638,項目數量為10217,用戶與商品的評論文本中詞量均值分別為903和1471。SO的用戶數量為35598,項目數量為18357,用戶與商品的評論文本中詞量均值分別為738和1431。
實驗過程中,設定LDA模型中主題數量N∈[0,100],Dirichlet的超參數a=N/50,b=0.04,詞向量維數為100,訓練次數為100。注意力模型中,參數V的維數是96,注入維數是54,傳輸路徑的多跳限定為3。
實驗在衡量網絡信息個性化推薦性能的時候,采取MSE、HR和NDCG三個指標。MSE代表推薦信息的均方差,利用估計量與實際量的差值累計得到,公式描述如下

(20)
其中,f′i表示估計量;fi表示實際量;n表示樣本個數。MSE結果越小,意味著推薦結果的誤差越小,反映推薦精度越高。
HR代表推薦的命中率,通過推薦結果內樣本與全部測試樣本的比值求解得到,公式描述如下

(21)
其中,Numberhit表示推薦結果內的樣本數量;Numbertest表示測試樣本的全部數量。HR結果越大,意味著推薦信息越滿足用戶意愿。
NDCG代表折損積累,該指標是通過推薦結果的折損值計算而來。公式描述如下

(22)

對比模型選擇文獻[7]和文獻[8],首先在TH和SO兩個數據集下,分別測試得到三個算法推薦結果的均方差,如圖2所示。
根據圖2結果,本文算法在TH和SO兩個數據集的MSE分別為0.934和0.982,都保持在1以內,相較對比算法,均方差得到明顯降低,而且對于不同數據集,MSE維持在相似水平,表明算法對于不同數據集具有良好的適用性和泛化能力。

圖2 MSE結果比較
為了比較各算法在不同推薦數量情況下的性能,將兩個數據集合并,同時調整推薦數量分別為5、10、15,得到各自對應的HR和NDCG,結果比較如圖3和圖4。
根據HR結果得出,在推薦數量增加時,各算法的命中率都在提高,這種趨勢是由于推薦數量的增加消除了模糊推薦的不準確性。所以在推薦數量為5的時候,各算法的命中率差異較大,本文算法較文獻[7]和文獻[8]依次高出1.6%和4.5%;在推薦數量為15的時候,各算法的命中率差異則相對變小,本文算法較文獻[7]和文獻[8]依次高出1.3%和1.1%。從整體來看,本文算法的HR值均好于其它算法,表明在推薦的準確度上較其它方法更具優勢。

圖3 HR結果比較
根據NDCG結果,在推薦數量增加時,各算法的折損增益均在增加,和HR具有相同規律。在推薦數量為5的時候,本文算法較文獻[7]和文獻[8]依次高出5.0%和4.2%;在推薦數量為10的時候,本文算法較文獻[7]和文獻[8]依次高出4.5%和3.8%;在推薦數量為15的時候,本文算法較文獻[7]和文獻[8]依次高出3.3%和3.4%。
通過三項指標結果,證明了本文算法在網絡信息高維特征處理方面的優越性,以及良好的泛化性能,推薦的個性化信息能夠高度符合用戶需求。

圖4 NDCG結果比較
考慮到標簽稀疏與可信度低,以及網絡非結構化數據處理等問題,采取LDA模型進行標簽挖掘。同時引入HowNet,以義原為單位比較相似度。考慮到特征詞的重要程度差異,采用注意力模型,并將注意力注入到網絡層中,根據實體與語義來注入合理的相近實體。通過仿真實驗,得到本文算法在TH和SO兩個數據集的MSE分別為0.934和0.982,具有良好的均方偏差;此外,不管在何種推薦數量的情況下,HR和NDCG指標均優于對比方法,說明具有良好的推薦精度和泛化性能,個性化推薦結果更加合理準確。