呂成戍
(東北財(cái)經(jīng)大學(xué) 管理科學(xué)與工程學(xué)院,遼寧 大連 116025)
隨著電子商務(wù)和社會(huì)化網(wǎng)絡(luò)營銷的迅猛發(fā)展,社會(huì)化推薦系統(tǒng)成為新的研究方向[1]。Facebook和Twitter涉足電子商務(wù),向用戶推送更加符合個(gè)性化需求的產(chǎn)品;阿里巴巴5.86億美元投資新浪微博加速實(shí)現(xiàn)社交推薦;Amazon、e-Bay等電子商務(wù)平臺(tái)也與社交網(wǎng)絡(luò)合作,強(qiáng)化用戶社交推薦體驗(yàn)。社會(huì)化推薦系統(tǒng)在實(shí)際應(yīng)用中獲得了巨大的成功,如Amazon超過30%的銷售額來自于推薦系統(tǒng);京東推薦系統(tǒng)實(shí)現(xiàn)了“場景智能推薦”,為京東貢獻(xiàn)了10%的訂單;Netflix推薦系統(tǒng)使被推薦影片的接受度有了巨大提升。但是,受推薦系統(tǒng)在電子商務(wù)領(lǐng)域重大經(jīng)濟(jì)利益的驅(qū)動(dòng),惡意用戶以非法牟利為目的,人為地向推薦系統(tǒng)注入大量的虛假用戶概貌,偽裝成目標(biāo)用戶的最近鄰,操縱改變推薦結(jié)果,使推薦系統(tǒng)面臨嚴(yán)峻的信息安全威脅,這種攻擊行為被稱為托攻擊(Shilling Attack)[2]。當(dāng)前,我國網(wǎng)絡(luò)信息安全形式嚴(yán)峻,大量有目的、不真實(shí)的信息充斥互聯(lián)網(wǎng)環(huán)境,嚴(yán)重影響了網(wǎng)民的辨識(shí)力、擾亂網(wǎng)絡(luò)秩序、妨害經(jīng)濟(jì)利益。提高推薦算法的抗攻擊能力,最大程度地降低托攻擊的負(fù)面影響,為用戶提供精準(zhǔn)、魯棒的推薦服務(wù)已經(jīng)成為信息安全領(lǐng)域的研究熱點(diǎn)。
社交網(wǎng)絡(luò)的發(fā)展為推薦技術(shù)提供了新的信息來源,其中信任關(guān)系作為現(xiàn)實(shí)社會(huì)關(guān)系的模擬和映射,直接影響用戶的購買決策,因而備受關(guān)注。將信任關(guān)系作為推薦算法的重要維度,保障了推薦結(jié)果始終來自于最受信任的用戶群,而受經(jīng)濟(jì)利益驅(qū)動(dòng)的攻擊者由于與信任用戶的行為特征存在明顯的差異,無法與正常用戶建立信任關(guān)系,被隔離在目標(biāo)用戶的可信近鄰之外,從而有效抑制了托攻擊造成的影響。因此,準(zhǔn)確度量用戶間的信任關(guān)系,成為解決托攻擊問題的關(guān)鍵[3]。
顯式信任和隱式信任是推薦算法中的兩大類信任關(guān)系。目前,顯式信任關(guān)系得到了廣泛的應(yīng)用。例如,電子商務(wù)商品推薦網(wǎng)站Epinions的用戶可以直接表示對(duì)他人的信任或不信任、電影推薦網(wǎng)站Flim Trust允許用戶將其他用戶添入可信列表。國內(nèi)外學(xué)者提出了大量基于顯式信任的推薦算法。Massa等人[4]利用信任網(wǎng)絡(luò)進(jìn)行信任權(quán)重的估算,并用信任關(guān)系代替用戶的相似度實(shí)現(xiàn)商品推薦。Golbeck等人[5]使用信任語義網(wǎng)與社交網(wǎng)絡(luò)集成的方法實(shí)現(xiàn)基于信任關(guān)系的電影推薦。Guo等人[6]提出一種基于可信Top-K個(gè)用戶近鄰的推薦算法,通過提高可信用戶近鄰選取的準(zhǔn)確性,優(yōu)化推薦精度。在進(jìn)一步的研究中,為了緩解顯式信任的稀疏性問題,研究者根據(jù)信任鏈的傳播和聚合原則計(jì)算信任值。Ziegler等人[7]提出了TidalTrust模型,使用改進(jìn)的廣度優(yōu)先搜索策略,以用戶之間的鏈接關(guān)系為基礎(chǔ)推理出用戶之間的信任關(guān)系。Hamdi等人[8]利用信任網(wǎng)絡(luò)中的信任傳播理論計(jì)算信任值,進(jìn)而構(gòu)建了TISoN模型。張琳等人[9]提出了基于推薦鏈分類的信任模型,將信息增益作為基礎(chǔ)參數(shù),使推薦信息更精準(zhǔn)。李慧等人[10]提出了TTRM推薦算法,解決了信任傳遞問題,同時(shí)通過評(píng)分權(quán)重弱化策略減輕攻擊用戶的負(fù)面影響。然而,基于顯式信任的推薦算法存在以下問題:首先,出于對(duì)個(gè)人隱私的保護(hù),在大多數(shù)系統(tǒng)中并不提供用戶的顯示信任關(guān)系。而公開可用的顯式信任數(shù)據(jù)集如Film Trust,只包含信任鏈接并沒有提供具體的信任值。另外一些數(shù)據(jù)集如Epinions,雖然提供了信任值,但是也只使用了0和1的二元組(信任,不信任)來表示。這些間接的或者同質(zhì)的二元信任值忽略了信任關(guān)系的多樣性,因此無法獲得理想的推薦效果。其次,顯式信任關(guān)系可能是表示用戶偏好方面的噪聲數(shù)據(jù)。例如,有的用戶僅僅是由于線下的社交關(guān)系(例如,同事關(guān)系)才將其他用戶聲明為可信用戶,而這兩個(gè)用戶之間并不一定具有共同的興趣偏好。最后,顯式信任的稀疏性也進(jìn)一步限制了這類方法的性能。雖然研究者通過信任傳播在某種程度上緩解了這個(gè)問題,但是同時(shí)也會(huì)帶來新的信任噪聲[11]。
相反地,隱式信任不是由用戶指定的,而是通過對(duì)用戶的歷史購買記錄、交互行為等有價(jià)值的信息分析和挖掘獲得的,與稀疏的顯式信任關(guān)系相比,隱式信任關(guān)系具有更為豐富的數(shù)據(jù)來源。另外,采用連續(xù)型數(shù)據(jù)的隱式信任能細(xì)致刻畫用戶間的信任關(guān)系強(qiáng)度。因此,近年來研究者也逐步開始了對(duì)隱式信任關(guān)系的挖掘工作,但研究尚處在起步階段。Zhang等人[12]從用戶-項(xiàng)目評(píng)分?jǐn)?shù)據(jù)中提取了一系列特征用于信任預(yù)測。賈冬艷等人[13]根據(jù)用戶-項(xiàng)目評(píng)分?jǐn)?shù)據(jù)計(jì)算用戶信任度,并綜合利用用戶相似度和用戶信任度選取可信近鄰,完成對(duì)用戶的推薦。Nepal等人[14]提出了基于關(guān)聯(lián)行為的信任模型,通過用戶與電子社區(qū)中其他用戶的交互行為來計(jì)算社交信任值。Fu等人[15]借鑒博弈理論,提出了一種基于交互的社會(huì)信任模型,有效檢測了傳播惡意信息的攻擊用戶。王鵬等人[16]根據(jù)用戶行為特征權(quán)重和特征信任值計(jì)算用戶的可信度,進(jìn)而識(shí)別異常用戶。上述研究工作大多以數(shù)據(jù)為中心度量信任關(guān)系,缺乏社會(huì)學(xué)和行為科學(xué)等相關(guān)理論的支持,構(gòu)建的信任模型無法準(zhǔn)確揭示用戶之間的聯(lián)系。因此,信任關(guān)系的研究需要社會(huì)學(xué)和行為科學(xué)中的原理和方法作為指導(dǎo),從而獲得貼近實(shí)際的信任模型。另外,現(xiàn)有方法只考慮了用戶交互產(chǎn)生的局部信任,當(dāng)用戶之間不存在直接交互活動(dòng)時(shí),無法有效預(yù)測用戶之間的隱式信任關(guān)系。在日常生活中,如果兩個(gè)用戶之間沒有直接交互經(jīng)歷,無法度量局部信任時(shí),一般會(huì)通過可信賴的朋友了解對(duì)方的聲望即全局信任從而評(píng)估對(duì)方的信譽(yù)情況。進(jìn)一步的理論研究也表明局部信任和全局信任存在一定的互補(bǔ)性,用戶的全局信任對(duì)信任評(píng)估具有重要的作用[17]。所以,綜合考慮全局信任和局部信任在信任計(jì)算精度方面更具優(yōu)勢。
基于上述分析,本文借鑒社會(huì)學(xué)和行為科學(xué)中的信任產(chǎn)生原理,在社交信任計(jì)算中綜合考慮多個(gè)信任要素,提出用戶社交信任預(yù)測模型;并充分挖掘整體的社交網(wǎng)絡(luò)結(jié)構(gòu)信息和用戶-項(xiàng)目評(píng)分?jǐn)?shù)據(jù),從用戶局部信任和用戶全局信任兩個(gè)視角量化、集成各個(gè)信任要素;最后根據(jù)用戶總體信任度提出一種基于多元隱式信任關(guān)系挖掘的抗攻擊社會(huì)化推薦算法。在兩個(gè)公開實(shí)驗(yàn)數(shù)據(jù)集上進(jìn)行了豐富的實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明了算法的有效性。
在社會(huì)學(xué)和組織行為科學(xué)領(lǐng)域關(guān)于信任的理論研究中,最具影響力的當(dāng)屬M(fèi)ayer等人[18]在總結(jié)了Hovland和Butler等23位學(xué)者的相關(guān)研究后所提出的信任前因框架模型,如圖1所示。
圖1 信任前因框架
Mayer提出的信任模型包含了三個(gè)關(guān)于信任受托人的因素:基于能力的信任(認(rèn)為被信任者有能力而產(chǎn)生的信任)、基于善意的信任(因了解被信任者有愿意將事情做好而產(chǎn)生的信任)、基于誠信的信任(因被信任者認(rèn)同并遵守一些信任者所認(rèn)可的原則而產(chǎn)生的信任);一個(gè)關(guān)于信任委托人的因素,即一個(gè)用戶信任他人的意愿,稱為信任傾向。一旦信任委托人信任了信任受托人,信任委托人愿意冒更大的風(fēng)險(xiǎn),風(fēng)險(xiǎn)承擔(dān)的結(jié)果將作為反饋來修正對(duì)受托人能力、善意和誠信的看法。信任前因框架模型在企業(yè)管理和電子商務(wù)領(lǐng)域得到了廣泛的驗(yàn)證[19,20],但是該模型還沒用于開發(fā)在線社交網(wǎng)絡(luò)環(huán)境下的定量信任模型。
信任前因框架模型根據(jù)兩個(gè)用戶之間的直接交互活動(dòng)構(gòu)建信任受托人的信任因素,因此獲得的僅僅是用戶之間的局部信任。然而,在兩個(gè)特定用戶之間的這種直接交互可能是非常稀疏的,甚至是不存在的。在這種情況下,信任委托人無法做出正確的是否信任潛在信任受托人的決定。Sankar等人[17]的研究結(jié)果表明全局信任是信任計(jì)算的重要來源之一。因此,有必要進(jìn)一步考慮其他用戶與目標(biāo)信任受托人通過交互活動(dòng)所產(chǎn)生的全局信任。本文擴(kuò)展了信任前因框架模型,考慮了來自目標(biāo)信任受托人與其他用戶交互產(chǎn)生的全局信任,該模型如圖2所示。
圖2 擴(kuò)展信任前因框架
與信任前因框架模型類似,本文所提出的擴(kuò)展信任前因框架模型也是以能力信任、善意信任、誠信信任和信任傾向四個(gè)信任要素為基礎(chǔ)。不同之處在于,本文從全局和局部兩個(gè)視角分別給出每個(gè)信任要素的形式化定義。局部信任是指通過兩個(gè)用戶之間的直接交互實(shí)現(xiàn)信任因素的定量化計(jì)算,而全局信任(圖2中加星號(hào)表示)是對(duì)其他所有用戶與目標(biāo)信任委托人或信任受托人的交互行為進(jìn)行建模。
具體地,基于全局視角的三個(gè)與信任受托人有關(guān)的因素(能力信任、善意和誠信)構(gòu)成了全局信任,而基于局部視角的能力信任和善意信任以及全局的誠信信任形成生了局部信任。特別需要說明的是,誠信信任是根據(jù)信任受托人對(duì)所有用戶的行為而不是針對(duì)某一個(gè)具體的信任委托人的行為進(jìn)行定義的,因此誠信信任只有全局的形式化定義,它同時(shí)影響全局信任和局部信任。局部信任和全局信任構(gòu)成了總體信任,進(jìn)一步結(jié)合信任委托人的信任傾向就可以實(shí)現(xiàn)個(gè)性化的信任計(jì)算。
1)基于能力的全局信任度計(jì)算
本文使用全局信譽(yù)度來衡量用戶基于能力的全局信任。在信任網(wǎng)絡(luò)G中,信任用戶uj的用戶數(shù)量和相關(guān)用戶的個(gè)人信譽(yù)情況共同決定了推薦用戶uj的全局信譽(yù)度PR(uj)。用戶Uj的全局信譽(yù)度PR(uj)的計(jì)算公式如下:
(1)
其中,T(uj)表示信任uj的用戶;PR(u1)表示u1的信譽(yù)度;Ind(u1)是u1的信任入度,即u1的信任用戶數(shù);Num表示信任網(wǎng)絡(luò)G中的用戶規(guī)模;α是調(diào)和因子。
基于上述分析,用戶uj基于能力的全局信任度計(jì)算公式如下:
(2)
2)基于善意的全局信任度計(jì)算
本文將用戶的善意與用戶在給商品評(píng)分時(shí)的寬容態(tài)度聯(lián)系起來,商品的實(shí)際質(zhì)量是評(píng)價(jià)用戶善意的基礎(chǔ)。直觀上,商品Ii的實(shí)際質(zhì)量可以用所有用戶對(duì)商品Ii的平均評(píng)分衡量。但是,其他用戶對(duì)商品Ii的評(píng)分也受自身評(píng)分標(biāo)準(zhǔn)的影響。此外,商品Ii的實(shí)際質(zhì)量還受對(duì)其評(píng)分用戶數(shù)量的影響。本文采用下面的公式計(jì)算商品Ii的實(shí)際質(zhì)量:
(3)
其中,IQ(Ii)表示Ii的實(shí)際質(zhì)量,Ui表示評(píng)價(jià)過Ii的用戶,ruj,Ii是uj對(duì)Ii的評(píng)分,lluj,Ii表示uj對(duì)Ii的評(píng)分寬容程度,β是調(diào)節(jié)因子,控制lluj,Ii對(duì)ruj,Ii的影響。
計(jì)算局部寬容時(shí),利用ui與uj共同評(píng)價(jià)商品的評(píng)分標(biāo)準(zhǔn),公式如下:
(4)
其中,lluj(Iui,uj)表示uj的局部寬容度,Iui,uj表示ui與uj共同評(píng)分商品集。
計(jì)算全局寬容時(shí),利用uj對(duì)所有項(xiàng)目的評(píng)分標(biāo)準(zhǔn),公式如下:
(5)
其中,gluj(Iuj)表示uj的全局寬容度,minll和maxll分別表示uj局部寬容度的最小值和最大值,Iuj表示uj評(píng)價(jià)過的商品集。
得到uj的全局寬容度后,本文對(duì)全局寬容度進(jìn)行規(guī)范化處理得到uj基于善意的全局信任度,公式如下:
(6)
其中,mingl和maxgl分別表示所有用戶中全局寬容度的最小值和最大值。
3)基于誠信的全局信任度計(jì)算
誠信通常是指用戶行為的一致性,即堅(jiān)持一套社會(huì)規(guī)范。在電子商務(wù)推薦系統(tǒng)中,用戶評(píng)分行為所體現(xiàn)的一致性意味著信任受托人給出的評(píng)分總是接近大多數(shù)用戶(被視為社會(huì)規(guī)范)。基于這種考慮,本文采用Pearson相關(guān)系數(shù)來度量用戶與其他用戶評(píng)分的相似度,利用相似度衡量基于誠信的全局信任度,具體計(jì)算公式如下:
(7)
1)基于能力的局部信任度計(jì)算
本文采用用戶交互行為中的推薦準(zhǔn)確率度量基于能力的局部信任度。首先,采用Pearson相關(guān)系數(shù)計(jì)算ui和uj的相似度:
(8)
然后,將用戶uj當(dāng)作唯一的推薦用戶向用戶ui推薦商品Ik,Ik∈Iui,uj,根據(jù)下列公式預(yù)測ui對(duì)Ik的評(píng)分:
(9)
(10)
其中,rmax和rmin分別表示預(yù)測值和實(shí)際值的最大差值和最小差值。
最后,通過下列公式計(jì)算用戶uj向用戶ui推薦商品的準(zhǔn)確率:
(11)
基于上述分析,用戶uj基于能力的局部信任度計(jì)算公式如下:
(12)
2)基于善意的局部信任度計(jì)算
與基于善意的全部信任度類似,本文通過對(duì)用戶uj局部寬容度的規(guī)范化處理來計(jì)算用戶uj基于善意的局部信任度:
(13)
本文采用ui所信任的用戶數(shù)Nui來度量信任傾向。為了避免Nui過大對(duì)整體信任計(jì)算結(jié)果造成的影響,利用神經(jīng)網(wǎng)絡(luò)中常用的Sigmoid函數(shù)將其取值范圍控制在[0,1]范圍之內(nèi),具體公式如下:
(14)
其中,Nui表示用戶ui所信任的用戶數(shù)量,γ和μ是控制函數(shù)曲線斜率和中心對(duì)稱點(diǎn)的控制參數(shù),當(dāng)Nui足夠大時(shí)ζ|Nui,γ,μ|趨近于1,當(dāng)Nui很小時(shí),ζ|Nui,γ,μ|趨近于0。
基于上述分析,用戶ui的信任傾向計(jì)算公式如下:
Puiζ|Nui,γ,μ|
(15)
從全局和局部兩個(gè)視角提取和量化基于能力、善意以及誠信的信任因素之后,再結(jié)合用戶的信任傾向,就可以獲得用戶ui對(duì)用戶uj的總體信任度計(jì)算公式:
(16)
(17)
(18)
公式(17)中包含一個(gè)常數(shù)0.3,常數(shù)的設(shè)置一方面是為了均衡局部信任度和全局信任度的取值范圍,另一方面可以認(rèn)為是基于誠信的全局信任因素對(duì)局部信任度的影響。公式(16)考慮了全局信任和局部信任兩個(gè)視角,即使用戶ui和用戶uj之間沒有直接交互行為,也可以通過全局信任度了解其他用戶對(duì)用戶uj的信任評(píng)價(jià),為用戶ui是否信任用戶uj提供決策依據(jù)。
傳統(tǒng)推薦算法將評(píng)分矩陣作為唯一的信息源,不參看其他的可用信息,這正是推薦算法對(duì)托攻擊高度敏感的根源所在。如果推薦算法能吸納攻擊者難以篡改的信息,勢必會(huì)增強(qiáng)推薦系統(tǒng)的魯棒性。在實(shí)際的交易過程中,用戶更愿意接受來自朋友或者可信用戶的推薦結(jié)果,通過信任關(guān)系可以為目標(biāo)用戶選取可靠的近鄰用戶,從而提高推薦算法的抗攻擊能力和推薦精度。
針對(duì)以上分析,本文提出了基于多元隱式信任關(guān)系挖掘的抗攻擊社會(huì)化推薦算法,其核心思想如下:
(1)根據(jù)目標(biāo)用戶ui和目標(biāo)項(xiàng)目Ik選取候選近鄰集合C(ui);
(3)根據(jù)用戶之間的總體信任度Tui,uj進(jìn)行降序排列,選擇總體信任度Tui,uj最高的TOP-K個(gè)用戶作為可信近鄰集合TN(ui);
(4)根據(jù)可信近鄰集合TN(ui)中的用戶評(píng)分信息,利用公式(19)采用多元隱式信任關(guān)系的協(xié)同過濾算法計(jì)算目標(biāo)用戶ui對(duì)推薦商品Ik的預(yù)測評(píng)分:
(19)
基于上述描述,利用本文所提出的多元隱式信任關(guān)系模型實(shí)現(xiàn)可信推薦的具體過程如下:
算法1CF-ABIP算法
輸入:用戶-項(xiàng)目評(píng)分矩陣R、用戶集合U、原始信任矩陣、目標(biāo)用戶ui
輸出:目標(biāo)用戶ui對(duì)推薦商品Ik的預(yù)測評(píng)分rui,Ik
Begin
1.C(ui)←φ
2.TN(ui)←φ
3.for eachuj∈C(ui)do
4.computePR(uj)by Equation(1)
6.computeIQ(Ii)by Equation (3)/*randomly initialize local leniencylluj,Iiwith small value in(0,1)*/
7.update local leniencylluj,Iiby Equation(4)
9.computeRA(ui,uj)by Equation (7)-(11)
12.computeζ|Nui,γ,μ|by Equation(14)
13.Pui←ζ|Nui,γ,μ|
14.computeTui,ujby Equation(16)
15.end for
16.TN(ui)←Top-K users with the greatestTui,uj
17.rui,Ik←CR-ABIP(ui,Ik)
End
算法復(fù)雜度是指算法運(yùn)行時(shí)需要的空間資源和時(shí)間資源,所以算法復(fù)雜度分析通常包括算法空間復(fù)雜度分析和算法時(shí)間復(fù)雜度分析。
通過上述對(duì)CF-ABIP算法的描述可知,算法執(zhí)行過程中主要存儲(chǔ)用戶-項(xiàng)目評(píng)分矩陣、用戶集合、原始信任矩陣、目標(biāo)用戶的候選近鄰集合、可信近鄰集合及預(yù)測評(píng)分,占用存儲(chǔ)空間較小,并且存儲(chǔ)空間隨著用戶數(shù)量的增加而線性增加,存儲(chǔ)空間數(shù)量級(jí)不變。另外,近年來硬件技術(shù)不斷成熟,較低的存儲(chǔ)代價(jià)就能獲得較高的存儲(chǔ)容量,算法空間復(fù)雜度對(duì)算法的影響在漸漸減弱。因此,對(duì)CF-ABIP算法時(shí)間復(fù)雜度進(jìn)行比較分析成為本節(jié)的重點(diǎn)。
CF-ABIP算法的時(shí)間開銷集中在全局信任度計(jì)算、局部信任度計(jì)算、用戶信任傾向的計(jì)算、信任度整合、選擇總體信任度最大的TOP-K個(gè)用戶、預(yù)測評(píng)分六個(gè)部分。
(1)全局信任度計(jì)算
(2)局部信任度計(jì)算
(3)用戶信任傾向的計(jì)算
Pui:用戶信任傾向//執(zhí)行Num次,Num表示信任網(wǎng)絡(luò)中的用戶數(shù)。
(4)信任度整合
Tuiuj:用戶之間的總體信任度//執(zhí)行Unum次,Unum表示推薦系統(tǒng)的用戶總數(shù)。
(5)選擇總體信任度最大的TOP-K個(gè)用戶
(6)預(yù)測評(píng)分
r′ui,Ik:根據(jù)K個(gè)信任用戶計(jì)算預(yù)測評(píng)分//執(zhí)行kI次,k表示近鄰數(shù),I表示商品數(shù)。
算法執(zhí)行總次數(shù)
計(jì)算得到時(shí)間復(fù)雜度:
綜上,本文提出的CF-ABIP算法沒有大幅增加空間復(fù)雜度,時(shí)間復(fù)雜度和對(duì)比算法具有相同的數(shù)量級(jí)別,沒有增加額外的時(shí)間開銷,適合大規(guī)模數(shù)據(jù)環(huán)境下的應(yīng)用。
本文采用Ciao和Epinions兩個(gè)公開實(shí)驗(yàn)數(shù)據(jù)集驗(yàn)證本文算法的推薦精度和抗攻擊能力。
(1)Ciao Dataset:Ciao是著名的電子社區(qū),Ciao數(shù)據(jù)集包含17615個(gè)用戶對(duì)16121個(gè)不同項(xiàng)目的72665條項(xiàng)目評(píng)分記錄,評(píng)分范圍為1~5,同時(shí)Ciao數(shù)據(jù)集還收集了19533條用戶之間的信任關(guān)系記錄。
(2)Epinions Dataset:Epinions是著名的大眾消費(fèi)者點(diǎn)評(píng)網(wǎng)站,Epinions數(shù)據(jù)集包括49298個(gè)用戶對(duì)139738個(gè)不同的項(xiàng)目的664823條評(píng)分記錄,評(píng)分范圍為1~5。同時(shí)Epinions數(shù)據(jù)集還包含了487183條用戶之間信任關(guān)系記錄。
為了防止過擬合問題,本文采用5-folder crossvalidation方法。將數(shù)據(jù)集分為5個(gè)子集,交叉驗(yàn)證重復(fù)5次,每次選擇一個(gè)子集做一次測試集,其余的作為訓(xùn)練集。并將5次的平均交叉驗(yàn)證的平均值作為結(jié)果。實(shí)驗(yàn)中采用推薦研究領(lǐng)域流行的評(píng)價(jià)指標(biāo):平均絕對(duì)誤差MAE和平均預(yù)測偏差A(yù)PS。平均絕對(duì)誤差MAE和平均預(yù)測偏差PAS的計(jì)算公式如下:
(20)
(21)
將本文提出的基于多元隱式信任關(guān)系挖掘的抗攻擊社會(huì)化推薦算法CF-ABIP與傳統(tǒng)協(xié)同過濾推薦算法CF、文獻(xiàn)[13]提出的CF-DNC算法、本文算法的退化算法CF-ABIPl(與本文方法基本一致,唯一區(qū)別在于退化算法僅考慮局部信任)、以及僅考慮一種信任要素的算法(包括僅考慮能力信任的算法CF-A、僅考慮善意信任的算法CF-B、僅考慮誠信信任的算法CF-I、僅考慮用戶信任傾向的算法CF-P)進(jìn)行對(duì)比實(shí)驗(yàn)。采用Ciao和Epinions兩個(gè)公開實(shí)驗(yàn)數(shù)據(jù)集,以MAE值作為評(píng)測指標(biāo)。實(shí)驗(yàn)結(jié)果如圖3~圖4所示。
圖3 不同k值下Ciao數(shù)據(jù)集的推薦精度對(duì)比
分析圖3和圖4的實(shí)驗(yàn)結(jié)果可知,Ciao數(shù)據(jù)集和Epinions數(shù)據(jù)集中當(dāng)可信近鄰集合TN(ui)的用戶數(shù)k分別取10和20時(shí)推薦算法的推薦精度最佳。另外,在兩個(gè)數(shù)據(jù)集中本文的CF-ABIP算法均獲得了最低MAE值,表明該算法具有較高的推薦精度。具體分析如下:(1)在Ciao數(shù)據(jù)集中,當(dāng)可信近鄰數(shù)k取10時(shí),CF-ABIP算法的推薦精度比CF和CF-DNC算法分別提高了約30%和15%,比基于單一信任因素的CF-A、CF-B、CF-I、CF-P算法分別提高了約14%、16%、25%、34%。在Epinions數(shù)據(jù)集中,當(dāng)可信近鄰數(shù)k取20時(shí),CF-ABIP算法的推薦精度比CF和CF-DNC算法分別提高了約22%和11%,比基于單一信任因素的CF-A、CF-B、CF-I、CF-P算法分別提高了約11%、13%、21%、30%。這說明社交網(wǎng)絡(luò)中的信任關(guān)系可以改善推薦精度,尤其是本文的CF-ABIP算法以社會(huì)學(xué)和行為科學(xué)中的信任前因框架模型為基礎(chǔ),綜合考慮了多個(gè)信任要素,因此可信近鄰的選擇更加精確,有效提高了推薦精度。(2)另外值得一提的是,與CF-ABIPl算法相比,CF-ABIP算法推薦精度的提高幅度更為顯著。在Ciao數(shù)據(jù)集中,當(dāng)可信近鄰數(shù)k取10時(shí),CF-ABIP算法的推薦精度比本文算法的退化算法CF-ABIPl提高了約6%。在Epinions數(shù)據(jù)集中,當(dāng)可信近鄰數(shù)k取20時(shí),CF-ABIP算法的推薦精度比本文算法的退化算法CF-ABIPl提高了約5%。這說明全局信任度對(duì)總體信任度的計(jì)算具有積極作用,綜合考慮用戶全局信任和用戶局部信能進(jìn)一步提高推薦精度。(3)在Ciao和Epinions數(shù)據(jù)集中,CF-P算法的推薦精度都是最低的。這一方面說明顯示信任關(guān)系是非常稀疏的,僅僅根據(jù)顯示信任關(guān)系計(jì)算的信任傾向不能有效提高推薦精度,另外這也表明本文對(duì)用戶信任傾向的計(jì)算還不夠完善。
假設(shè)Ciao和Epinions數(shù)據(jù)集中不存在攻擊概貌,人為注入隨機(jī)攻擊(Random Attack)、均值攻擊(Average Attack)、流行攻擊(Bandwagon Attack)各占1/3的混合攻擊概貌,對(duì)比在填充率分別為3%,5%,10%,攻擊規(guī)模為1%、3%、5%的情形下本文提出的CF-ABIP與CF、CF-DNC、CF-ABIPl四種算法的MAE值,實(shí)驗(yàn)結(jié)果如表1~表2所示。
表1 混合攻擊情況下Ciao數(shù)據(jù)集的推薦精度對(duì)比表
表2 混合攻擊情況下Epinions數(shù)據(jù)集的推薦精度對(duì)比表
分析表1和表2的實(shí)驗(yàn)結(jié)果可知,Ciao數(shù)據(jù)集和Epinions數(shù)據(jù)集中隨著攻擊規(guī)模和填充規(guī)模的不斷增加,四種推薦算法的MAE值都有不同程度的上升,這表明隨著托攻擊用戶概貌的增加會(huì)降低推薦算法的推薦精度。但是在不同的攻擊規(guī)模和攻擊強(qiáng)度下本文的CF-ABIP算法均獲得了最小MAE值,體現(xiàn)了較強(qiáng)的抗攻擊能力。具體分析如下:(1)在Ciao數(shù)據(jù)集中,在受到混合攻擊的情況下,CF-ABIP算法的推薦精度比CF、CF-DNC以及CF-ABIPl算法分別提高了約30%、15%、6%。在Epinions數(shù)據(jù)集中,在受到混合攻擊的情況下,CF-ABIP算法的推薦精度比CF、CF-DNC以及CF-ABIPl算法分別提高了約25%、13%、6%。這說明本文提出的多元隱式信任關(guān)系模型能比較完整精確的計(jì)算用戶之間的社交信任度,從而有效地將攻擊概貌隔離在可信近鄰之外,提高了推薦算法的抗攻擊能力。另外需要特別指出的是,在受到混合攻擊的情況下,與CF-ABIPl算法相比CF-ABIP算法的推薦精度更高。這說明綜合考慮全局信任和局部信任可以有效緩解用戶之間由于缺乏直接交互活動(dòng)對(duì)信任計(jì)算的負(fù)面影響,更有利于度量用戶之間的總體信任度,進(jìn)一步提高了算法的魯棒性。(2)對(duì)比注入托攻擊前后的實(shí)驗(yàn)結(jié)果可知,在Ciao和Epinions數(shù)據(jù)集中,CF-ABIP算法是四種算法中注入托攻擊前后MAE值變化最小的算法,這也進(jìn)一步表明了本文方法具有較好的抗攻擊能力。
為了深入探討本文算法的抗攻擊能力,采用Ciao和Epinions數(shù)據(jù)集,在填充率分別為3%,5%,10%,攻擊規(guī)模為1%、3%、5%的情形下,實(shí)驗(yàn)結(jié)果如表3~表4所示。
表3 混合攻擊情況下Ciao數(shù)據(jù)集的平均預(yù)測偏差對(duì)比表
表4 混合攻擊情況下Epinions數(shù)據(jù)集的平均預(yù)測偏差對(duì)比表
從表3~表4可以看出,在同一填充規(guī)模下,無論是Ciao數(shù)據(jù)集還是Epinions數(shù)據(jù)集中,四種推薦算法的值都隨攻擊規(guī)模的增大而增大,這表明隨著攻擊用戶數(shù)的增加推薦質(zhì)量受到了不同程度的影響。在各種填充規(guī)模和攻擊規(guī)模的組合情形下,CF-ABIP算法都比CF算法和CF-DNC算法預(yù)測偏差要小很多,比CF-ABIPl算法的預(yù)測偏差也要略小一些,說明CF-ABIP算法對(duì)于用戶概貌攻擊具有較強(qiáng)的抵抗能力。具體分析如下:(1)在Ciao數(shù)據(jù)集中,與傳統(tǒng)的協(xié)同過濾算法CF相比,CF-ABIP算法、CF-ABIPl算法以及CF-DNC算法的預(yù)測偏差分別減少了約37%、25%、19%。在Epinions數(shù)據(jù)集中,在受到混合攻擊的情況下,與傳統(tǒng)的協(xié)同過濾算法CF相比,CF-ABIP算法、CF-ABIPl算法以及CF-DNC算法的預(yù)測偏差分別減少了約26%、21%、15%。這說明信任關(guān)系抑制了托攻擊對(duì)推薦算法的負(fù)面影響,改善了推薦算法的抗攻擊能力。(2)進(jìn)一步分析可知:在Ciao數(shù)據(jù)集中,與CF-DNC算法相比,CF-ABIP算法和CF-ABIPl算法的預(yù)測偏差分別減少了約19%、10%。在Epinions數(shù)據(jù)集中,與CF-DNC算法相比,CF-ABIP算法和CF-ABIPl算法的預(yù)測偏差分別減少了約17%、11%。這是由于CF-DNC算法雖然考慮了用戶之間社交信任關(guān)系,但是與本文算法相比CF-DNC算法僅采用推薦準(zhǔn)確率計(jì)算用戶信任度,沒有考慮基于善意、誠信產(chǎn)生信任度以及用戶的信任傾向等信任因素,信任關(guān)系沒有被充分挖掘。另一方面CF-DNC算法先根據(jù)目標(biāo)用戶與所有候選鄰居的評(píng)分相似度建立興趣相似度集合,然后選擇該集合中信任度最大的一個(gè)用戶作為目標(biāo)用戶的可信鄰居,并實(shí)現(xiàn)評(píng)分預(yù)測。但是托攻擊與真實(shí)用戶的相似度很高,極端情況下,最近鄰全部由攻擊概貌構(gòu)成。在這種情況下CF-DNC算法的性能就會(huì)受到很大的影響。而本文方算法采用信任關(guān)系替代相似關(guān)系進(jìn)行可信最近鄰的選擇,有效地將攻擊用戶隔離在最近鄰集合之外,從而提高了算法的抗攻擊能力。另外,與CF-ABIPl算法相比CF-ABIP算法的值A(chǔ)PS更低。與之前的實(shí)驗(yàn)結(jié)果類似,這體現(xiàn)了綜合考慮全局信任和局部信任對(duì)總體信任度量的積極作用。
本文從全局信任和局部信任兩個(gè)視角對(duì)社會(huì)學(xué)和組織行為科學(xué)領(lǐng)域的信任前因框架模型進(jìn)行擴(kuò)展,并將擴(kuò)展的信任前因框架模型引入推薦系統(tǒng)中實(shí)現(xiàn)隱式信任關(guān)系預(yù)測,該信任預(yù)測模型比較細(xì)致、精確地刻畫了用戶之間隱含的社交信任關(guān)系,綜合考慮全局信任和局部信任也可以在用戶之間缺乏直接交互的情況下提高信任計(jì)算的準(zhǔn)確度。在多元隱式信任關(guān)系預(yù)測模型的基礎(chǔ)上進(jìn)一步提出了一種基于多元隱式信任關(guān)系挖掘的抗攻擊社會(huì)化推薦算法,利用用戶的總體信任度選取目標(biāo)用戶的可信最近鄰,有效剔除托攻擊用戶,最終實(shí)現(xiàn)精準(zhǔn)、魯棒的個(gè)性化推薦服務(wù)。在后續(xù)的研究工作中,可以考慮更多的用戶交互特征,例如用戶交互持續(xù)的時(shí)間和頻度等。從而更好的提取信任因素,進(jìn)一步提高本文算法的推薦性能。