劉偉江 郝一哲
DOI:10.3969/j.issn.1008—0821.2021.09.007
[中圖分類號]TP391 [文獻標(biāo)識碼]A [文章編號]1008-0821(2021)09-0064-10
隨著信息技術(shù)的發(fā)展,以數(shù)據(jù)分析為基礎(chǔ)的推薦系統(tǒng)應(yīng)用領(lǐng)域不斷拓展,如根據(jù)用戶信息的購物推薦;針對交互歷史數(shù)據(jù)的音樂、電影推薦等。在現(xiàn)有推薦模型研究基礎(chǔ)上,針對以往推薦模型面臨的數(shù)據(jù)稀疏和冷啟動、訓(xùn)練數(shù)據(jù)邏輯關(guān)聯(lián)不足、推薦結(jié)果可解釋性低等問題,研究人員逐漸將知識圖譜技術(shù)引入推薦系統(tǒng)中。
知識圖譜(Knowledge Graph,KG)概念最早由美國Google公司提出并逐漸發(fā)展為一種表達實體間語義關(guān)系的知識庫工具。現(xiàn)階段,伴隨著互聯(lián)網(wǎng)技術(shù)的進步,許多團體已經(jīng)構(gòu)建了包含大量實體信息的知識圖譜,如DBpedia、CN-DBpedia、YAGO KG、Freebase KG、Microsoft Satori等通用知識圖譜。在推薦系統(tǒng)中引入知識圖譜可以豐富項目與項目、用戶與用戶以及項目與用戶的關(guān)聯(lián)信息,并可借助其語義推理功能提取原始輸入數(shù)據(jù)間的邏輯關(guān)系,以提高推薦系統(tǒng)的工作性能。此外,由于儲存在知識圖譜中的實體間語義關(guān)系種類具有多樣性,推薦系統(tǒng)中某個用戶與實體間的交互數(shù)據(jù)往往可以在知識圖譜中從一個項目實體出發(fā),沿著不同的語義關(guān)系延伸到不同類型的項目實體,從而擴大用戶的潛在興趣種類和范圍,提高推薦系統(tǒng)輸出結(jié)果的合理性;同時,知識圖譜的語義關(guān)系與推薦系統(tǒng)的輸入數(shù)據(jù)相結(jié)合可提高推薦系統(tǒng)輸出結(jié)果的可解釋性,改善商家推薦服務(wù)的接受度與用戶滿意度。因此,許多學(xué)者將知識圖譜與推薦系統(tǒng)結(jié)合提高推薦性能:Yang D等利用Metapath2Vec模型,將知識圖譜中的實體節(jié)點作為模型輸入,提高推薦系統(tǒng)的精準率:Zhang FZ等提出的CKE模型可對知識圖譜進行特征學(xué)習(xí),并將學(xué)習(xí)結(jié)果結(jié)合協(xié)同過濾模型實現(xiàn)推薦。類似結(jié)合知識圖譜的推薦模型只將知識圖譜特征化,但推薦結(jié)果的可解釋性和邏輯性仍有欠缺,因此Wang H等基于已構(gòu)建的知識圖譜提出了“偏好擴散”的思想構(gòu)建“Rip-pleNet模型”,此模型利用知識推理功能判斷用戶潛在偏好向用戶推薦,即用戶對某項事物的偏好信息可以借助知識圖譜節(jié)點間語義關(guān)系在節(jié)點之間傳播,再通過實體節(jié)點和語義關(guān)系特征刻畫用戶偏好,此方法取得良好的效果并廣泛引用。
本文以RippleNet模型為基礎(chǔ),考慮到模型根據(jù)隨機選取定量節(jié)點的機制更新用戶偏好數(shù)據(jù)集的過程會導(dǎo)致每次更新的元素節(jié)點與上層潛在偏好節(jié)點之間的語義邏輯性偏低,并且在隨機更新過程中會出現(xiàn)用戶偏好失真,這種失真會在偏好數(shù)據(jù)集中逐層放大,進而影響用戶偏好的刻畫。此外,訓(xùn)練RippleNet模型的用戶評分數(shù)據(jù)屬于一種隱式反饋數(shù)據(jù),此評分數(shù)據(jù)通過閾值設(shè)定方式進一步被轉(zhuǎn)換為顯式評分數(shù)據(jù),在這一轉(zhuǎn)換過程中,數(shù)據(jù)噪聲的存在會影響最后的推薦質(zhì)量。Yera R等認為未經(jīng)過噪聲處理的原始隱式交互數(shù)據(jù)會影響推薦結(jié)果的精準率。趙明等和郭偉等為了降低訓(xùn)練數(shù)據(jù)對推薦模型性能的影響,將識別的噪聲刪除,卻提高了數(shù)據(jù)稀疏性?;诖?,本文從以下兩方面對RippleNet模型進行優(yōu)化,以期提高推薦結(jié)果的精準度。首先,統(tǒng)計已構(gòu)建知識圖譜中各類語義關(guān)系詞頻,用戶偏好擴散時,其偏好數(shù)據(jù)集會優(yōu)先選擇與起始節(jié)點在知識圖譜中高語義詞頻語義關(guān)系連接的下層節(jié)點進行更新,保證用戶偏好按照較強的語義邏輯進行擴散,從而改進數(shù)據(jù)集更新過程節(jié)點選擇的隨機性;其次,本文分別設(shè)置一個低分閾值和高分閾值,將顯式評分數(shù)據(jù)中用戶和項目劃分為高、中、低評分類,按照高評分用戶評價過的高評分項目會得到高評分的邏輯(中、低評分類也具有類似邏輯)對原始評分數(shù)據(jù)集進行噪聲的識別和修正工作。因此,本文擬利用偏好傳播規(guī)則限制用戶偏好數(shù)據(jù)集的隨機性的同時,通過識別并修正噪聲提高訓(xùn)練數(shù)據(jù)質(zhì)量來提高模型的推薦性能。
1相關(guān)工作概述
1.1知識圖譜
知識圖譜中的節(jié)點代表了一定范圍內(nèi)的實體,節(jié)點間的連線則表示一個實體和另一個實體的語義知識關(guān)系,實際上,可以將知識圖譜理解為一個由實體和實體間語義關(guān)系構(gòu)成的有向異構(gòu)網(wǎng)絡(luò)圖。首先,知識圖譜可以將現(xiàn)實中的事物實體以及事物間的關(guān)系抽象為節(jié)點與連線,從而構(gòu)成“圖譜”的表現(xiàn)形式,直觀表達抽象對象的關(guān)聯(lián)信息;其次,知識圖譜可以根據(jù)實體節(jié)點間相互聯(lián)系的語義關(guān)系對多個抽象對象進行“知識”表達。
1.2基于知識圖譜的RippleNet推薦模型
RippleNet推薦模型是一種基于知識圖譜推薦的端到端模型框架,它以用戶一項目對作為輸入,輸出用戶交互(如點擊、瀏覽)物品的概率,該模型通過分析知識圖譜中節(jié)點和語義關(guān)系獲得節(jié)點間深層次的潛在關(guān)系,并結(jié)合物品推薦思想在知識圖譜中獲得用戶的潛在偏好信息。
RippleNet模型的關(guān)鍵思想是用戶偏好擴散:該模型將每個用戶歷史興趣或者已有交互歷史的實體作為知識圖譜中的一個種子集,用戶偏好從種子集出發(fā)并沿著知識圖譜的語義關(guān)系連接進行迭代,擴展用戶的興趣并發(fā)現(xiàn)用戶對某個候選節(jié)點的潛在興趣,通過用戶偏好在知識圖譜中的擴散過程獲得用戶的偏好數(shù)據(jù)集。如圖1所示,某用戶看過由James Cameron執(zhí)導(dǎo)的電影《Titanic》,而該導(dǎo)演執(zhí)導(dǎo)過電影《Avatar》,另外《Titanic》中演員Leo-nardo DiCaprio也參演過《Inception》。根據(jù)“偏好擴散”思想,該用戶就有可能因為偏好演員Leo-nardo DiCaprio而喜歡《Inception》,也可能因為對導(dǎo)演James Cameron的偏好而喜歡《Avatar》。
1)類似于由多個雨滴產(chǎn)生的真實漣漪,用戶對實體的潛在興趣是由其歷史偏好逐層擴散,并沿著知識圖譜中的語義關(guān)系由近及遠傳播,通過圖2所示的同心圓對“漣漪”進行可視化類比。
2)用戶在偏好集合中的潛在偏好強度隨著跳數(shù)k增加而減弱,這與真實紋波振幅逐漸衰減的情況相似。圖2中逐漸變淡的綠色顯示了中心和周圍實體間逐漸減少的相關(guān)性。
2 RippleNet模型優(yōu)化
RippleNet模型對每一位用戶的偏好刻畫都來源于用戶偏好數(shù)據(jù)中的信息,用戶偏好數(shù)據(jù)集的質(zhì)量會直接影響模型性能。RippleNet模型中隨機選取節(jié)點的方式會使用戶偏好數(shù)據(jù)集具有不確定性,從而導(dǎo)致用戶偏好的不穩(wěn)定,進而直接影響推薦結(jié)果準確性;另外,原模型未考慮評分數(shù)據(jù)噪聲對推薦結(jié)果的影響,存在于評分數(shù)據(jù)中的噪聲會降低數(shù)據(jù)質(zhì)量,從根本上影響模型對用戶偏好的刻畫。所以RippleNet模型優(yōu)化主要由偏好擴散制定和評分數(shù)據(jù)噪聲識別與修正兩部分組成。
2.1偏好擴散規(guī)則制定