周璐鑫 李曼 蔣明陽 張雷
摘 要:針對現(xiàn)有社交化推薦算法忽視了評級數(shù)據(jù)與社交信息之間關聯(lián)的探索,提出了一種融合交互強度的優(yōu)化社交推薦算法。首先,利用社交信息和評級數(shù)據(jù)結合兩種相似度豐富社交矩陣;接著,定義用戶間交互強度代表用戶間復雜關系;最后,利用交互強度與社交關系之間的關聯(lián)以及用戶潛在特征與用戶群體參與特征的關聯(lián)構建新的目標函數(shù),學習用戶和項目的潛在特征,實現(xiàn)個性化推薦。在三個真實數(shù)據(jù)集上進行實驗,與基線模型相比,提出算法在推薦預測精度上有顯著提升,且在對不同評級數(shù)量的用戶進行潛在特征學習時,表現(xiàn)出良好的魯棒性。綜上,融合交互強度可以進一步提升社交化推薦算法性能,增強用戶體驗感。
關鍵詞:社交化推薦; 交互強度; 群體參與矩陣; 矩陣分解
中圖分類號:TP301.6?? 文獻標志碼:A?? 文章編號:1001-3695(2024)01-010-0065-07
doi:10.19734/j.issn.1001-3695.2023.05.0280
Improving social recommendation algorithm via incorporating interaction strength
Abstract:Existing social recommendation algorithms ignore the investigation on the association between rating information and social information. To address this issue, this paper proposed a social recommendation algorithm which incorporated interaction strength. Firstly, it utilized social information and rating data to enrich the social matrix by combining two kinds of similarities. Secondly, it defined the interaction strength to represent complex relationship between users. Finally, it introduced a new objective function to learn features of users and items for personalized recommendation using two types of associations, namely the association between interaction strength and social relationships, and the association between features of users and participation features of group which users belonged to. Experimental results on three real-world datasets indicate that the proposed algorithm shows significant improvement in terms of recommendation prediction accuracy compared with existing baseline mo-dels. Furthermore, the proposed algorithm behaves good robustness in learning latent features for users with different number of ratings. Based on the above observations, it can infer that incorporating interaction strength is beneficial to enhancing social recommendation performance and improving users experience.
Key words:social recommendation; interaction strength; group participation matrix; matrix factorization
0 引言
隨著社交網(wǎng)絡的快速發(fā)展,人們面臨著信息的爆炸式增長。如今用戶在進行挑選和決策時極大地受益于有效的信息獲取方式,推薦算法憑借其出色的信息過濾和數(shù)據(jù)挖掘能力在短時間內有效地為用戶提供個性化推薦。
簡單推薦算法假設用戶獨立決策且不受他人決策的影響,然而在現(xiàn)實生活中,客戶在購買商品或服務時往往傾向于相信熟人。因此,與傳統(tǒng)推薦算法相比,融合社交信息的推薦算法能夠有效改善用戶冷啟動問題[1,2],并顯著提高推薦的準確性和可解釋性。在社交化推薦算法中,認為用戶僅考慮直接社交朋友影響的推薦為基于直接社交的推薦算法,然而除了直接社交外,社交信息還包括其他復雜的關系,例如,兩社交信息接近的用戶可能處于相同的群體內,在電影品味上可能相似[3,4]?,F(xiàn)有研究結果表明,考慮間接社交關系的推薦[5~9]效果往往優(yōu)于僅考慮直接社交關系的推薦效果。
近些年來,基于矩陣分解(matrix factorization,MF)的推薦方法[10]應用廣泛,通過對用戶項目評級矩陣進行分解得到潛在的用戶和項目特征,再將兩個特征矩陣相乘對不完全評級矩陣進行補全。大多數(shù)基于矩陣分解利用社交信息的推薦算法將推薦過程分為挖掘間接的社交關系以及基于矩陣分解學習用戶和項目的潛在特征兩個階段。盡管兩階段法極大地改善了推薦效果,但仍然存在一些問題。在挖掘間接社交關系時,現(xiàn)有算法通常僅考慮單一的用戶評級信息或社交信息,忽略了兩者對用戶間間接關系挖掘的不同貢獻。此外,大多數(shù)基于矩陣分解的推薦算法在用戶和項目潛在特征的學習上未能挖掘復雜的社交關系與用戶潛在特征之間的關聯(lián)。針對上述分析,本文在矩陣分解的基礎上提出一種融合交互強度的優(yōu)化社交推薦算法。主要工作如下:a)為綜合考慮用戶評級信息和社交信息對用戶間間接關系的影響,計算用戶間好友相似度和評級相似度,通過線性組合得到用戶的潛在好友,補充社交矩陣;b)為挖掘復雜社交關系與用戶潛在特征間的關聯(lián),本文定義用戶間交互強度來代表復雜社交關系,融合交互強度與用戶潛在特征之間的關聯(lián)提出一種新的目標函數(shù)以學習用戶和項目的潛在特征。在三個真實數(shù)據(jù)集上進行實驗,結果表明,本文算法可以有效提高推薦預測精度。
1 相關文獻
現(xiàn)階段利用社交信息改善推薦性能的方法有基于圖的推薦[11~13]、基于深度學習[14,15]的推薦和基于矩陣分解[6~8]的推薦。其中,矩陣分解由于具有簡單、推薦精度高和易擴展等優(yōu)點,成為研究者構建推薦系統(tǒng)的首選模型之一。社交化推薦算法按照社交信息的使用情況可分為基于直接社交關系的推薦算法和基于間接社交信息的推薦算法。
1.1 基于直接社交關系的推薦算法
基于直接社交關系的推薦算法僅考慮直接相連的用戶社交關系,認為有社交關系的用戶具有相似的偏好,利用其優(yōu)化推薦算法。社交化推薦算法有兩種實現(xiàn)形式:a)同時將評級矩陣和社會關系矩陣進行分解以學習用戶和項目潛在特征。最經典的是Ma等人[16]提出的將社交信息與評級信息共同分解的SoRec模型;隨后,有研究基于SoRec提出了改進模型,如TrustMF[17]和TrustSVD[18]。b)利用社交關系來調整用戶的潛在特征,代表模型有Jamali等人[19]提出的SocialMF,它在STE [20]的基礎上將信任傳播機制引入矩陣分解模型;此外,Ma等人[21]將用戶的信任關系作為正則化約束條件,提出了基于社交信息正則化的矩陣分解框架SR2。然而在大多數(shù)推薦系統(tǒng)中,明確的社交信息并不總是可靠的,這限制了社交化推薦算法的發(fā)展。
1.2 基于間接社交關系的推薦算法
盡管直接社交關系在一定程度上改善了推薦系統(tǒng),但面對缺少社交關系的用戶,其缺乏解決用戶冷啟動問題的能力;同時除了社交好友間的影響外,社交信息還包括其他的復雜關系。為了更充分地利用社交關系,有研究嘗試考慮相似用戶、用戶群體等概念來提取間接社交關系,提高推薦性能。
Ma[6]提出了內隱社交推薦的實驗研究,利用隱式社交信息改進推薦算法,這項研究對社交化推薦技術提供了額外見解,也擴大和傳播了社交化推薦算法的效用。Zhao等人[22]提出的SBPR模型根據(jù)社會關系將項目分為三類,并定義它們之間的評級關系來學習特征。Yu等人[23]按照相似度對所有用戶的潛在朋友進行探索,根據(jù)異構圖上給定的相似度關系將項目分為五類學習評級函數(shù)。Reafee等人[7]提出的EISR模型通過社交關系鏈接預測得到內隱社會關系,同時考慮顯性和隱性社交關系建立了概率矩陣分解模型,然而在這一方法中,鏈接預測的閾值選取是一個難題。不同于EISR模型,Li等人[8]提出的ReTrustMF利用社會學六度理論拓寬社交關系鏈,尋找隱性社交朋友,避免了閾值設置不合理帶來的問題。此外,還有一些方法從其他角度利用社交信息進行推薦。Tang等人[24]從社交網(wǎng)絡中提取異質社會關系和弱依賴關系對評級矩陣分解過程中的潛在用戶特征進行調整。Chen等人[25]將社交知識影響和社交消費影響整合到了矩陣分解模型中。Ahmadian等人[26]提出的RTARS算法基于用戶間信任關系和評級信息建立了用戶聲譽模型來尋找用戶近鄰。Liu等人[27]提出的InSRMF算法使用社區(qū)成員資格來間接表示用戶間的社交關系,并將評級矩陣和社交矩陣同時進行矩陣分解,學習用戶和項目的潛在特征。Al-Sabaawi等人[28]采用多步資源分配的方式識別社交中的隱藏關系,豐富用戶社交信息達到提升推薦的效果。Duan等人[29]提出ETBRec模型,通過用戶活躍程度與被信任程度選擇專家用戶,挖掘社交好友和專家用戶對用戶的影響構建新的目標函數(shù),學習用戶和項目的潛在特征。Weng等人[30]提出的SRGRA模型,基于灰色關聯(lián)分析計算用戶間的相似度,建立包括內隱社交關系的矩陣分解模型。Ahmadian等人[9]提出的SORIR算法將隱式關系整合到推薦算法中,為顯式關系不足的用戶提供更加準確的推薦。
需要指出的是,當前的社交化推薦算法在不同程度上提高了推薦效果,但仍存在一些問題,如挖掘用戶間接關系時使用的信息單一、忽略用戶間社交關系的復雜性、未能挖掘用戶間復雜關系與用戶間潛在特征的關聯(lián)等。本文算法通過對用戶好友相似度和評級相似度進行線性組合,可以避免信息使用單一的問題;進一步,定義交互強度代表復雜的社交關系,同時構建一種基于矩陣分解融合交互強度的目標函數(shù),可以挖掘復雜的社交關系與用戶潛在特征之間的關聯(lián),學習用戶和項目的潛在特征,實現(xiàn)個性化推薦。
2 融合交互強度的優(yōu)化社交推薦算法
給定用戶-項目的評級矩陣和用戶間的社交矩陣,實現(xiàn)用戶對未知項目的評級預測。為充分挖掘給定的評級信息和社交信息,構建恰當?shù)哪繕撕瘮?shù)學習用戶和項目的潛在特征,實現(xiàn)用戶對項目評級的預測,本文提出一種融合交互強度的社交化推薦(social recommendation combined with interaction strength,ISSR)算法,算法具體框架如圖1所示。具體而言,ISSR算法首先利用社交矩陣S和用戶-項目評級矩陣R分別計算用戶間好友相似度和用戶間評級相似度,通過好友相似度對用戶的潛在好友進行初篩,通過評級相似度進行潛在好友再篩,利用top-K原則對社交矩陣進行補充;其次對補充后的社交矩陣S′進行矩陣分解,利用得到的用戶群體參與特征M求得用戶間的交互強度,用以代表用戶間復雜的社交關系;最后挖掘交互強度與社交關系之間的聯(lián)系,通過共享社交矩陣和評級矩陣中的用戶潛在信息構建新的融合交互強度的社交化推薦算法,學習用戶和項目潛在特征,提升推薦預測精度。
2.1 社交矩陣補充
2.1.1 用戶的好友相似度
合理利用用戶社交關系可以幫助獲取更好的推薦,但是僅靠同樣稀疏的社交網(wǎng)絡關系難以挖掘用戶受到其他用戶的真實影響[6]。由于與用戶好友重合度高的人極有可能是用戶現(xiàn)實生活中相互熟悉但在社交網(wǎng)絡中卻沒有聯(lián)系的人,用戶的興趣品味極有可能受到其影響,根據(jù)好友相似度高的用戶間存在潛在關聯(lián)原則,尋找初步的用戶間潛在社交關系。
為挖掘用戶間的初步潛在社交關聯(lián),本文通過計算用戶間的好友相似度得到在現(xiàn)實中極有可能發(fā)生交互的潛在好友。如圖2所示,用戶集{3,6}是用戶i和k的共同好友集,兩者有可能通過共同好友的鏈接成為朋友。
然而由于用戶不盡相同的好友數(shù)量,兩用戶相互的好友相似度并不一定相等。若用戶i的好友數(shù)量為10,用戶k的好友數(shù)量為50,那么向用戶i推薦用戶k為好友的推薦程度會高于向用戶k推薦用戶i。本文考慮用戶的好友數(shù)量,將用戶k對用戶i的好友相似度定義為w(i,k),計算方式如式(1)所示。
其中:out(i)為用戶i的好友集,選取用戶i好友相似度大于閾值ε的用戶作為其初步潛在好友。其中ε的數(shù)值由實驗得到。
2.1.2 用戶的評級相似度
雖然好友相似度高的兩個用戶有可能在現(xiàn)實中交流從而相互影響,但是這個事件對于不愿結識新朋友的用戶并非一定發(fā)生,即好友相似度高的用戶間有機會但并非一定會相互影響。為此,本文通過用戶間的評級相似度來佐證采用好友相似度得到的初步潛在社交關聯(lián)是否成立。當兩個用戶的好友相似度高,同時評級相似度也高,那么認為兩者在現(xiàn)實生活中認識并且彼此之間能夠互相影響。
常用的相似度有杰卡德相似度、余弦相似度、皮爾森相似度[31]。其中,杰卡德相似度只使用了評級數(shù)量信息,忽略了對評級數(shù)值的使用;余弦和皮爾森相似度僅考慮了公共評級,沒有充分使用評級數(shù)據(jù)。因此,本文采用一種通過評級概率分布利用全局評級的海靈格距離(Hellinger distance,HD)來得到用戶之間的相似度。在統(tǒng)計學中,海靈格距離被用來衡量兩個概率分布之間的相似度,它可以充分利用用戶的所有評級信息。式(2)~(4)是根據(jù)海靈格距離得到的海靈格相似度shd(i,k)[32]的計算公式。
其中:|ir|是用戶i評級r的項目數(shù);|i|是用戶i的評級數(shù)。
用戶間共同評級的電影越多,用戶間的相似度也會越高;然而僅考慮共同電影是不夠的,若用戶i看過5部電影,用戶k看過50部電影,那么盡管兩者共同電影數(shù)相同,但是對彼此的影響是不同的。因此,引入式(5)計算差異因子diff(i,k)。
其中:R(i)是用戶i評級的項目集。
本文將海靈格相似度和差異因子進行線性組合,得到用戶i和k間的評級相似度Su(i,k)計算公式為
Su(i,k)=θshd(i,k)+(1-θ)diff(i,k)(6)
其中:權重θ∈(0,1),數(shù)值在實驗中確定。每個用戶按top-K原則,通過好友相似度初篩評級相似度佐證的方式,選取評級相似度高的前K個用戶補充社交矩陣S,得到用戶社交矩陣S′,緩解社交矩陣的稀疏性。
2.2 融合交互強度的推薦算法模型
本文的社交推薦算法試圖通過對評級矩陣和社交矩陣聯(lián)合分解的方式來捕獲用戶間復雜的社交關系和用戶對項目的偏好。其中用戶集是用戶項目評級矩陣與用戶社交矩陣的公共對象集,因此本文在進行矩陣分解時參考SoRec的分解方式[16]來學習用戶和項目的潛在特征。
2.2.1 交互強度的定義
補充后的用戶社交矩陣S′較原社交關系矩陣更加豐富可靠。在這種情況下,社交矩陣是一個靜態(tài)的“0-1”矩陣,即任何一對用戶之間的社會關系只有S′ik=1或0兩種情況,而用戶間復雜的社交關系是難以通過有無代表的,因此本文定義用戶間交互強度來間接表示用戶間復雜的社交關系。
研究表明對用戶所處的群體信息進行挖掘可獲取更好的推薦[4,33]。處在同一社會群體中的兩個用戶往往更容易產生交互,兩者更有可能存在相似的偏好。因此,本文通過用戶間的交互強度來間接獲得用戶間復雜的社交關系,讓算法體現(xiàn)用戶行為對社交關系的影響。一對用戶共同存在的群體數(shù)越多,兩者間產生社交互動的可能性就越強。假設G={G1,G2,…,Gh}表示具有h個群體的群體集,在第f個群體里的第i個用戶由Mfi來表示,則每個用戶都可以用一個群體參與向量Mi=[M1i,M2i,…,Mhi]來表示。
在現(xiàn)實世界中,由于用戶愛好和參與社團積極度不同,用戶參與群體的情況各不相同。用數(shù)值“0”和“1”來表達用戶i在群體f中的參與情況顯然是不合適的。一個用戶可能同時處在多個群體中,受用戶偏好和精力的影響,會導致用戶在群體中的參與度降低,其他成員與該用戶的交互強度將會減弱,兩者間的相互影響也會降低。由此可見,當兩個用戶同處一個群體中時,決定兩者關聯(lián)的一個主要因素就是兩者之間的交互強度,因此定義Mfik=MfiMfk表示用戶i和k在群體f中的交互強度。
為了得到交互強度值,本文引入一個非負整數(shù)變量Xfik來表示用戶i和k同時參加群體f的活動次數(shù)[25],則用戶i和k在h個群體中的共同活動次數(shù)向量為Xik=[X1ik,X2ik,…,Xhik]。假設用戶對于出席的群體活動都積極參與,那么用戶間的交流就不可避免,因此共同參與活動次數(shù)可以表征用戶間交互強度值。本文采用參數(shù)為Mfik的泊松分布來生成用戶i和k在群體f中的整數(shù)交互強度值Xfik,定義為
Xfik~Pois(Mfik)=Pois(MfiMfk)(7)
由此可得用戶間整數(shù)交互強度Xik與社會關系S′ik之間的關系:當S′ik=1時,用戶間的交互強度值Xik較大,參數(shù)MTiMk較大;當S′ik=0時,用戶間的交互強度值Xik較小,參數(shù)MTiMk較小??紤]式(6)得到的用戶間評級相似度,利用參數(shù)Mfi代表用戶間交互強度Xfik,構造交互強度與社交關系的關系為
考慮到在S′ik=1時,可能會發(fā)生MTiMk過大,導致推薦算法更注重用戶社交信息,而忽略了用戶項目評級信息,使得學習用戶和項目特征時產生偏差。為此,式(8)的S′ik=1部分進行歸一化處理,得到式(9)。
2.2.2 融合交互強度的模型建立
矩陣分解模型[10]假設用戶對項目的評級只取決于用戶和項目之間的交互UTiVj,然而受用戶或項目個體的影響,不同用戶、不同項目評級之間存在很大的差異。因此,在ISSR模型中考慮平均評級和用戶/項目偏差,采用文獻[34]中的評級預測計算方式為
考慮到用戶潛在特征是受社交關系的影響從評級數(shù)據(jù)中提取得到,本文假設用戶i潛在特征Ui接近他的群體參與特征Mi;進一步,為了建立用戶偏好與用戶間交互強度的關系,設置用戶潛在特征數(shù)等于用戶群體數(shù)。此外,參考TrustSVD[18]提及評價較少的項目在很大程度上會產生過擬合,為了緩解這一問題,本文通過評級數(shù)的倒數(shù)來增大對評級數(shù)目較少用戶的懲罰。同理,社交關系較少的用戶也將受到懲罰,建立用戶潛在特征和用戶群體參與特征近似關系為
其中:|R(i)|和|S′(i)|分別是用戶i評級的數(shù)量和用戶i社交關系的鏈數(shù)。
為了將交互強度與社交關系的關聯(lián)融入ISSR算法,將式(9)的S′ik=1部分控制在(0,1),得到式(13)。
融合交互強度的社交化推薦算法旨在學習用戶和項目特征,借助稀疏社交信息補全不完全評級矩陣。本文算法使用補充后的社交關系矩陣,利用交互強度與社會關系之間的關聯(lián)和用戶潛在特征與用戶群體參與特征的關聯(lián)建立新目標函數(shù)為
其中:Iij是用戶i對j的示性值,當用戶i對項目j評級,Iij=1,否則為0;|R(j)|是項目j受到評級的數(shù)量;α、β、λ1、λ2、λ3分別為正則化系數(shù),具體數(shù)值由實驗得到。
本文采用梯度下降法對損失函數(shù)進行求解。變量Ui、Vj、Mi、bui、bvj的一階求導公式如式(15)~(22)所示。
2.3 算法偽代碼
ISSR算法使用梯度下降法求解的偽代碼如下:
輸入:評級矩陣R;社交矩陣S;好友相似度閾值ε;社交關系數(shù)量K;評級相似度系數(shù)θ;潛在特征維數(shù)k;正則化系數(shù)α、β、λ1、λ2、λ3;學習率γ和最大迭代次數(shù)t_max。
輸出:用戶潛在特征矩陣U;項目潛在特征矩陣V;用戶群體參與特征矩陣M;用戶和項目的偏置bu和bv;預測評級矩陣R^。
初始化:初始化用戶潛在特征矩陣U,項目潛在特征矩陣V和用戶群體參與矩陣M。
利用式(1)計算用戶間好友相似度w(i,k),取好友相似度w(i,k)大于ε的用戶作為篩選條件得到初步潛在好友。
利用式(6)計算潛在好友間的用戶評級相似度Su,取前K個相似用戶補充社交矩陣S,得到補充后社交矩陣S′。
while 停止條件不滿足(函數(shù)值L下降相對小或step for each (i,j)∈Rij 根據(jù)式(15)~(22)更新目標函數(shù)式(14)的變量: Mi=Mi+γL/Mi; Ui=Ui+γL/Ui; Vj=Vj+γL/Vj; bui=bui+γL/bui; bvj=bvj+γL/bvj; end for step=step+1 end while 利用式(10)預測評級矩陣中的未知評級。 返回U,V,M,bu,bv,R^。 算法的主要計算時間為評估目標函數(shù)值L和更新Ui、Vj、Mi、bui、bvj。由于矩陣R和S的稀疏性,目標函數(shù)L的計算復雜度為O(|R|+|m|+|S|+|n|),其中|R|和|S|分別為矩陣R和S中的非零項個數(shù)。Ui、Vj、Mi、bui和bvj的狀態(tài)更新計算復雜度分別為O(|R|)、O(|R|)、O(|S|)、O(|R|)和O(|R|)。一共迭代c次后滿足停止條件,算法整體計算復雜度為O(c(|R|+|S|+|m|+|n|))。由于算法的計算時間與評級和社交關系的數(shù)量之間是線性的,所以可以應用于大規(guī)模數(shù)據(jù)集。 3 實驗結果與分析 3.1 數(shù)據(jù)集 為驗證融合交互強度的社交化推薦算法的有效性,本文選取Ciao、LastFM和Epinions數(shù)據(jù)集進行實驗。這三個數(shù)據(jù)集包含用戶間社交關系和用戶項目評級信息,詳細信息如表1所示。 對于每個數(shù)據(jù)集,本文將采用五折交叉驗證的方法進行訓練和測試,并將平均測試性能記錄為最終實驗結果。 3.2 評價指標 為了驗證算法的有效性,本文選用兩個具有代表性的精度指標來評價預測效果,即平均絕對誤差(MAE)和均方根誤差(RMSE),計算方式如下: 其中:Rtest表示測試數(shù)據(jù)集合。MAE和RMSE值越小,表明推薦算法預測精度越高。 3.3 對比算法 對比實驗選取的算法如下: a)SoRec[16]。在共享用戶特征向量的前提下,使用概率矩陣分解模型同時分解評級矩陣和信任矩陣。 b)SoReg[21]。認為用戶與其信任人具有相似的特征向量,將用戶間相似度融入矩陣分解推薦算法。 c)TrustSVD[18]。在SVD++的基礎上,增加了用戶間顯式信任對評級預測的影響。 d)I-TCRec[35]。遵循同一受托人的委托人有相似品味的特點,提出一種新的潛在特征學習算法。 e)RTARS[26]。根據(jù)用戶間信任關系和評級信息建立了用戶聲譽模型來求解用戶近鄰,預測用戶評級。 f)InSRMF[27]。認為社區(qū)活動對用戶有影響,在矩陣分解模型上提出一種基于間接社交關系的推薦算法。 g)ETBRec[29]。通過用戶活躍度和被信任度選擇專家用戶,將好友與專家用戶影響融合學習用戶特征。 3.4 實驗結果與分析 3.4.1 推薦結果比較 通過實驗對各數(shù)據(jù)集參數(shù)設置如表2所示。 表3展示了本文ISSR算法與其他對比算法在三個數(shù)據(jù)集上的實驗結果。通過對比實驗結果可得到以下結論: a)ISSR算法的推薦效果優(yōu)于使用直接社交關系的SoRec、SoReg、TrustSVD和I-TCRec,這是由于ISSR挖掘了用戶間的間接社交關系,提供了更加可靠的用戶間社交關系來提升推薦效果。需要強調的是ISSR雖然未對數(shù)據(jù)進行降噪處理,但其效果優(yōu)于對社交信息進行降噪的社交推薦算法I-TCRec。 b)雖然SoRec、InSRMF、ETBRec和ISSR算法在矩陣分解時采用相似的方式,但是ISSR的推薦效果優(yōu)于其他三個算法。其原因是ISSR中創(chuàng)建的目標函數(shù)更有利于用戶和項目潛在特征的學習,從而提高了推薦效果。具體而言,ISSR的推薦效果優(yōu)于使用間接社交關系的InSRMF,其原因是ISSR通過用戶項目評級數(shù)據(jù)和用戶社交關系數(shù)據(jù)補充了社交矩陣,挖掘了更多的潛在社交關系,有助于用戶和項目潛在特征的學習。 c)相比于所選取的對比算法,本文ISSR算法在推薦預測精度上顯著提升。相較于對比算法中的最優(yōu)結果,ISSR算法在Ciao、LastFM和Epinions上MAE降低了2.61%、4.27%和3.12%,RMSE降低了2.31%、2.60%和2.22%。一是因為ISSR算法在兩階段都充分利用評級信息和社交信息,二是本文構建的目標函數(shù)能夠有效提升推薦效果。 3.4.2 不同評級數(shù)量實驗結果比較 部分評級過少的用戶存在冷啟動問題。為驗證各算法在不同用戶評級數(shù)量下的魯棒性,本文將訓練集中的用戶依據(jù)評級數(shù)量進行劃分,表4展示了數(shù)據(jù)集Ciao在每組評級數(shù)量下的用戶占比,可以看到用戶評級數(shù)少于5、大于100的用戶占比較少,評級數(shù)量在6~10、11~20、21~40的用戶占總用戶的20%以上。 依據(jù)用戶的評級數(shù)量對訓練集中的用戶進行劃分后,分析7組用戶在數(shù)據(jù)集上的推薦精度表現(xiàn),Ciao在不同評級數(shù)量的結果如圖3所示。發(fā)現(xiàn)當用戶評級數(shù)小于5,各個算法推薦結果顯著劣于用戶評級數(shù)大于5的情況,并且用戶評級數(shù)大于5的不同分組推薦精度差別不大。因此進一步對用戶評級數(shù)量進行劃分,劃分成三組,即0~5組、6~40組和over 40組。 剩余數(shù)據(jù)集的不同評級結果如表5所示。結合圖3,對比本文ISSR算法與對比算法在不同數(shù)量評級下的結果可以得到以下結論: a)當用戶評級數(shù)量極少時,ISSR算法與對比算法的推薦精度都較低,隨著評級數(shù)量增加,各算法推薦效果均有顯著提升。這一現(xiàn)象產生的原因是:評級數(shù)據(jù)過于稀疏,算法可利用信息過少導致算法缺乏可信度,難以學習合理的潛在特征。 b)ISSR算法的推薦精度在不同的用戶評級數(shù)量下始終高于其余算法。這是由于ISSR算法在推薦算法的兩階段都致力于挖掘更多的社交信息,從而得到更豐富可靠的社交關系,提升了解決冷啟動問題的能力,提高了推薦精度,表明ISSR算法對不同評級數(shù)量的用戶具有較好的魯棒性。 3.4.3 復雜性比較 本節(jié)評估了ISSR算法的時間復雜度,通過算法運行時間驗證ISSR的運行效率。實驗運行平臺如下:CPU為AMD Ryzen 7 5800H with Radeon Graphics 3.20 GHz,CPU核心數(shù)量為8、線程數(shù)量為16,內存為16 GB,操作系統(tǒng)為Windows 11。 表6列出不同社交推薦算法在各數(shù)據(jù)集的運行時間。由表6可知,ISSR算法在三個不同規(guī)模的數(shù)據(jù)集上的運行時間明顯優(yōu)于I-TCRec和ETCRec算法。具體而言,相較于I-TCRec算法,在LastFM、Ciao和Epinions數(shù)據(jù)集的運行時間分別縮短了約22倍、18倍和230倍;相較于ETCRec算法,在LastFM、Ciao和Epinions數(shù)據(jù)集的運行時間分別縮短了約3倍、53倍和67倍。 值得一提的是,隨著數(shù)據(jù)集規(guī)模的擴大,ISSR與InSRMF算法在運行時間上相差不大。但是根據(jù)表3的實驗結果,ISSR的推薦精度明顯優(yōu)于InSRMF的推薦精度。這一現(xiàn)象是因為ISSR與InSRMF的計算時間與評級和社交關系的數(shù)量之間是線性的,因此運行時間明顯少于時間復雜度非線性的I-TCRec和ETCRec,擴大到大規(guī)模數(shù)據(jù)集上,運行時間增長速度也明顯更緩慢。 3.5 參數(shù)敏感度分析 為了分析本文算法參數(shù)對預測精度的敏感度,本文以數(shù)據(jù)集Ciao為例進行展示,其余數(shù)據(jù)集參數(shù)如表2時推薦效果最優(yōu)。 a)ε、K和θ。ε、K和θ控制著社交矩陣對ISSR算法的影響。圖4表明,隨著ε、K和θ的不斷增加,推薦算法預測精度均表現(xiàn)為先提升后下降。(a)用戶好友相似度的確可以挖掘潛在社交關系,但ε取值過小或過大都會導致其篩選初步好友的功能減弱;(b)合適的用戶潛在社交數(shù)量可以豐富社交信息,K取值過小或過大會導致改進社交信息效果不佳,甚至干擾用戶特征向量的學習;(c)用戶的海靈格相似度和差異因子需以一定比例結合才能提升推薦效果,否則會產生用戶評級相似度受全局噪聲影響或者過于依賴共同評級而導致推薦效果下降。通過實驗,參數(shù)設置如下:ε=0.1,K=15,θ=0.3。 b)α和β。ISSR算法中α控制著用戶潛在特征與用戶交互強度之間的近似程度,β控制著用戶社交信息對特征學習的貢獻。圖5表明,隨著α和β的不斷增加,推薦算法預測精度先提升后下降。(a)用戶潛在特征和用戶群體參與特征都是用戶行為存在近似關系,但當U和M過于近似時,它們將失去各自的特性,從而降低推薦效果;(b)社交信息對預測未知評級是有用的,但當β過大時,推薦算法過度重視社交信息而忽視評級信息,從而導致推薦效果不增反減。通過實驗,參數(shù)設置如下:α≈10,β≈0.01。 3.6 實例分析 將算法ISSR應用到實際數(shù)據(jù)集Ciao進行案例分析,以直觀地分析模型的有效性。具體而言,ISSR算法的應用主要是通過收集的用戶數(shù)據(jù)(即用戶的電影評級數(shù)據(jù)和用戶的社交數(shù)據(jù))預測其對電影的評分,并向其提供未觀看過的預測評級較高的電影列表作為推薦。首先在Ciao的測試集中隨機抽取5個用戶,ID分別為[8,14,161,1260,2073],為他們提供電影推薦;然后選用評價指標MAE和RMSE最優(yōu)情況下的參數(shù),得到上述5個用戶對各電影的預測評級,對預測評級進行排序,生成這5個用戶的top-20電影列表,得到的結果如表7所示,其中加黑的項目id為用戶的實際選擇。由表7可知,用戶8、14和2073的推薦列表有兩部電影擊中,用戶161的推薦列表有13部電影擊中,用戶1260的推薦列表有8部電影擊中,5個用戶的推薦列表平均準確率為0.27。由此可得,本文ISSR算法有較好的預測效果,可以為用戶提供個性化推薦,具有應用性。 4 結束語 本文提出了一種融合交互強度的社交化推薦算法(ISSR)。首先,利用好友相似度融合用戶評級相似度來補充用戶社交矩陣,得到更加豐富可靠的社交關系;其次,定義服從泊松分布的用戶間交互強度來代表用戶間的復雜關系;然后,通過共享評級矩陣和社交矩陣構建符合交互強度與社交關系關聯(lián),用戶特征與用戶群體參與特征關聯(lián)的目標函數(shù),學習用戶和項目潛在特征;最后,通過實驗驗證了提出算法的有效性和魯棒性。在未來的工作中,將進一步考慮項目潛在特征挖掘與數(shù)據(jù)去噪,進一步提升推薦效果。 參考文獻: [1]Zhang Yijia, Shi Zhenkun, Zuo Wanli, et al. Joint personalized Markov chains with social network embedding for cold-start recommendation[J].Neurocomputing,2020,386(4):208-220. [2]Liu Zhiwei, Fan Ziwei, Wang Yu, et al. Augmenting sequential re-commendation with pseudo-prior items via reversely pre-training transformer[C]//Proc of the 44th International ACM SIGIR Conference on Research and Development in Information Retrieval.New York:ACM Press,2021:1608-1612. [3]Tang Lei, Liu Huan. Relational learning via latent social dimensions[C]//Proc of the 15th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.New York:ACM Press,2009:817-826. [4]宗傳玉,李箬竹,夏秀峰.基于位置社交網(wǎng)絡的用戶社區(qū)和屬性位置簇搜索[J].計算機應用研究,2023,40(9):2657-2662.(Zong Chuanyu, Li Ruozhu, Xia Xiufeng. User community and attribute location cluster search in location-based social networks[J].Application Research of Computers,2023,40(9):2657-2662.) [5]Ma Hao, King I, Lyu M R. Learning to recommend with explicit and implicit social relations[J].ACM Trans on Intelligent Systems and Technology,2011,2(3):article No.29. [6]Ma Hao. An experimental study on implicit social recommendation[C]//Proc of the 36th International ACM SIGIR Conference on Research and Development in Information Retrieval.New York:ACM Press,2013:73-82. [7]Reafee W, Salim N, Khan A. The power of implicit social relation in rating prediction of social recommender systems[J].PLoS ONE,2016,11(5):e0154848. [8]Li Weimin, Zhou Xiaokang, Shimizu S, et al. Personalization recommendation algorithm based on trust correlation degree and matrix factorization[J].IEEE Access,2019,7:45451-45459. [9]Ahmadian S, Joorabloo N, Jalili M, et al. A social recommender system based on reliable implicit relationships[J].Knowledge-Based Systems,2020,192(3):105371. [10]Koren Y, Bell R, Volinsky C. Matrix factorization techniques for re-commender systems[J].Computer,2009,42(8):30-37. [11]Kong Yixiu, Hu Yizhong, Zhang Xinyu, et al. Structural centrality of networks can improve the diffusion-based recommendation algorithm[J/OL].Frontiers in Physics,2022,10.http://doi.org/10.3389/fphy.2022.1018781. [12]余文婷,吳云,林建.融合多模態(tài)自監(jiān)督圖學習的視頻推薦模型[J].計算機應用研究,2023,40(6):1679-1685.(Yu Wenting, Wu Yun, Lin Jian. Self-supervised graph learning of fusing multi-modal for video recommendation model[J].Application Research of Computers,2023,40(6):1679-1685.) [13]Zhang Mengqi, Wu Shu, Gao Meng, et al. Personalized graph neural networks with attention mechanism for session-aware recommendation[J].IEEE Trans on Knowledge and Data Engineering,2022,34(8):3946-3957. [14]Liu Huiting, Guo Lingling, Li Peipei, et al. Collaborative filtering with a deep adversarial and attention network for cross-domain recommendation[J].Information Sciences,2021,565(7):370-389. [15]Pan Yiteng, He Fazhi, Yu Haiping. A correlative denoising autoencoder to model social influence for top-N recommender system[J].Frontiers of Computer Science,2020,14(3):article No.143301. [16]Ma Hao, Yang Haixuan, Lyu M R, et al. SoRec: social recommendation using probabilistic matrix factorization[C]//Proc of the 17th ACM Conference on Information and Knowledge Management.New York:ACM Press,2008:931-940. [17]Yang Bo, Lei Yu, Liu Jiming, et al. Social collaborative filtering by trust[J].IEEE Trans on Pattern Analysis and Machine Intelligence,2017,39(8):1633-1647. [18]Guo Guibing, Zhang Jie, Yorke-Smith N. TrustSVD: collaborative filtering with both the explicit and implicit influence of user trust and of item ratings[C]//Proc of the 29th AAAI Conference on Artificial Intelligence.Palo Alto,CA:AAAI Press,2015:123-129. [19]Jamali M, Ester M. A matrix factorization technique with trust propagation for recommendation in social networks[C]//Proc of the 4th ACM Conference on Recommender Systems.New York:ACM Press,2010:135-142. [20]Ma Hao, King I, Lyu M R. Learning to recommend with social trust ensemble[C]//Proc of the 32nd International ACM SIGIR Confe-rence on Research and Development in Information Retrieval.New York:ACM Press,2009:203-210. [21]Ma Hao, Zhou Dengyong, Liu Chao, et al. Recommender systems with social regularization[C]//Proc of the 4th ACM International Conference on Web Search and Data Mining.New York:ACM Press,2011:287-296. [22]Zhao Tong, Mcauley J, King I. Leveraging social connections to improve personalized ranking for collaborative filtering[C]//Proc of the 23rd ACM International Conference on Information and Knowledge Management.New York:ACM Press,2014:261-270. [23]Yu Junliang, Gao Min, Li Jundong, et al. Adaptive implicit friends identification over heterogeneous network for social recommendation[C]//Proc of the 27th ACM International Conference on Information and Knowledge Management.New York:ACM Press,2018:357-366. [24]Tang Jiliang, Wang Suhang, Hu Xia, et al. Recommendation with social dimensions[C]//Proc of the 30th AAAI Conference on Artificial Intelligence.Palo Alto,CA:AAAI Press,2016:251-257. [25]Chen Jiawei, Feng Yan, Ester M, et al. Modeling users exposure with social knowledge influence and consumption influence for recommendation[C]//Proc of the 27th ACM International Conference on Information and Knowledge Management.New York:ACM Press,2018:953-962. [26]Ahmadian S, Afsharchi M, Meghdadi M. An effective social recommendation method based on user reputation model and rating profile enhancement[J].Journal of Information Science,2019,45(5):607-642. [27]Liu Huafeng, Jing Liping, Yu Jian, et al. Social recommendation with learning personal and social latent factors[J].IEEE Trans on Knowledge and Data Engineering,2019,33(7):2956-2970. [28]Al-Sabaawi A M A, Karacan H, Yenice Y E. Exploiting implicit social relationships via dimension reduction to improve recommendation system performance[J].PLoS ONE,2020,15(4):e0231457. [29]Duan Zhenchun, Xu Weihong, Chen Yuantao, et al. ETBRec: a novel recommendation algorithm combining the double influence of trust relationship and expert users[J].Applied Intelligence,2022,52(1):282-294. [30]Weng Lijuan, Zhang Qishan, Lin Zhibin, et al. Harnessing heterogeneous social networks for better recommendations:a grey relational analysis approach[J].Expert Systems with Applications,2021,174(7):114771. [31]Amer A A, Abdalla H I, Nguyen L. Enhancing recommendation systems performance using highly-effective similarity measures[J].Knowledge-Based Systems,2021,217(4):106842. [32]Guo Junpeng, Deng Jiangzhou, Ran Xun, et al. An efficient and accurate recommendation strategy using degree classification criteria for item-based collaborative filtering[J].Expert Systems with Applications,2021,164(2):113756. [33]Kim J, Guo Tao, Feng Kaiyu, et al. Densely connected user community and location cluster search in location-based social networks[C]//Proc of the 29th ACM SIGMOD International Conference on Management of Data.New York:ACM Press,2020:2199-2209. [34]Koren Y. Factorization meets the neighborhood: a multifaceted collaborative filtering model[C]//Proc of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.New York:ACM Press,2008:426-434. [35]Lee J, Noh G, Oh H, et al. Trustor clustering with an improved recommender system based on social relationships[J].Information Systems,2018,77(9):118-128.