摘要:隨著信息爆炸,個(gè)性化推薦技術(shù)成為提高信息檢索效率和用戶體驗(yàn)的關(guān)鍵。文章針對(duì)傳統(tǒng)協(xié)同過(guò)濾推薦方法僅依賴用戶靜態(tài)評(píng)分導(dǎo)致推薦質(zhì)量低的問(wèn)題,提出基于用戶評(píng)分多元關(guān)系分析的個(gè)性化推薦方法。該方法綜合分析用戶評(píng)分一致性、信任關(guān)系及用戶行為,引入時(shí)間因素反映用戶興趣變化,建立用戶間多元關(guān)系模型。實(shí)驗(yàn)結(jié)果表明,相較于其他推薦方法,文章方法在實(shí)際應(yīng)用中能提供更精確的推薦服務(wù),有效滿足用戶信息需求,實(shí)現(xiàn)了推薦質(zhì)量的顯著提升。
關(guān)鍵詞:個(gè)性化推薦;用戶評(píng)分;用戶多元關(guān)系;用戶行為量化
中圖分類號(hào):G202中圖分類號(hào)文獻(xiàn)標(biāo)志碼:A
0 引言
隨著信息技術(shù)和移動(dòng)互聯(lián)網(wǎng)的高速發(fā)展,互聯(lián)網(wǎng)中的信息流以指數(shù)級(jí)別的速度激增,提供了豐富的信息資源。但這無(wú)形地增加了用戶準(zhǔn)確獲取自身所需信息的難度,即如何從海量的信息中準(zhǔn)確地找到用戶真正需要的信息。傳統(tǒng)的信息篩選機(jī)制已經(jīng)無(wú)法滿足用戶的個(gè)性化信息需求。在此背景下,個(gè)性化推薦技術(shù)應(yīng)運(yùn)而生,該方法主要通過(guò)分析用戶的行為、偏好,比較用戶間的相似度,給出個(gè)性化的信息推薦。這種技術(shù)不僅提高了信息檢索的效率,也極大地增強(qiáng)了用戶的使用體驗(yàn)。它已經(jīng)在電子商務(wù)、社交網(wǎng)絡(luò)、新聞推送、音樂(lè)電影推薦等領(lǐng)域得到了廣泛應(yīng)用。
目前,很多信息服務(wù)平臺(tái)提供了用戶評(píng)分功能,用于顯式體現(xiàn)用戶對(duì)于信息資源的偏好程度。協(xié)同過(guò)濾算法是應(yīng)用最為廣泛的推薦算法之一,具有簡(jiǎn)單、有效等優(yōu)勢(shì)[1]。然而,該方法僅僅依賴用戶對(duì)項(xiàng)目的評(píng)分?jǐn)?shù)據(jù)進(jìn)行計(jì)算,未充分考慮其他關(guān)鍵因素。例如,用戶之間的信任關(guān)系,這可能導(dǎo)致推薦質(zhì)量不夠理想。針對(duì)這一問(wèn)題,本文以用戶對(duì)項(xiàng)目的評(píng)分為基礎(chǔ),分析用戶間的評(píng)分一致性與信任關(guān)系,結(jié)合用戶行為進(jìn)行綜合分析,構(gòu)建用戶間的多元關(guān)系模型。通過(guò)此模型,為目標(biāo)用戶找到更加相似的最近鄰集合,從而提供更精確的信息資源推薦服務(wù)。
1 相關(guān)研究
協(xié)同過(guò)濾推薦是一種主要依賴用戶對(duì)項(xiàng)目的評(píng)分來(lái)進(jìn)行推薦的算法,其首要工作是進(jìn)行相似性度量,即找到與目標(biāo)用戶興趣偏好相似的用戶群體[2]。由于用戶的興趣偏好會(huì)隨著時(shí)間推移發(fā)生變化,過(guò)去評(píng)分較高的項(xiàng)目在實(shí)施推薦時(shí)不一定與用戶當(dāng)前興趣偏好相匹配,因此相關(guān)學(xué)者將時(shí)間因素與用戶評(píng)分相結(jié)合。任磊[3]針對(duì)傳統(tǒng)協(xié)同推薦算法一般只利用評(píng)分的數(shù)值,而忽視評(píng)分產(chǎn)生時(shí)間對(duì)推薦的作用,從而表現(xiàn)出隨時(shí)間變化的概念漂移問(wèn)題,結(jié)合評(píng)分時(shí)間信息對(duì)推薦的作用,從評(píng)分時(shí)間角度對(duì)推薦算法的相似度計(jì)算和評(píng)分預(yù)測(cè)過(guò)程進(jìn)行改進(jìn),提出一種結(jié)合評(píng)分時(shí)間特性的協(xié)同推薦算法。韓亞楠等[4]考慮到用戶興趣隨時(shí)間的變化,將基于時(shí)間的興趣度權(quán)重函數(shù)和偏好度引入到項(xiàng)目相似度計(jì)算和推薦過(guò)程中,確定項(xiàng)目最近鄰集合,從而實(shí)現(xiàn)最優(yōu)推薦。
除了依賴用戶對(duì)于項(xiàng)目的評(píng)分進(jìn)行相似性度量設(shè)計(jì)推薦算法之外,相關(guān)研究還對(duì)用戶之間存在的關(guān)系進(jìn)行分析,為目標(biāo)用戶尋找相似用戶集合,進(jìn)而設(shè)計(jì)合理的推薦方法。用戶間關(guān)系的獲取主要通過(guò)兩種方式:一種是通過(guò)用戶間的顯式關(guān)系。如在社交網(wǎng)絡(luò)中的好友關(guān)系或?qū)ζ渌脩舻脑u(píng)價(jià)點(diǎn)贊等。國(guó)內(nèi)外學(xué)者基于用戶間的顯式關(guān)系設(shè)計(jì)了相關(guān)的推薦方法。Lai等[5]提出了一種基于社交網(wǎng)絡(luò)環(huán)境的推薦方法,通過(guò)分析用戶間的互動(dòng)行為、好友關(guān)系以及產(chǎn)品流行度,實(shí)現(xiàn)個(gè)性化推薦。該方法重點(diǎn)在于通過(guò)用戶評(píng)分和商品評(píng)論推斷用戶間的關(guān)聯(lián)關(guān)系,結(jié)合商品受歡迎程度完成推薦。張繼東等[6]以新浪微博為研究對(duì)象,利用微博用戶間的好友關(guān)系衡量信任關(guān)系,據(jù)此進(jìn)行分析以提供推薦服務(wù)。此外,張繼東等[7]還構(gòu)建了一個(gè)基于社區(qū)劃分和用戶相似度的好友信息服務(wù)推薦模型,通過(guò)用戶間的交互級(jí)別、專業(yè)知識(shí)水平以及信任程度劃分用戶社區(qū),以此計(jì)算用戶興趣偏好相似性,從而實(shí)現(xiàn)推薦。在上述研究中,用戶間的信任關(guān)系是通過(guò)顯式關(guān)系的分析建立的,這種信任并非實(shí)際社會(huì)關(guān)系上的信任,而是從目標(biāo)用戶對(duì)推薦項(xiàng)目的反饋行為中挖掘出的潛在興趣關(guān)聯(lián)。這種關(guān)聯(lián)通常是隱性的,目標(biāo)用戶可能并未察覺[8]。
另一種方法是通過(guò)用戶的隱式關(guān)系來(lái)設(shè)計(jì)推薦系統(tǒng),即通過(guò)分析用戶的行為數(shù)據(jù)(如共同購(gòu)買的商品、共同觀看的電影等),推斷用戶之間可能存在的關(guān)系,據(jù)此進(jìn)行相似性度量設(shè)計(jì)推薦方法。廖宏建等[9]充分利用學(xué)習(xí)行為日志和評(píng)分?jǐn)?shù)據(jù),挖掘?qū)W習(xí)者之間的隱式信任關(guān)系,通過(guò)信任傳播建立MOOC社區(qū)的信任網(wǎng)絡(luò),構(gòu)建動(dòng)態(tài)結(jié)合興趣和隱式信任感知的混合推薦方法。王根生等[10]將用戶對(duì)資源的學(xué)習(xí)行為轉(zhuǎn)化為評(píng)分,從而緩解評(píng)分矩陣稀疏問(wèn)題,引入用戶初始化標(biāo)簽改進(jìn)用戶相似度計(jì)算,找出與目標(biāo)用戶興趣偏好相近的用戶集合,以實(shí)施推薦。在社交網(wǎng)絡(luò)環(huán)境中,社會(huì)化標(biāo)簽不僅可以提供內(nèi)容的摘要信息,還能反映用戶的需求傾向,因此在個(gè)性化推薦中表現(xiàn)出更好的效果[8][11]。郭雪梅等[12]以標(biāo)簽為媒介,構(gòu)建用戶和項(xiàng)目的標(biāo)簽特征表示,應(yīng)用于用戶相似性和項(xiàng)目相似性的協(xié)同過(guò)濾算法,預(yù)測(cè)用戶對(duì)項(xiàng)目的偏好值并進(jìn)行排序,從而生成最終的推薦列表。Shambour等[13]融合標(biāo)簽和時(shí)間等因素,通過(guò)分析用戶使用標(biāo)簽的頻率及標(biāo)注資源的時(shí)間信息,構(gòu)建用戶-資源評(píng)分矩陣,結(jié)合協(xié)同過(guò)濾算法計(jì)算目標(biāo)用戶的最近鄰,從而實(shí)現(xiàn)知識(shí)推薦。
綜上,現(xiàn)有研究多通過(guò)用戶好友關(guān)系、用戶標(biāo)簽等顯性數(shù)據(jù)結(jié)合用戶評(píng)分分析用戶關(guān)系。但在僅提供用戶評(píng)分的情況下,通常采用Pearson相關(guān)系數(shù)或修正余弦相似性度量用戶相似性。因此,本文基于用戶評(píng)分并結(jié)合用戶行為,分析用戶多元關(guān)系,設(shè)計(jì)個(gè)性化推薦方法。
2 融合評(píng)分和行為的用戶間多元關(guān)系構(gòu)成
2.1 問(wèn)題引入
推薦系統(tǒng)中提供了用戶對(duì)于資源項(xiàng)評(píng)分的功能,假定系統(tǒng)中的6個(gè)用戶對(duì)10個(gè)資源項(xiàng)的評(píng)分,用戶評(píng)分的取值區(qū)間為[1,5]的正整數(shù),如表1所示。
如果該推薦系統(tǒng)僅提供評(píng)分功能,而未涉及好友關(guān)系、用戶評(píng)論等擴(kuò)展功能,那么在實(shí)施推薦前,用戶相似性的度量只能依賴用戶對(duì)項(xiàng)目的評(píng)分。通過(guò)修正的余弦相似性或Pearson相關(guān)系數(shù),可以找到與目標(biāo)用戶偏好相似的用戶集合。然而,這種方法難以深度挖掘用戶的興趣偏好。因此,本文結(jié)合用戶對(duì)項(xiàng)目的評(píng)分與用戶行為,共同描述用戶的興趣偏好,進(jìn)一步利用項(xiàng)目的靜態(tài)評(píng)分挖掘用戶之間的潛在關(guān)系,如圖1所示。
2.2 基于靜態(tài)評(píng)分的用戶間可靠性度量
用戶的可靠性是用于衡量對(duì)用戶評(píng)分預(yù)測(cè)準(zhǔn)確性的指標(biāo)。本文對(duì)于用戶可靠性從用戶評(píng)分確定性以及基于評(píng)分的用戶間信任關(guān)系這兩方面因素相結(jié)合進(jìn)行考慮。
2.2.1 用戶評(píng)分確定性的度量
用戶評(píng)分的確定性是衡量用戶評(píng)分行為可預(yù)測(cè)性或穩(wěn)定性的重要指標(biāo),基于用戶歷史評(píng)分?jǐn)?shù)據(jù)的統(tǒng)計(jì)分析得出。在推薦系統(tǒng)中,用戶評(píng)分?jǐn)?shù)據(jù)是反映用戶對(duì)特定項(xiàng)目喜好或滿意度的關(guān)鍵信號(hào)。如果用戶的評(píng)分行為具有較高的確定性,說(shuō)明其評(píng)分模式或習(xí)慣較為穩(wěn)定且具有一定的可預(yù)測(cè)性;相反,低確定性則表明用戶的評(píng)分行為較為波動(dòng),難以預(yù)測(cè)。
確定性的概念可以被看作是不確定性的相反。在推薦系統(tǒng)中,用戶對(duì)于項(xiàng)目賦予的評(píng)分具有隨機(jī)性和不確定性的特點(diǎn),因此可以借助信息熵進(jìn)行度量。信息熵是度量信息的不確定性的一種方式。這個(gè)概念由Claude E. Shannon在20世紀(jì)40年代提出,在信息論和相關(guān)領(lǐng)域得到廣泛應(yīng)用。其基本思想是,信息的不確定性越大,其信息熵就越大。信息熵計(jì)算公式為:H(X)=-∑nj=1p(xj)×log2p(xj)。
在評(píng)分可預(yù)測(cè)性的情景中,信息熵可以用來(lái)衡量用戶評(píng)分的不確定性。高信息熵意味著用戶的評(píng)分行為更隨機(jī)、不可預(yù)測(cè),而低信息熵則表示評(píng)分行為更有規(guī)律、可預(yù)測(cè)。在推薦系統(tǒng)中項(xiàng)目評(píng)分取值為[1,…,5],假定用戶u對(duì)系統(tǒng)中項(xiàng)目評(píng)分向量記為Ru={ru,1,ru,2,…,ru,i,…,ru,n}。由于用戶u在評(píng)分取值范圍內(nèi)對(duì)不同項(xiàng)目賦予不同的評(píng)分是相互獨(dú)立的事件。用戶u對(duì)項(xiàng)目賦予評(píng)分的不確定性度量計(jì)算,如公式(1)所示。
UnCeru=-∑r∈RDpu(r)log2(pu(r))(1)
其中,RD表示項(xiàng)目評(píng)分的取值范圍,假定評(píng)分為5分制正整數(shù),即RD={1,2,3,4,5};pu(r)表示評(píng)分取值r∈RD在評(píng)分向量Ru中發(fā)生的概率,計(jì)算公式如下所示:
pu(r)=(評(píng)分值r在評(píng)分向量Ru中出現(xiàn)的次數(shù)) /(評(píng)分向量Ru中包含元素的數(shù)量)
根據(jù)信息熵公式的定義,在均勻分布下,信息熵達(dá)到最大值。當(dāng)用戶的評(píng)分是均勻分布時(shí),即給出每個(gè)可能的評(píng)分的概率都是相等時(shí),那么每個(gè)評(píng)分的概率就是1/RD=1/5。此時(shí),用戶評(píng)分不確定性取得最大值Max(UnCeru)=log2(RD),其中RD為評(píng)分取值區(qū)間內(nèi)分值的數(shù)量。由于確定性的概念可以被看作是不確定性的相反,因此在得到公式(1)的用戶u對(duì)項(xiàng)目賦予評(píng)分的不確定性度量后,可以得到用戶對(duì)項(xiàng)目評(píng)分的確定性度量方法,即Ceru=1-[UnCeru/log2(RD)]。根據(jù)該公式,表1中各用戶的評(píng)分確定性度量結(jié)果如表2所示。
2.2.2 基于靜態(tài)評(píng)分的用戶間信任關(guān)系
這里的信任關(guān)系不同于社會(huì)關(guān)系中的信任,推薦系統(tǒng)中,由于兩個(gè)用戶間會(huì)產(chǎn)生共同評(píng)分的項(xiàng)目,假設(shè)Ia和Ib分別表示用戶a和b評(píng)分項(xiàng)目的集合,Ia和Ib分別表示用戶a和b評(píng)分項(xiàng)目的數(shù)量。Ia∩Ib和Ia∩Ib分別表示用戶a和b共同評(píng)分的項(xiàng)目集合及其對(duì)應(yīng)的項(xiàng)目數(shù)量。本文采用基于共同項(xiàng)目的評(píng)分計(jì)算用戶間直接信任關(guān)系的方法,該方法根據(jù)用戶b的項(xiàng)目評(píng)分產(chǎn)生用戶a對(duì)共同評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分pa,i,計(jì)算公式為pa,i=i a+(rb,i-b)。其中,i a表示用戶a已評(píng)分項(xiàng)目中不包括項(xiàng)目i(i∈Ia∩Ib)的評(píng)分均值,b表示用戶b項(xiàng)目評(píng)分的均值,rb,i表示用戶b對(duì)項(xiàng)目i的實(shí)際評(píng)分。通過(guò)pa,i與ra,i的差值度量用戶a和b間的信任關(guān)系,差值越小,信任關(guān)系程度越高。
在表1的 “用戶-項(xiàng)目”評(píng)分示例中,以用戶u1和u2為例,這兩個(gè)用戶的共同評(píng)分項(xiàng)目集合為{i5,i6},用戶u2項(xiàng)目評(píng)分均值為3.2,進(jìn)而計(jì)算用戶u1對(duì)于共同評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分。
本文通過(guò)預(yù)測(cè)評(píng)分與實(shí)際評(píng)分的偏差來(lái)衡量用戶之間的信任關(guān)系程度,因此使用均方差分的方法進(jìn)行計(jì)算,如公式(2)所示。
Trusta→b=1-∑i∈Ia∩Ib(Pa(i)-Ra(i))2|Ia∩Ib|×|Ia∩Ib||Ia∪Ib|(2)
其中,為使用戶間信任關(guān)系度量結(jié)果取值范圍為[0,1],需要對(duì)預(yù)測(cè)評(píng)分和實(shí)際評(píng)分進(jìn)行歸一化。公式(2)中Pa(i)和Ra(i)分別表示用戶a對(duì)項(xiàng)目i的實(shí)際評(píng)分ra,i和預(yù)測(cè)評(píng)分pa,i歸一化處理后的結(jié)果。同樣以上面的示例為例,MAX{ru1}=ru1,i10=5,MIN{ru1}=ru1,i8=1,用戶u1及其與用戶u2共同評(píng)分項(xiàng)目i5、i6的預(yù)測(cè)評(píng)分和實(shí)際評(píng)分歸一化結(jié)果,如表3所示。
表3 用戶u1與u2信任關(guān)系度量結(jié)果
VarPu1(i5)Ru1(i5)Pu1(i6)Ru1(i6)
Var-ru1,i8ru1,i10-ru1,i80.80.250.450.75
根據(jù)公式(2),可以計(jì)算得到Trustu1→u2=0.1786。同理計(jì)算Trustu2→u1,根據(jù)表1可以得到用戶u1項(xiàng)目評(píng)分均值為3.8,進(jìn)而計(jì)算用戶u2對(duì)于共同評(píng)分項(xiàng)目的預(yù)測(cè)評(píng)分。
根據(jù)公式(2),可以計(jì)算得到Trustu2→u1=0.1673??梢园l(fā)現(xiàn),由于用戶u1和u2各自評(píng)分具有差異性,因此Trustu1→u2和Trustu2→u1計(jì)算結(jié)果并不相同。此外,如果用戶a和b之間不存在任何共同評(píng)分項(xiàng)目,但他們分別與用戶c存在共同評(píng)分項(xiàng)目,那么用戶a和b之間就存在間接信任關(guān)系,可以利用a和b各自與用戶c的直接信任關(guān)系計(jì)算這二者之間的間接信任關(guān)系,其計(jì)算方法如公式(3)所示。
Trustacb=|Ia∩Ic|×Trusta→c+|Ic∩Ib|×Trustc→b|Ia∩Ic|+|Ic∩Ib|(3)
綜上所述,用戶a和b之間信任關(guān)系的計(jì)算方法如公式(4)所示。
Trust*a→b=Trusta→bIa∩Ib≠
TrustacbIa∩Ib=amp;Ia∩Ic≠amp;Ic∩Ib≠(4)
2.2.3 用戶間可靠性的計(jì)算
綜上所述,用戶可靠性需要通過(guò)將用戶間評(píng)分的確定性差值和基于靜態(tài)評(píng)分的信任關(guān)系相結(jié)合進(jìn)行計(jì)算,如公式(5)所示。
CONF(a,b)=Trust*a→b×(1-CerDiff(a,b))(5)
其中,CerDiff(a,b) 表示用戶a和b之間評(píng)分確定性的差值,CerDiff(a,b)=Cera-Cerb,CerDiff(a,b)∈[0,1]。結(jié)合表2和表3的用戶評(píng)分確定性以及各個(gè)用戶間信任關(guān)系度量結(jié)果,根據(jù)公式(5)介紹的計(jì)算方法,計(jì)算用戶u1和u2各自的用戶間可靠性,即計(jì)算CONF(u1,u2)和CONF(u2,u1)。
∵ CerDiff(u1,u2)=|Ceru1-Ceru2|=|0.0303-0.1723|=0.142
∴ CONF(u1,u2)=0.1532CONF(u2,u1)=0.1435
在用戶間可靠性度量中,用戶a和b的評(píng)分確定性差值是衡量?jī)晌挥脩粼u(píng)分行為穩(wěn)定性差異的關(guān)鍵指標(biāo)。評(píng)分確定性反映了用戶評(píng)分行為的一致性和可預(yù)測(cè)性。當(dāng)兩位用戶的評(píng)分確定性差值較小,說(shuō)明他們?cè)谠u(píng)分行為上表現(xiàn)出相似的穩(wěn)定性和一致性;相反,差值較大則表明他們?cè)谠u(píng)分行為上的穩(wěn)定性和一致性存在顯著差異。因此,該差值可用于評(píng)估用戶間評(píng)分行為穩(wěn)定性方面的相似性。此外,將用戶間評(píng)分確定性的差異與基于評(píng)分的信任關(guān)系相結(jié)合,可以更全面地判斷兩位用戶間是否具備較高的可靠性。通過(guò)將這兩項(xiàng)指標(biāo)的乘積作為權(quán)重,可以更準(zhǔn)確地反映用戶評(píng)分的整體可靠性,為推薦系統(tǒng)的用戶信任評(píng)估提供更精準(zhǔn)的依據(jù)。
2.3 基于靜態(tài)評(píng)分的用戶間一致性
2.3.1 用戶間最近鄰的一致性
傳統(tǒng)的推薦方法中,根據(jù)與目標(biāo)用戶相似性度量的結(jié)果進(jìn)行排序,選擇Top-N用戶作為目標(biāo)用戶的最近鄰進(jìn)行推薦,可能會(huì)導(dǎo)致推薦結(jié)果的多樣性不足。通過(guò)設(shè)定一個(gè)閾值δ,使推薦結(jié)果涵蓋了一個(gè)較大的用戶集合,可以提高推薦結(jié)果的多樣性,滿足用戶的多元化需求。
根據(jù)Jaccard相似性度量方法,即SIMJaccard(a,u)=|Ia∩Iu||Ia∪Iu|。通過(guò)逐個(gè)計(jì)算目標(biāo)用戶a與系統(tǒng)中其他用戶的相似性后,并計(jì)算平均值以此作為與目標(biāo)用戶a相似性比較的閾值,如公式(6)所示。
δa=1|U|-1×∑u∈USIMJaccard(a,u)
SIMJaccard(a,u)≠0amp;a≠u(6)
用戶間最近鄰一致性的度量方法可以解釋為,用戶a和b各自相似性高于閾值δa和δb所形成的最近鄰集合的交集中,存在一個(gè)用戶,該用戶分別與a和b相似性度量結(jié)果的差值小于閾值ε(本文設(shè)定ε≤0.05),滿足該條件的用戶數(shù)量與交集用戶數(shù)量的比值,計(jì)算公式如公式(7)所示。
IDENUser(a,b)=∑USIMa∩USIMbu=11|USIMa∩USIMb|
USIMa={u|SIMJaccard(a,u)gt;δa}amp;
USIMb={u|SIMJaccard(b,u)gt;δb}amp;
|SIMJaccard(a,u)-SIMJaccard(b,u)|≤ε(7)
其中,USIMa和USIMb分別表示相似性度量結(jié)果分別高于用戶a和b的相似性閾值的用戶集合。USIMa∩USIMb表示這個(gè)共同相似用戶集合中的用戶數(shù)量。
2.3.2 用戶間評(píng)分一致性
用戶間評(píng)分一致性的度量方法可以解釋為,用戶a和b共同評(píng)分項(xiàng)目的集合中,存在一個(gè)項(xiàng)目,用戶a和b對(duì)該項(xiàng)目的評(píng)分值相同,滿足該條件的項(xiàng)目數(shù)量與共同評(píng)分項(xiàng)目數(shù)量的比值,如公式(8)所示。
IDENInfo(a,b)=∑IRa∩IRbi=11|IRa∩IRb|Ra(i)=Rb(i)(8)
2.3.3 用戶間的綜合一致性
綜合用戶間最近鄰一致性水平和用戶間評(píng)分一致性,計(jì)算二者的算數(shù)平均值,可得用戶間的綜合一致性,如公式(9)所示。
IDEN(a,b)=12(IDENUser(a,b)+IDENInfo(a,b))(9)
2.4 考慮時(shí)間因素的用戶評(píng)分間調(diào)和相似性
2.4.1 考慮時(shí)間因素的用戶評(píng)分
傳統(tǒng)的基于用戶協(xié)同過(guò)濾的推薦方法中,用戶評(píng)分向量通常未考慮時(shí)間因素的影響。例如,用戶可能對(duì)某個(gè)項(xiàng)目的評(píng)分較高,但隨著時(shí)間推移,其興趣偏好發(fā)生了變化,對(duì)于之前評(píng)分較高的項(xiàng)目不再訪問(wèn)。在這種情況下,基于用戶靜態(tài)評(píng)分形成的評(píng)分向量無(wú)法準(zhǔn)確描述用戶當(dāng)前的興趣偏好。為了解決這一問(wèn)題,本文引入時(shí)間因素對(duì)用戶的項(xiàng)目評(píng)分進(jìn)行調(diào)整。相比于較早的評(píng)分,用戶近期的評(píng)分行為具有更高的參考價(jià)值。因此,距離當(dāng)前時(shí)間越近的評(píng)分應(yīng)當(dāng)賦予更大的時(shí)間權(quán)重,從而更準(zhǔn)確地反映用戶的實(shí)時(shí)興趣偏好,提高推薦系統(tǒng)的準(zhǔn)確性和時(shí)效性??紤]到時(shí)間因素的用戶a對(duì)項(xiàng)目i的評(píng)分記為R*a(i),如公式(10)所示。
R*a(i)=Ra(i)×exp-tnow-tRate(a,i)tnow-tFirstRate(a)(10)
2.4.2 Pearson相關(guān)系數(shù)
在推薦系統(tǒng)中,Pearson相關(guān)系數(shù)被用來(lái)衡量?jī)蓚€(gè)用戶的評(píng)分向量之間的相關(guān)性,其取值范圍為[-1,1]。本文中,對(duì)于用戶a和用戶b,基于他們?cè)谙嗤?xiàng)目上所形成的行為偏好向量,使用Pearson相關(guān)系數(shù),可以計(jì)算出這兩個(gè)用戶之間的相關(guān)性,即
PCCa,b=∑i∈Ia∩IbR*a(i)-R*a×R*b(i)-R*b∑i∈Ia∩IbR*a(i)-R*a2×∑i∈Ia∩IbR*b(i)-R*b2
2.5 歐式距離
對(duì)于兩個(gè)用戶a和b的評(píng)分向量,使用歐式距離,以測(cè)量這兩個(gè)用戶在相同項(xiàng)目上所形成的行為偏好模式之間的距離,即DistEuca,b=∑i∈Ia∩Ib(R*a(i)-R*b(i))2。歐式距離的值范圍為[0,+∞)。如果歐式距離為0,意味著兩個(gè)用戶對(duì)所有項(xiàng)目的行為偏好完全相同。如果歐式距離很大,表明兩個(gè)用戶的行為偏好模式存在顯著差異。
2.6 用戶調(diào)和相似性
綜上所述,對(duì)用戶a和b在相同項(xiàng)目上所形成的行為偏好向量上計(jì)算得到的Pearson相關(guān)系數(shù)和歐式距離,在取值范圍上存在著巨大差異。Pearson相關(guān)系數(shù)衡量的是兩個(gè)向量的線性相關(guān)性。特別是在[0,1]取值范圍內(nèi),值越大表示兩個(gè)用戶的行為模式越相似。因此需要將用戶a和b的行為偏好向量的歐式距離進(jìn)行處理,使其取值范圍與Pearson相關(guān)系數(shù)范圍相同。標(biāo)準(zhǔn)化歐式距離的計(jì)算方法為DistNorma,b=1-11+DistEuca,b。
通過(guò)計(jì)算Pearson相關(guān)系數(shù)和標(biāo)準(zhǔn)化歐氏距離的調(diào)和平均數(shù),可以同時(shí)考慮到評(píng)分的數(shù)值相似性和評(píng)分模式的相似性,獲得一個(gè)更全面的相似性度量,計(jì)算如公式(11)所示。
SIM(a,b)=PCCa,b PCCa,b≠0amp;DistNorma,b=0
DistNorma,b PCCa,b=0amp;DistNorma,b≠0
0 PCCa,b=0amp;DistNorma,b=0
2×PCCa,b×DistNorma,bPCCa,b+DistNorma,b PCCa,b≠0amp;DistNorma,b≠0(11)
Pearson相關(guān)系數(shù)用于衡量?jī)蓚€(gè)向量之間的線性相關(guān)性,而歐式距離反映的是向量在多維空間中的實(shí)際距離。本文中通過(guò)計(jì)算兩者的調(diào)和平均數(shù),兼顧用戶行為偏好值的差距(由歐式距離表征)和行為偏好值的趨勢(shì)(由Pearson相關(guān)系數(shù)表征),從而使得相似性度量結(jié)果更加全面和準(zhǔn)確。
3 基于用戶多維度關(guān)聯(lián)關(guān)系分析的個(gè)性化推薦方法
3.1 用戶多維度關(guān)聯(lián)關(guān)系
根據(jù)前述分析,可以通過(guò)靜態(tài)評(píng)分計(jì)算用戶間的置信度和一致性,結(jié)合時(shí)間因素計(jì)算用戶評(píng)分中的行為偏好調(diào)和相似性。在此基礎(chǔ)上,綜合以上3方面因素深入分析用戶間的關(guān)聯(lián)關(guān)系。需要注意的是,用戶間的信任關(guān)系既包括直接關(guān)聯(lián)關(guān)系,也包括間接關(guān)聯(lián)關(guān)系。因此,在構(gòu)建用戶關(guān)聯(lián)關(guān)系模型時(shí),應(yīng)綜合考慮這2種關(guān)聯(lián)方式,以更準(zhǔn)確地反映用戶之間的潛在關(guān)系。
3.1.1 用戶直接關(guān)聯(lián)關(guān)系
當(dāng)用戶間存在共同項(xiàng)目或能夠?qū)崿F(xiàn)這兩個(gè)用戶間的調(diào)和相似性、置信度或一致性至少一項(xiàng)指標(biāo),則可以根據(jù)公式(12)計(jì)算這兩個(gè)用戶之間的直接關(guān)聯(lián)關(guān)系。
D(a,b)=33×SIM(a,b)×CONF(a,b)×IDEN(a,b)SIM(a,b)+CONF(a,b)+IDEN(a,b)
SIM(a,b)+CONF(a,b)+IDEN(a,b)≠0
2×CONF(a,b)×IDEN(a,b)CONF(a,b)+IDEN(a,b)CONF(a,b)×IDEN(a,b)≠0amp;SIM(a,b)=0
2×SIM(a,b)×IDEN(a,b)SIM(a,b)+IDEN(a,b)SIM(a,b)×IDEN(a,b)≠0amp;CONF(a,b)=0
2×SIM(a,b)×CONF(a,b)SIM(a,b)+CONF(a,b)SIM(a,b)×CONF(a,b)≠0amp;IDEN(a,b)=0
0 CONF(a,b)=0amp;SIM(a,b)=0amp;IDEN(a,b)=0(12)
直接關(guān)聯(lián)關(guān)系D的取值范圍為[0,1],針對(duì)目標(biāo)用戶a,根據(jù)公式(12)分別計(jì)算其與系統(tǒng)中其他用戶的直接關(guān)聯(lián)關(guān)系并求得均值,以此作為目標(biāo)用戶a的直接關(guān)聯(lián)關(guān)系的閾值,記為γa=1|U|-1∑u∈UD(a,u),其中,a≠uamp;D (a,u)≠0。
3.1.2 用戶間接關(guān)聯(lián)關(guān)系
用戶a和b之間的關(guān)聯(lián)關(guān)系不僅要計(jì)算他們之間的直接關(guān)聯(lián)關(guān)系,還需要考慮通過(guò)中間用戶所產(chǎn)生的間接關(guān)聯(lián)關(guān)系,也稱為傳導(dǎo)關(guān)聯(lián)關(guān)系,即存在中間用戶u,通過(guò)分別計(jì)算D (a,u)和D (u,b)后,根據(jù)公式(13)計(jì)算a和b之間的間接關(guān)聯(lián)關(guān)系。
P(a,b)=1|U′|×∑U′u=12×D(a,u)×D(u,b)D(a,u)+D(u,b)
D(a,u)gt;γaamp;D(u,b)gt;γu(13)
其中,集合U′表示用戶a和b之間中間用戶的集合,D (a,u)和D (u,b)分別需要滿足高于直接關(guān)聯(lián)關(guān)系閾值γa和γu。
3.1.3 用戶關(guān)聯(lián)關(guān)系模型
根據(jù)前面得到的用戶a和b之間的直接/間接關(guān)聯(lián)關(guān)系,按照公式(14)可以得到2個(gè)用戶之間的關(guān)聯(lián)關(guān)系模型。
針對(duì)目標(biāo)用戶a,根據(jù)公式(14)分別計(jì)算其與系統(tǒng)中其他用戶的關(guān)聯(lián)關(guān)系并求得均值,以此作為目標(biāo)用戶a的關(guān)聯(lián)關(guān)系的閾值,記為θa。EQ θa=1|U|-1∑b∈UREL(b,u),其中a≠bamp; REL (a,b)≠0。
3.2 評(píng)分預(yù)測(cè)方法
根據(jù)前文所闡述的用戶間關(guān)聯(lián)關(guān)系計(jì)算方法,根據(jù)公式(15)可以計(jì)算目標(biāo)用戶a對(duì)于未訪問(wèn)項(xiàng)目的行為偏好預(yù)測(cè)值。其中,根據(jù)目標(biāo)用戶a關(guān)聯(lián)關(guān)系閾值θa,系統(tǒng)中其他用戶與目標(biāo)用戶a的關(guān)聯(lián)關(guān)系高于θa所形成的最近鄰集合記為UREL a={uREL(a,u)gt;θa }。
4 實(shí)驗(yàn)分析
4.1 數(shù)據(jù)準(zhǔn)備
本文依托于研究課題建立的“信息素養(yǎng)課程教學(xué)平臺(tái)”,該平臺(tái)保存了用戶信息、課程資源信息以及用戶對(duì)于課程資源的評(píng)分信息。保存這些數(shù)據(jù)的數(shù)據(jù)庫(kù)關(guān)系模型,如圖2所示。
4.2 結(jié)果比對(duì)
為了驗(yàn)證實(shí)驗(yàn)效果,本文在對(duì)比實(shí)驗(yàn)中采用均方根誤差(RMSE)和平均絕對(duì)誤差(MAE)來(lái)驗(yàn)證推薦方法的推薦質(zhì)量,這2項(xiàng)評(píng)價(jià)指標(biāo)如下:
其中,U表示用戶集合,IPRED u表示用戶u未進(jìn)行評(píng)分的項(xiàng)目集合,Ru(i)表示用戶u對(duì)項(xiàng)目i的實(shí)際評(píng)分,Pu(i)表示用戶u對(duì)項(xiàng)目i的預(yù)測(cè)評(píng)分。
本文采用基于用戶評(píng)分結(jié)合評(píng)分時(shí)間特性的協(xié)同推薦算法[3](記為“ICFT”),基于用戶評(píng)分分析用戶間信任關(guān)系的推薦方法(記為“TSF”)與本文設(shè)計(jì)的推薦方法(記為“MRCF”)在實(shí)驗(yàn)數(shù)據(jù)上進(jìn)行對(duì)比,將目標(biāo)用戶最近鄰集合的數(shù)量設(shè)置為K={5,10,15,20,25},實(shí)驗(yàn)結(jié)果如表4所示。
通過(guò)實(shí)驗(yàn)結(jié)果可知,隨著目標(biāo)用戶最近鄰用戶數(shù)量的增多,3種方法的RMSE和MAE值均降低,表明推薦精度均有所提高。本文設(shè)計(jì)的方法在推薦效果上優(yōu)于其他2種方法且ICFT方法推薦精度最低。
此外,在對(duì)比實(shí)驗(yàn)中本文還采用準(zhǔn)確率(Precision)、召回率(Recall)和F1作為評(píng)價(jià)標(biāo)準(zhǔn),比較3種推薦方法在目標(biāo)用戶最近鄰集合的數(shù)量設(shè)置為K={5,10,15,20,25}這5種條件下和每個(gè)用戶推薦項(xiàng)目數(shù)量N為{5,10,15}的3種情況下進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表5所示。
根據(jù)表5,在目標(biāo)用戶最近鄰集合的數(shù)量設(shè)置為K={5,10,15,20,25}這5種條件下,本文提出的推薦方法在準(zhǔn)確率Precision、召回率(Recall)和F1這3項(xiàng)指標(biāo)上均優(yōu)于其他2種對(duì)比方法。其中,ICFT方法推薦效果最差,其原因在于該方法僅從評(píng)分時(shí)間角度對(duì)推薦算法的相似度計(jì)算和評(píng)分預(yù)測(cè)過(guò)程進(jìn)行改進(jìn),沒有從用戶靜態(tài)評(píng)分中分析和挖掘用戶間的信任關(guān)系。而TSF方法雖然通過(guò)用戶評(píng)分分析用戶間的信任關(guān)系,但其沒有考慮時(shí)間因素對(duì)用戶興趣偏好的影響。
5 結(jié)語(yǔ)
傳統(tǒng)的協(xié)同過(guò)濾推薦算法單純依賴用戶對(duì)項(xiàng)目的評(píng)分?jǐn)?shù)據(jù)進(jìn)行計(jì)算,未充分考慮其他關(guān)鍵因素,如用戶之間的信任關(guān)系,這往往導(dǎo)致推薦質(zhì)量較低。為了解決這一問(wèn)題,本文以用戶對(duì)項(xiàng)目的評(píng)分為基礎(chǔ),分析用戶間評(píng)分的一致性和信任關(guān)系,結(jié)合用戶行為進(jìn)行綜合分析。同時(shí),引入時(shí)間因素對(duì)用戶項(xiàng)目評(píng)分的影響,充分考慮時(shí)間對(duì)用戶興趣偏好的作用,構(gòu)建用戶間的多元關(guān)系模型。在此基礎(chǔ)上,為目標(biāo)用戶找到更為相似的最近鄰集合,從而提供精準(zhǔn)的信息資源推薦服務(wù)。最后,將本文提出的方法應(yīng)用于實(shí)際信息服務(wù)平臺(tái)中,通過(guò)對(duì)實(shí)驗(yàn)數(shù)據(jù)的分析,比較本文方法與其他推薦方法的效果。實(shí)驗(yàn)結(jié)果表明,該方法能夠提供更優(yōu)質(zhì)的推薦效果,有效滿足用戶的信息需求。
參考文獻(xiàn)
[1]魏玲,郭新悅.融合用戶畫像與協(xié)同過(guò)濾的知識(shí)付費(fèi)平臺(tái)個(gè)性化推薦模型[J].情報(bào)理論與實(shí)踐,2021(3):188-193.
[2]朱帥.基于微博引用的個(gè)性化推薦[D].北京:北京郵電大學(xué),2013.
[3]任磊.一種結(jié)合評(píng)分時(shí)間特性的協(xié)同推薦算法[J].計(jì)算機(jī)應(yīng)用與軟件,2015(5):112-115.
[4]韓亞楠,曹菡,劉亮亮.基于評(píng)分矩陣填充與用戶興趣的協(xié)同過(guò)濾推薦算法[J].計(jì)算機(jī)工程,2016(1):36-40.
[5]LAI C H ,LEE S J ,HUANG H L. A Social Recommendation Method Based on the Integration of Social Relationship and Product Popularity[J].International Journal of Human-Computer Studies,2019(121):42-57.
[6]張繼東,段小萌.基于移動(dòng)社交平臺(tái)的用戶信任度分析研究[J].現(xiàn)代情報(bào),2017(9):93-96,102.
[7]張繼東,蔡雪.基于社區(qū)劃分和用戶相似度的好友信息服務(wù)推薦研究[J].情報(bào)理論與實(shí)踐,2019(4):151-157,165.
[8]胡吉明,胡昌平,鄧勝利.社會(huì)網(wǎng)絡(luò)環(huán)境下的信息推薦研究述評(píng)[J].情報(bào)資料工作,2013(2):35-39.
[9]廖宏建,謝亮,曲哲.一種基于隱式信任感知的MOOCs推薦方法[J].情報(bào)理論與實(shí)踐,2021(2):128-135,95.
[10]王根生,袁紅林,黃學(xué)堅(jiān),等.基于改進(jìn)型協(xié)同過(guò)濾的網(wǎng)絡(luò)學(xué)習(xí)資源推薦算法[J].小型微型計(jì)算機(jī)系統(tǒng),2021(5):940-945.
[11]WU P ,ZHANG Z K . Enhancing personalized recommendations on weighted social tagging networks[J].Physics Procedia,2010(3):1877-1885.
[12]郭雪梅.基于社會(huì)化標(biāo)簽的用戶標(biāo)注行為和時(shí)間因素的個(gè)性化推薦方法研究[J].情報(bào)科學(xué),2020(2):68-74.
[13]SHAMBOUR Q,LU J.A trust-semantic fusion-based recommendation approach for e-business applications[J].Decision Support Systems,2012(1):768-780.
(編輯 姚 鑫)
Research on personalized recommendation based on multi-relationship analysis among users ratings
ZHANG Jun
(Laboratory and Asset Management Division, Tianjin Medical University, Tianjin 300070)
Abstract:With the explosion of information, personalized recommendation technology has become key to improving information retrieval efficiency and user experience. This article addresses the issue of low recommendation quality caused by traditional collaborative filtering methods that rely solely on users' static ratings. It proposes a personalized recommendation method based on multi-dimensional analysis of user ratings. This method comprehensively analyzes user rating consistency, trust relationships, and user behavior, introduces temporal factors to reflect changes in user interests, and establishes a multi-dimensional relationship model among users. Experimental results show that compared to other recommendation methods, the approach presented in this article can provide more accurate recommendation services in practical applications, effectively meeting users' information needs and achieving a significant improvement in recommendation quality.
Key words:personalized recommendation; user ratings; user multi-relationship; quantifying user behavior