張玉朋 李香菊 李 超 趙中英
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,信息過(guò)載嚴(yán)重,用戶無(wú)法快速選擇感興趣的新聞.新聞推薦旨在通過(guò)對(duì)用戶和新聞建模,幫助用戶從海量新聞數(shù)據(jù)中篩選并推送其感興趣的新聞,有效緩解新聞信息的過(guò)載問(wèn)題.目前,新聞推薦已在改善用戶閱讀體驗(yàn)方面取得顯著的效果,引起學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注[1-2].
現(xiàn)有的新聞推薦算法大體可分為基于協(xié)同過(guò)濾的推薦算法、基于內(nèi)容的推薦算法、混合推薦算法[3].基于協(xié)同過(guò)濾的推薦算法假設(shè)行為相似的用戶會(huì)對(duì)同個(gè)新聞具有相似的偏好.Xue等[4]提出DMF(Deep Matrix Factorization Models),為一個(gè)深度矩陣分解模型,使用非線性層處理用戶與新聞的顯示評(píng)級(jí)和隱式反饋.Wang等[5]提出圖神經(jīng)協(xié)同過(guò)濾框架,將用戶-項(xiàng)目交互構(gòu)成一個(gè)二部圖,再在圖上傳播嵌入以學(xué)習(xí)用戶-項(xiàng)目圖結(jié)構(gòu).但協(xié)同過(guò)濾的推薦算法面臨冷啟動(dòng)問(wèn)題.為了解決這一問(wèn)題,研究者們提出基于內(nèi)容的推薦算法和混合推薦算法.基于內(nèi)容的推薦算法通過(guò)對(duì)新聞的內(nèi)容或用戶的屬性建模,獲取用戶的興趣表示,并向用戶推薦相似的新聞.混合推薦算法結(jié)合不同的推薦算法,獲得更好的推薦結(jié)果.Bansal等[6]將主題模型、協(xié)同過(guò)濾和貝葉斯個(gè)性化排序整合到一個(gè)框架中.Cheng等[7]融合線性模型和前饋神經(jīng)網(wǎng)絡(luò),用于特征交互建模.Wu等[8]提出NRMS(Neural News Recommendation with Multi-head Self-Attention)、Fan等[9]提出GraphRec(Graph Neural Network Framework)、Qiu等[10]提出GREP(Graph Neural News Recommendation Model with User Existing and Potential Interest Modeling),分別使用多頭自注意力機(jī)制與其它算法結(jié)合,用于新聞推薦.Wu等[11]提出NAML(Neural News Recommen-dation Approach with Attentive Multi-view Learning),在建模新聞標(biāo)題和內(nèi)容時(shí)采用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)與注意力機(jī)制結(jié)合的方法.
基于內(nèi)容的推薦算法或混合推薦算法中的一個(gè)關(guān)鍵步驟是用戶興趣建模,現(xiàn)有的用戶興趣建模方法大體分為3種:用戶整體興趣建模、用戶時(shí)序興趣建模和用戶混合興趣建模[12].用戶整體興趣建模在建模用戶興趣時(shí),將用戶瀏覽的歷史新聞看作一個(gè)沒(méi)有順序的集合,不考慮用戶瀏覽歷史新聞的時(shí)間順序信息.Wang等[2]提出DKN(Deep Knowledge-Aware Network),通過(guò)注意力機(jī)制計(jì)算候選新聞向量與每條瀏覽新聞向量之間的權(quán)重,使用該權(quán)重聚合用戶的瀏覽歷史,計(jì)算用戶的興趣表示.Wu等[13]提出User-as-Graph,將每位用戶建模為一個(gè)個(gè)性化的異構(gòu)圖,捕捉用戶行為之間的相關(guān)性,進(jìn)行更準(zhǔn)確的用戶興趣建模.Li等[14]提出MINER(Multi-interest Matching Network for News Recommendation),使用多重注意力方法學(xué)習(xí)用戶的多個(gè)興趣向量表示,在聚合用戶的多個(gè)興趣向量表示之后,得到用戶的最終表示.Wu等[15]提出CPRS(Click Preference and Reading Satisfaction),從用戶的點(diǎn)擊新聞標(biāo)題行為和對(duì)新聞內(nèi)容的閱讀行為兩方面建模用戶的整體偏好.這類模型在對(duì)用戶興趣建模時(shí)取得一定效果,但忽略用戶點(diǎn)擊新聞的時(shí)間信息.
用戶時(shí)序興趣建模根據(jù)用戶瀏覽新聞的時(shí)間排序,注重考慮時(shí)序信息,對(duì)用戶興趣進(jìn)行建模.Okura等[16]采用門控神經(jīng)網(wǎng)絡(luò)(Gated Recurrent Unit, GRU)對(duì)用戶瀏覽歷史進(jìn)行建模,學(xué)習(xí)用戶的興趣表示,計(jì)算用戶興趣表示與候選新聞表示之間的相關(guān)性,從而實(shí)現(xiàn)新聞推薦.Khattar等[17]提出使用雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)的混合循環(huán)注意機(jī),使用雙向LSTM構(gòu)建用戶歷史組件.
用戶混合興趣建模在對(duì)用戶興趣建模時(shí)同時(shí)考慮用戶瀏覽歷史新聞的內(nèi)容和用戶瀏覽時(shí)序信息.Zhu等[18]提出DAN(Deep Attention Neural Network),采用LSTM和候選新聞感知的注意力機(jī)制為用戶建模,分別生成用戶瀏覽歷史序列表示和用戶興趣表示.Hu等[19]提出GNewsRec(Graph Neural News Re-commendation Model),考慮用戶的長(zhǎng)短期興趣,采用LSTM對(duì)用戶最近瀏覽的新聞進(jìn)行建模,得到用戶短期興趣表示,并采用圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network, GNN)學(xué)習(xí)用戶長(zhǎng)期興趣表示.An等[20]采用GRU學(xué)習(xí)用戶短期興趣嵌入,并通過(guò)ID嵌入方式建模用戶長(zhǎng)期興趣.
上述工作已取得一定的成果,但已有的基于循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)及其變體的工作在用戶短期興趣建模時(shí),通常假定用戶瀏覽的新聞之間具有很強(qiáng)的時(shí)序依賴關(guān)系,注重用戶閱讀新聞的順序.但新聞推薦不同于序列推薦(如電子商務(wù)推薦)[21],用戶可能不會(huì)連續(xù)閱讀類似的新聞.用戶閱讀新聞時(shí)通常會(huì)被新出現(xiàn)的新聞或重大事件吸引,閱讀的相鄰新聞往往是多樣化的而不是類似的.因此,用戶閱讀新聞的順序?qū)τ脩襞d趣的表示依賴性不大.當(dāng)采用基于時(shí)序性的網(wǎng)絡(luò)模型(如LSTM等)對(duì)用戶閱讀的新聞進(jìn)行建模并獲取用戶興趣時(shí)可能會(huì)引入噪音,并且不同的歷史新聞對(duì)用戶近期興趣建模也具有不同作用.此外,現(xiàn)有工作往往假定長(zhǎng)短期興趣同等重要,將得到的長(zhǎng)期興趣和短期興趣表示進(jìn)行拼接后再預(yù)測(cè)與候選新聞的匹配程度,難以體現(xiàn)用戶不同興趣與候選新聞之間的匹配程度.
為了解決上述問(wèn)題,本文提出基于Transformer與異質(zhì)圖神經(jīng)網(wǎng)絡(luò)的新聞推薦模型(News Recom-mendation Model Based on Transformer and Heterogenous Graph Neural Network, NR-TrHGN).首先,使用CNN得到新聞的表示.然后通過(guò)異質(zhì)圖神經(jīng)網(wǎng)絡(luò)捕捉用戶和新聞之間的高階關(guān)系,建模用戶長(zhǎng)期興趣和候選新聞的表示.用戶閱讀的近期新聞對(duì)其興趣建模具有重要作用[19-20],但是由于用戶短期閱讀新聞數(shù)量相對(duì)較少,對(duì)其構(gòu)建異質(zhì)圖時(shí),會(huì)出現(xiàn)嚴(yán)重稀疏問(wèn)題,因此不同于長(zhǎng)期興趣采用圖異質(zhì)神經(jīng)網(wǎng)絡(luò)建模的方式,本文采用Transformer從用戶最近瀏覽的新聞中建模用戶的短期興趣表示.最后,分別采用不同的評(píng)分規(guī)則計(jì)算候選新聞與用戶長(zhǎng)期興趣和短期興趣之間的匹配程度.在真實(shí)數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)驗(yàn)證本文模型的有效性.
文中的新聞推薦問(wèn)題定義如下:給定新聞集I={d1,d2,…,dM}和用戶集U={u1,u2,…,uS},其中,M表示新聞總數(shù),S表示用戶總數(shù).用戶u在新聞集I上的歷史瀏覽記錄為{du,1,du,2,…,du,n},其中
在本文中,每條新聞包括標(biāo)題、內(nèi)容中的實(shí)體及實(shí)體類型.每個(gè)新聞標(biāo)題T={w1,w2,…,wf},由一組單詞序列組成,其中,wi表示新聞標(biāo)題T中第i個(gè)單詞,f表示新聞標(biāo)題中詞語(yǔ)的個(gè)數(shù).新聞內(nèi)容由一組實(shí)體E={e1,e2,…,eg}和對(duì)應(yīng)的實(shí)體類型C={c1,c2,…,cg}組成,其中,ci表示實(shí)體ei的實(shí)體類型,g表示新聞內(nèi)容中實(shí)體的個(gè)數(shù).
本文提出基于Transformer與異質(zhì)圖神經(jīng)網(wǎng)絡(luò)的新聞推薦模型(NR-TrHGN),總體框架如圖1所示.
圖1 NR-TrHGN總體框架圖Fig.1 Framework of NR-TrHGN
NR-TrHGN包括四個(gè)模塊:用戶長(zhǎng)期興趣建模、用戶短期興趣建模、候選新聞建模和長(zhǎng)短期興趣感知的點(diǎn)擊預(yù)測(cè).首先,采用CNN提取新聞特征.然后,為了能學(xué)習(xí)到用戶、新聞和主題之間的高階關(guān)系,本文構(gòu)建一個(gè)具有用戶完整瀏覽歷史的用戶-新聞-主題異質(zhì)圖,通過(guò)GNN的強(qiáng)大推理能力,建模用戶長(zhǎng)期興趣和候選新聞的表示.對(duì)用戶最近瀏覽的新聞通過(guò)Transformer得到用戶短期興趣表示.最后,分別使用兩個(gè)評(píng)分表示候選新聞與用戶長(zhǎng)期興趣和短期興趣之間的匹配程度,通過(guò)一個(gè)可學(xué)習(xí)的參數(shù)將兩個(gè)評(píng)分線性組合,得到一個(gè)統(tǒng)一評(píng)分,用于最后預(yù)測(cè).
在用戶長(zhǎng)期興趣建模、用戶短期興趣建模、候選新聞建模這3個(gè)模塊中均包含對(duì)新聞特征的提取.新聞特征提取部分主要包含兩步.首先獲取新聞標(biāo)題、新聞內(nèi)容中的實(shí)體、實(shí)體類型的嵌入表示.本文采用初始化詞向量矩陣的形式,根據(jù)詞向量矩陣獲取新聞標(biāo)題的嵌入表示
其中,wi∈Rk1表示新聞標(biāo)題T中詞語(yǔ)wi的嵌入向量,k1表示詞向量維度.新聞內(nèi)容中的實(shí)體嵌入
及對(duì)應(yīng)的實(shí)體類型嵌入
其中,ei∈Rk2表示實(shí)體ei的嵌入向量,ci∈Rk3表示實(shí)體類型ci的嵌入向量,k2表示實(shí)體的嵌入維度,k3表示實(shí)體類型的嵌入維度.由于新聞實(shí)體和新聞實(shí)體類型具有一一對(duì)應(yīng)關(guān)系,本文拼接實(shí)體和實(shí)體類型的嵌入表示,得到新聞內(nèi)容信息表示:
其中,f(c)=Wcc表示轉(zhuǎn)換函數(shù),Wc∈Rk2×k3表示可訓(xùn)練的轉(zhuǎn)換矩陣.
受異質(zhì)圖神經(jīng)網(wǎng)絡(luò)模型在推薦系統(tǒng)領(lǐng)域成功應(yīng)用[22]的啟發(fā),本文采用異質(zhì)圖神經(jīng)網(wǎng)絡(luò)捕捉用戶和新聞之間的高階關(guān)系.主題信息有助于更好地表示用戶興趣,并減輕用戶-新聞交互的稀疏性,因此本部分首先采用LDA(Latent Dirichlet Allocation)[23]獲取主題分布,隨后構(gòu)建一個(gè)包含用戶完整瀏覽歷史的用戶-新聞-主題異質(zhì)圖.使用圖卷積網(wǎng)絡(luò)學(xué)習(xí)用戶和新聞的嵌入,在圖上傳播嵌入,對(duì)用戶與新聞之間的高階信息進(jìn)行編碼.
如圖2所示,異質(zhì)圖G=(V,R)包含節(jié)點(diǎn)集合V和邊集合R.在本文中,節(jié)點(diǎn)集合V={Vu,Vd,Vt},包括用戶節(jié)點(diǎn)集合Vu、新聞節(jié)點(diǎn)集合Vd和主題節(jié)點(diǎn)集合Vt.本文的邊集合通過(guò)如下方式連接:若用戶ui瀏覽新聞dj(即xij=1),則用戶ui和新聞dj之間有邊,新聞dj與它的主題tk相連.
圖2 用戶-新聞-主題異質(zhì)圖Fig.2 User-news-topic heterogenous graph
本文采用GNN捕獲用戶和新聞之間的高階關(guān)系,計(jì)算以用戶為中心節(jié)點(diǎn)單層GNN的一般步驟如下.首先聚集用戶的鄰居節(jié)點(diǎn),將不同類型的鄰居節(jié)點(diǎn)映射到同一空間,通過(guò)GNN更新中心節(jié)點(diǎn)表示:
Eu=ReLU(W·(Mean(M·Ev))+b),
(1)
其中,ReLU(·)表示ReLU激活函數(shù),Mean(·)表示均值聚合函數(shù),M表示將不同類型的節(jié)點(diǎn)轉(zhuǎn)換到同一空間的可訓(xùn)練變換矩陣,W、b表示GNN層的權(quán)重矩陣和偏差,Ev表示中心節(jié)點(diǎn)Eu的鄰居節(jié)點(diǎn)表示.同樣地,按照上述過(guò)程可得到新聞的特征表示En和主題的特征表示Et.
再計(jì)算與用戶相鄰新聞的線性平均組合:
其中,n表示與用戶u相鄰新聞的表示,可隨機(jī)初始化,Wn表示新聞可訓(xùn)練轉(zhuǎn)換矩陣,映射到用戶嵌入空間,N(u)表示與用戶直接相連的新聞集合.
然后通過(guò)鄰居節(jié)點(diǎn)嵌入對(duì)用戶長(zhǎng)期興趣嵌入進(jìn)行更新:
ul=ReLU(Wl.EN+bl)
,
其中,ReLU(·)表示ReLU激活函數(shù),Wl、bl分別表示第1層GNN的轉(zhuǎn)換權(quán)重和偏差.
用戶長(zhǎng)期興趣的最終嵌入表示只與用戶直接相連的鄰居相關(guān),即用戶瀏覽過(guò)的新聞.為了捕獲用戶和新聞之間的高階關(guān)系,可將GNN從一層擴(kuò)展到多層.如圖1左側(cè)用戶長(zhǎng)期興趣模塊所示,二階的用戶嵌入先通過(guò)式(1)均值聚合用戶表示和主題表示,得到與用戶直接相鄰的新聞表示n,再均值聚合新聞表示n,得到用戶的二階特征表示ul.
短期興趣在用戶興趣建模中具有重要作用[19-20].圖3列舉某用戶在一段時(shí)間內(nèi)閱讀新聞的標(biāo)題序列,用戶在時(shí)刻tj-5閱讀一篇關(guān)于“北京冬奧會(huì)開幕式”的新聞,在時(shí)刻tj-4閱讀關(guān)于自己持續(xù)關(guān)注的“樊振東”的新聞,在時(shí)刻tj-3閱讀“谷愛(ài)凌在冬奧會(huì)上再獲冠軍”的新聞,而接下來(lái)分別閱讀關(guān)于“世界衛(wèi)生日”和“新冠疫情”的新聞,之后再一次閱讀關(guān)于“北京冬奧會(huì)”的新聞.由圖可看出,用戶近期閱讀的6篇新聞中包含3篇關(guān)于“北京冬奧會(huì)”的新聞,顯然該用戶暫時(shí)被這個(gè)事情吸引,即用戶的短期興趣.現(xiàn)有的短期興趣建模方法大多采用LSTM或GRU進(jìn)行編碼,將近期閱讀的每條新聞看成同等重要,但顯然用戶在時(shí)刻tj-1閱讀的新聞不如時(shí)刻tj-3、tj-4閱讀的新聞包含的信息豐富.Transformer由于其強(qiáng)大的編碼能力,已成功應(yīng)用于自然語(yǔ)言處理領(lǐng)域的很多任務(wù)[22],內(nèi)部包含的多頭注意力機(jī)制能有效提取重要的信息.因此在該部分本文采用Transformer對(duì)用戶短期興趣進(jìn)行建模.
圖3 用戶閱讀新聞的標(biāo)題序列Fig.3 Title sequence of news read by user
Transformer的編碼器由多塊串聯(lián)組成,其中每塊由多頭注意力機(jī)制和前向反饋神經(jīng)網(wǎng)絡(luò)組成[24].基于Transformer的用戶短期興趣編碼結(jié)構(gòu)如圖4所示.
圖4 基于Transformer的用戶短期興趣建模結(jié)構(gòu)圖Fig.4 Structure of user′s short-term interest modeling based on Transformer
以用戶u最近瀏覽的新聞{du,n-m+1,du,n-m+2,…,du,n}的特征表示矩陣
為Transformer輸入.Transformer每個(gè)模塊的計(jì)算步驟如下.
Transformer中多頭注意力機(jī)制通過(guò)3個(gè)矩陣實(shí)現(xiàn),即查詢矩陣Q、鍵矩陣K和值矩陣V.首先將新聞的特征表示進(jìn)行如下變換:
其中,head表示注意力頭數(shù),Zi表示第i個(gè)注意力頭,Concat(·)表示拼接操作,WO表示附加的權(quán)重矩陣.接下來(lái)進(jìn)行求和與層歸一化:
隨后將o傳遞到前饋神經(jīng)網(wǎng)絡(luò),再次進(jìn)行求和與層歸一化操作.
Transformer包含N層這樣的操作,每層的輸出作為下一層的輸入.最終得到用戶最近瀏覽新聞的隱藏表示:
H=[hn-m+1,hn-m+2,…,hn].
然后采用注意力網(wǎng)絡(luò)進(jìn)一步獲取用戶的短期興趣表示us.
候選新聞建模與用戶長(zhǎng)期興趣建模相似,采用GNN捕捉用戶和新聞之間的高階關(guān)系,不同的是本模塊把候選新聞當(dāng)作中心節(jié)點(diǎn),先通過(guò)式(1)均值聚合相鄰的新聞嵌入,得到與候選新聞直接相鄰的用戶嵌入u和主題嵌入t,再聚合用戶嵌入u和主題嵌入t,得到候選新聞的二階嵌入表示:
其中,Wu表示用戶可訓(xùn)練轉(zhuǎn)換矩陣,Wt表示主題可訓(xùn)練轉(zhuǎn)換矩陣,將它們從不同的空間映射到相同的候選新聞嵌入空間,U(z)、T(z)分別表示與候選新聞直接相連的用戶集合和主題集合.
然后通過(guò)
(2)
其中α表示一個(gè)可學(xué)習(xí)的參數(shù).
令
其中,△+表示正樣本集,△-表示負(fù)樣本集.此外,本文對(duì)使用注意力機(jī)制的權(quán)重參數(shù)進(jìn)行L2正則化處理,防止過(guò)擬合.
本文實(shí)驗(yàn)使用挪威新聞門戶網(wǎng)站的真實(shí)數(shù)據(jù)集Adressa[25],數(shù)據(jù)集情況如表1所示.Adressa數(shù)據(jù)集分為2個(gè)數(shù)據(jù)子集:Adressa-1week和Adressa-10weeks.Adressa-1week數(shù)據(jù)集包含一周(從2017年1月1日至2017年1月7日)內(nèi)用戶瀏覽新聞的數(shù)據(jù),Adressa-
10weeks數(shù)據(jù)集包含10周(從2017年1月1日至2017年3月31日)內(nèi)用戶瀏覽新聞的數(shù)據(jù).Adressa是一個(gè)基于事件的數(shù)據(jù)集,對(duì)于每個(gè)事件,本文使用如下7個(gè)屬性:會(huì)話開始、會(huì)話結(jié)束、用戶ID、新聞ID、時(shí)間戳、標(biāo)題和概要文件,用于生成數(shù)據(jù)集.本文根據(jù)時(shí)間戳對(duì)新聞進(jìn)行排序.
表1 實(shí)驗(yàn)數(shù)據(jù)集詳細(xì)信息Table 1 Description of experimental datasets
對(duì)于Adressa-1week數(shù)據(jù)集,本文把前5天的歷史數(shù)據(jù)用于構(gòu)造圖,前5天用戶最后瀏覽的n條新聞?dòng)糜谟脩舳唐谂d趣建模,第6天的數(shù)據(jù)用于生成〈用戶,新聞〉對(duì),建立用戶和新聞之間的邊,最后一天的數(shù)據(jù)中20%用于驗(yàn)證,80%用于測(cè)試.類似地,對(duì)于Adressa-10weeks數(shù)據(jù)集,本文使用前50天的數(shù)據(jù)用于構(gòu)造圖,接下來(lái)的10天用于生成訓(xùn)練對(duì),剩下10天的20%數(shù)據(jù)用于驗(yàn)證,80%數(shù)據(jù)用于測(cè)試.
同先前的新聞推薦相關(guān)工作[18-20]一致,本文采用AUC(Area Under Curve)和F1作為評(píng)價(jià)指標(biāo).本文模型基于Tensorflow1.15實(shí)現(xiàn).標(biāo)題嵌入維度k1、實(shí)體嵌入維度k2和實(shí)體類型嵌入維度k3均設(shè)置為50,新聞嵌入維度、用戶嵌入維度和主題嵌入維度均設(shè)為128.并行CNN的參數(shù)配置和DAN[20]中一致,用戶最近瀏覽的新聞數(shù)m=10.Transformer中多頭自注意力機(jī)制的頭數(shù)設(shè)置為8.LDA中主題數(shù)設(shè)為20.在GNN中,采樣固定數(shù)量的相鄰用戶數(shù)Lu設(shè)置為10,相鄰新聞數(shù)Ld設(shè)置為30.本文采用均值為0、標(biāo)準(zhǔn)差為0.1的高斯分布進(jìn)行隨機(jī)初始化參數(shù),并采用Adam(Adaptive Moment Estimation)[26]對(duì)參數(shù)進(jìn)行優(yōu)化,將學(xué)習(xí)率設(shè)置為0.000 3,失活率設(shè)置為0.5.模型在訓(xùn)練過(guò)程中,采用驗(yàn)證集進(jìn)行驗(yàn)證.上述參數(shù)是根據(jù)模型在驗(yàn)證集上性能最優(yōu)時(shí)確定的,保留在驗(yàn)證集上最優(yōu)的模型,并在測(cè)試集上進(jìn)行測(cè)試.
為了測(cè)試本文模型性能,選擇如下經(jīng)典的基準(zhǔn)算法與近期效果突出的新聞推薦方法進(jìn)行對(duì)比實(shí)驗(yàn).同先前的工作一樣[19-20],所有的對(duì)比模型采用相同的參數(shù)設(shè)置.
1)Wide&Deep(Wide&Deep Learning for Recom-
mender Systems)[7].經(jīng)典推薦模型,融合線性模型和前饋神經(jīng)網(wǎng)絡(luò),用于建模低階和高階的特征交互.線性模型用于提高模型的記憶能力,但依賴于手動(dòng)提取特征,泛化能力較弱.前饋神經(jīng)網(wǎng)絡(luò)用于提高模型的泛化能力.
2)DeepFM(Factorization-Machine Based Neural Network)[27].經(jīng)典的推薦模型,主要包括線性模型和深度模型兩個(gè)模塊,分別用于提取低階信息的因子分解機(jī)和提取高階交叉特征的神經(jīng)網(wǎng)絡(luò).
3)DKN[2].基于深度知識(shí)感知的新聞推薦系統(tǒng),將單詞和實(shí)體看作多個(gè)通道,通過(guò)CNN合并語(yǔ)義和知識(shí)級(jí)的表示.
4)DAN[18].基于深度注意力神經(jīng)網(wǎng)絡(luò),用于新聞推薦,采用基于注意力的并行CNN提取用戶特征,并使用基于注意力的RNN捕獲用戶瀏覽的順序特征.
5)GNewsRec[19].結(jié)合用戶長(zhǎng)期興趣和短期興趣,采用LSTM建模用戶短期興趣,基于圖神經(jīng)網(wǎng)絡(luò)建模用戶長(zhǎng)期興趣,拼接用戶長(zhǎng)期興趣與短期興趣,用于用戶最終表示.
6)AGNN(Attention-Based Graph Neural Network News Recommendation)[28].基于注意力的圖神經(jīng)網(wǎng)絡(luò)新聞推薦模型,采用多通道CNN生成新聞表示,并利用改進(jìn)的LSTM和圖神經(jīng)網(wǎng)絡(luò)建模用戶表示.
各模型在兩個(gè)數(shù)據(jù)集上的指標(biāo)值對(duì)比結(jié)果如表2所示,表中黑體數(shù)字表示最優(yōu)值.觀察和分析表2,可得出如下結(jié)論.
1)新聞推薦模型優(yōu)于其它推薦模型(如Wide&-
Deep和DeepFM).這驗(yàn)證在新聞推薦任務(wù)上新聞推薦模型比一般的推薦模型更有效.表中所有新聞推薦模型在Adressa-10weeks數(shù)據(jù)集上的性能均低于Adressa-1week數(shù)據(jù)集上的性能,可能是因?yàn)锳dressa-
10weeks數(shù)據(jù)集記錄用戶十周閱讀的新聞,由于用戶新聞更新的快速性,時(shí)間相對(duì)較久的新聞可能對(duì)用戶興趣建模產(chǎn)生干擾.Wide&Deep和DeepFM雖然在Adressa-10weeks數(shù)據(jù)集上的性能優(yōu)于在Adressa-1week數(shù)據(jù)集上的性能,但其性能均低于新聞推薦模型,此外,這兩個(gè)模型在線性模型輸入部分均依賴于人工提取特征,泛化能力較弱.
2)分別提取用戶長(zhǎng)期興趣和短期興趣的模型比只考慮用戶單一興趣的模型效果更優(yōu).GNewsRec、AGNN、NR-TrHGN在兩個(gè)評(píng)價(jià)指標(biāo)上均高于其它模型,這說(shuō)明同時(shí)考慮用戶長(zhǎng)短期興趣是有必要的.
3)相比其它同時(shí)考慮用戶長(zhǎng)短期興趣的模型(GNewsRec和AGNN),NR-TrHGN的各項(xiàng)指標(biāo)值均最高.這主要是由于NR-TrHGN借助Transformer強(qiáng)大的編碼能力對(duì)用戶近期興趣進(jìn)行建模,過(guò)濾近期興趣中不重要的信息.此外設(shè)計(jì)長(zhǎng)短期興趣感知的點(diǎn)擊預(yù)測(cè)機(jī)制,自適應(yīng)地學(xué)習(xí)長(zhǎng)短期興趣在新聞推薦中的重要程度,進(jìn)一步提高模型性能.
表2 各模型的性能對(duì)比
本節(jié)對(duì)比模型的變體,由此驗(yàn)證各模塊的有效性,定義如下4個(gè)子模型.
1)NR-TrHGN-t.表示從NR-TrHGN中去掉新聞主題信息,即在GNN中不考慮新聞的主題信息.
3)NR-TrHGN-a.表示從NR-TrHGN中去掉用戶短期興趣建模模塊中的注意力機(jī)制,由Transformer得到用戶最近瀏覽新聞的表示
H=[hn-m+1,hn-m+2,…,hn],
通過(guò)均值聚合的方式得到用戶的短期興趣表示us.
各模型在2個(gè)數(shù)據(jù)集上的指標(biāo)值如表3所示,表中黑體數(shù)字表示最優(yōu)值.由表可看出,當(dāng)NR-TrHGN刪除用戶長(zhǎng)期興趣建模模塊后,AUC和F1出現(xiàn)大幅下降,這說(shuō)明用戶長(zhǎng)期興趣對(duì)用戶興趣表示影響程度更大.當(dāng)NR-TrHGN刪除用戶短期興趣建模模塊后,AUC和F1下降超過(guò)2%,這表明用戶短期興趣建模模塊的有效性,應(yīng)同時(shí)考慮用戶的長(zhǎng)期興趣和短期興趣.當(dāng)NR-TrHGN刪除用戶短期興趣建模模塊中的注意力機(jī)制后,實(shí)驗(yàn)效果優(yōu)于NR-TrHGN直接刪除用戶短期興趣的效果,這驗(yàn)證Transformer對(duì)NR-TrHGN的提升效果.相比沒(méi)有新聞主題信息的模型,NR-TrHGN在兩個(gè)指標(biāo)上均有提升,這是因?yàn)榧尤胄侣勚黝}信息可緩解數(shù)據(jù)稀疏性的問(wèn)題.綜上可見(jiàn),本文提出的各模塊均是有效的.
表3 消融實(shí)驗(yàn)結(jié)果
為了驗(yàn)證變量對(duì)實(shí)驗(yàn)結(jié)果的影響,本節(jié)在Adressa-1week、Adressa-10weeks數(shù)據(jù)集上分析模型中GNN層數(shù)和Transformer層數(shù)對(duì)實(shí)驗(yàn)結(jié)果的影響,并展示可學(xué)習(xí)參數(shù)α的變化曲線.
不同GNN層數(shù)對(duì)實(shí)驗(yàn)結(jié)果的影響如表4和表5所示.表中黑體數(shù)字表示最優(yōu)值;U-1 layer、U-2 layers分別表示在用戶長(zhǎng)期興趣建模時(shí),以用戶為中心節(jié)點(diǎn)的GNN層數(shù)分別設(shè)為1、2;N-1 layer、N-2 layers、N-3 layers分別表示在候選新聞建模時(shí),以候選新聞為中心節(jié)點(diǎn)的GNN層數(shù)分別設(shè)為1、2、3.當(dāng)以用戶為中心節(jié)點(diǎn)的GNN和以候選新聞為中心節(jié)點(diǎn)的GNN層數(shù)都為2時(shí),兩個(gè)評(píng)價(jià)指標(biāo)效果最優(yōu).當(dāng)以新聞為中心節(jié)點(diǎn)的GNN層數(shù)從1層增至2層時(shí),AUC值最高提升5.1%,F1值最高提升5%;當(dāng)以新聞為中心節(jié)點(diǎn)的GNN層數(shù)從2層增至3層時(shí),AUC值最高下降3.7%,F1值最高下降4.6%,以用戶為中心節(jié)點(diǎn)的GNN層數(shù)變化表現(xiàn)出相同的趨勢(shì).這是因?yàn)橐粚拥腉NN不能捕獲用戶和新聞之間的高階關(guān)系,而三層的GNN可能會(huì)給模型帶來(lái)更多的噪聲,影響模型性能.當(dāng)推斷節(jié)點(diǎn)間的相似性時(shí),更高的關(guān)系層數(shù)對(duì)實(shí)驗(yàn)結(jié)果意義不大[2].
表4 不同GNN層數(shù)的實(shí)驗(yàn)結(jié)果(Adressa-1week)
表5 不同GNN層數(shù)的實(shí)驗(yàn)結(jié)果(Adressa-10weeks)
本文還考慮不同Transformer層數(shù)N對(duì)指標(biāo)值的影響,結(jié)果如圖5所示.
(a)Adressa-1week
(b)Adressa-10weeks 圖5 不同Transformer層數(shù)的實(shí)驗(yàn)結(jié)果Fig.5 Experimental results of different Transformer layers
由圖5可看出,當(dāng)層數(shù)N=3時(shí)效果最優(yōu),并且隨著層數(shù)的增加模型效果逐漸下降.這是因?yàn)閷訑?shù)過(guò)多時(shí),可能引入噪聲數(shù)據(jù),影響模型性能.因此本文將Transformer層數(shù)設(shè)為3.
學(xué)習(xí)參數(shù)α不同時(shí)的變化曲線如圖6所示.隨著訓(xùn)練次數(shù)的不斷增加,α逐漸趨于穩(wěn)定,穩(wěn)定在[0.8,0.95]區(qū)間,當(dāng)在驗(yàn)證集上效果最優(yōu)時(shí),α=0.85.這說(shuō)明用戶長(zhǎng)期興趣和短期興趣在用戶興趣建模中具有重要作用,其中用戶長(zhǎng)期興趣對(duì)用戶興趣的影響較大,占主要作用,用戶短期興趣在用戶興趣中起到補(bǔ)充作用.
圖6 可學(xué)習(xí)參數(shù)α的變化曲線Fig.6 Variation curve of learnable parameter α
本文提出基于Transformer與異質(zhì)圖神經(jīng)網(wǎng)絡(luò)的新聞推薦模型(NR-TrHGN).首先,采用多通道卷積網(wǎng)絡(luò)得到新聞的特征表示,采用Transformer捕獲用戶近期閱讀新聞之間的內(nèi)在聯(lián)系,得到用戶短期興趣表示.然后,建立用戶、新聞、主題之間的異質(zhì)圖,采用異質(zhì)圖神經(jīng)網(wǎng)絡(luò)得到用戶、新聞和主題之間的高階關(guān)系,通過(guò)在圖上傳播嵌入學(xué)習(xí)用戶和新聞表示.最后,分別使用兩個(gè)評(píng)分表示候選新聞與用戶長(zhǎng)期興趣和短期興趣之間的匹配程度,通過(guò)一個(gè)可學(xué)習(xí)的參數(shù)將兩個(gè)評(píng)分線性組合,得到一個(gè)統(tǒng)一評(píng)分.在真實(shí)數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)顯示,本文模型在兩個(gè)評(píng)價(jià)指標(biāo)上均有提升,表明本文模型的有效性.今后將考慮引入知識(shí)圖譜,加強(qiáng)對(duì)用戶閱讀新聞信息的理解,獲取更全面的新聞?dòng)脩舯硎竞陀脩襞d趣表示,提高新聞推薦的準(zhǔn)確性.