管文豪 張 爽 汪柏樂(lè)
(黑龍江大學(xué)數(shù)據(jù)科學(xué)與技術(shù)學(xué)院,黑龍江 哈爾濱 150000)
隨著信息化的快速發(fā)展,基于互聯(lián)網(wǎng)的電子商務(wù)系統(tǒng)發(fā)展迅速,商品個(gè)數(shù)和種類快速增長(zhǎng),顧客需要花費(fèi)大量的時(shí)間才能找到自己想買的商品,這種瀏覽大量無(wú)關(guān)的產(chǎn)品和信息的過(guò)程會(huì)使消費(fèi)者因信息過(guò)載問(wèn)題而不斷流失。因此,推薦系統(tǒng)應(yīng)運(yùn)而生。它們通過(guò)用戶的興趣特點(diǎn)和購(gòu)買行為,向用戶推薦用戶感興趣的信息和商品。
現(xiàn)有的電商推薦方法可分為三類:基于協(xié)同過(guò)濾[1]的推薦算法、基于內(nèi)容的推薦[2]算法以及基于深度學(xué)習(xí)的推薦算法[3]。利用這些推薦算法都能夠給用戶推薦出商品。但這些經(jīng)典的推薦算法向用戶推薦商品的過(guò)程中,會(huì)引入例如稀疏性、冷啟動(dòng)以及“黑箱”等問(wèn)題,并且推薦結(jié)果的解釋性不足。為了解決目前推薦算法存在的問(wèn)題,業(yè)界將知識(shí)圖譜引入到推薦系統(tǒng)中,考慮到了用戶和知識(shí)圖譜的聯(lián)系,以有效地利用知識(shí)圖譜來(lái)增強(qiáng)推薦系統(tǒng)的性能和效率。知識(shí)圖譜將現(xiàn)實(shí)世界中的實(shí)體和關(guān)系表達(dá)為結(jié)構(gòu)化三元組的形式,三元組描述了一個(gè)特定領(lǐng)域中的事實(shí),由頭實(shí)體、尾實(shí)體和描述這兩個(gè)實(shí)體之間的關(guān)系組成。為了從知識(shí)圖譜中有效提取用戶和實(shí)體之間的聯(lián)系,更好地挖掘用戶的潛在偏好,業(yè)界提出基于知識(shí)圖譜的推薦框架RippleNet[4]。此框架將電商場(chǎng)景下的每個(gè)用戶和商品,以及商品知識(shí)圖譜中的實(shí)體和關(guān)系表示為向量或矩陣,以用戶的歷史訪問(wèn)記錄為興趣中心,模擬用戶的興趣傳播在知識(shí)圖譜上逐層向外擴(kuò)散,并且不斷衰減的過(guò)程,最終預(yù)測(cè)候選商品的訪問(wèn)概率。該框架能夠推斷在知識(shí)圖譜上從用戶歷史商品到候選商品的鏈接路徑,以刻畫用戶偏好在知識(shí)圖譜中的傳播過(guò)程,并且最終將該鏈接路徑作為推薦結(jié)果的解釋。
u={u1,u2…}和v={v1,v2…}分別表示電商推薦場(chǎng)景中的用戶集合和商品集合,根據(jù)用戶是否訪問(wèn)或購(gòu)買過(guò)某個(gè)商品,我們定義一個(gè)用戶-商品交互矩陣Y:
知識(shí)圖譜G由大量的”實(shí)體-關(guān)系-實(shí)體”型的三元組構(gòu)成,其中h,t?ε,r?R,ε和R分別代表著知識(shí)圖譜中的實(shí)體集和關(guān)系集。我們的目標(biāo)是預(yù)測(cè)用戶u是否對(duì)其以前沒有交互過(guò)的商品v有潛在的興趣。
相關(guān)實(shí)體:給定知識(shí)圖譜G和用戶-商品交互矩陣Y,用戶u的k階相關(guān)實(shí)體集合定義為:
在波紋集之中,用戶對(duì)商品的潛在興趣偏好被用戶的歷史偏好激活,然后沿著知識(shí)圖譜中的鏈接從歷史記錄中的實(shí)體到鏈接中的其他實(shí)體進(jìn)行傳播。
其中,F(xiàn)代表推薦函數(shù),θ表示函數(shù)F中的模型參數(shù)。
RippleNet將每個(gè)候選商品嵌入表示為一個(gè)向量v。然后通過(guò)候選商品v,用戶u的歷史訪問(wèn)記錄vu和一階波紋集上的三元組(hi,ri,ti)計(jì)算一個(gè)相關(guān)性概率pi如下:
對(duì)于二階波紋集的潛在興趣偏好表示O2u,只需要用O1u替換候選商品v向量即可。對(duì)于更高階的波紋集興趣,重復(fù)上述迭代過(guò)程即可。將用戶u的向量表示定義為該用戶在各階波紋集上興趣偏好的累加值:
本文通過(guò)項(xiàng)目構(gòu)建100個(gè)用戶的17002條訪問(wèn)記錄作為推薦任務(wù)的實(shí)驗(yàn)數(shù)據(jù)集。為了避免冷啟動(dòng)的問(wèn)題,我們清洗掉用戶瀏覽商品的歷史記錄次數(shù)不足5次的商品。在實(shí)驗(yàn)過(guò)程中,將數(shù)據(jù)集按照7:1:2的比例劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集。
手機(jī)商品知識(shí)圖譜融合了來(lái)自中文維基百科、手機(jī)測(cè)評(píng)數(shù)據(jù)、手機(jī)新聞數(shù)據(jù)的產(chǎn)品信息如圖1所示。采用自上而下的構(gòu)建方法,即先搭建出手機(jī)知識(shí)圖譜的模式層,在模式層的約束下填充數(shù)據(jù)層,最終形成結(jié)構(gòu)化的手機(jī)知識(shí)圖譜。采用性能穩(wěn)定的Neo4j存儲(chǔ)圖譜數(shù)據(jù),Neo4j的核心是節(jié)點(diǎn)、關(guān)系和屬性,利用它存儲(chǔ)手機(jī)知識(shí)圖譜的本質(zhì)是將圖譜數(shù)據(jù)完整地轉(zhuǎn)換為節(jié)點(diǎn)、關(guān)系和屬性。
圖1 小米10Pro知識(shí)圖譜
本文采用準(zhǔn)確率(accuracy)評(píng)價(jià)該方法的性能表現(xiàn),得到如下實(shí)驗(yàn)對(duì)比結(jié)果如圖2所示。
圖2 模型的準(zhǔn)確率
本文面向傳統(tǒng)的電商場(chǎng)景,提出將知識(shí)圖譜與基于用戶偏好傳播的推薦系統(tǒng)進(jìn)行融合,實(shí)現(xiàn)了精準(zhǔn)推薦和良好的可解釋性。實(shí)驗(yàn)中,本文通過(guò)整合網(wǎng)絡(luò)資源并重構(gòu),構(gòu)建了一個(gè)手機(jī)商品知識(shí)圖譜,并在用戶-商品歷史訪問(wèn)記錄數(shù)據(jù)集上對(duì)各種推薦方法進(jìn)行了充分的實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)結(jié)果表明了RippleNet推薦算法能夠更好地對(duì)用戶進(jìn)行商品推薦,證明了基于知識(shí)圖譜的用戶偏好傳播框架在電商場(chǎng)景中有更好的解釋性和準(zhǔn)確性。該算法不僅可以用于商品的推薦,同樣適用于音樂(lè)視頻、電影、書籍等網(wǎng)站中的實(shí)體推薦。