徐瑩, 陶虎成
(1. 上海公安高等??茖W(xué)校教輔中心,上海 200137;2. 深圳市麥達(dá)數(shù)字股份有限公司, 深圳 518000)
融入爭議項(xiàng)的協(xié)同過濾推薦方法
徐瑩1, 陶虎成2
(1. 上海公安高等??茖W(xué)校教輔中心,上海 200137;2. 深圳市麥達(dá)數(shù)字股份有限公司, 深圳 518000)
通過對爭議項(xiàng)的判定與選擇,過濾出在用戶群中爭議最大,同時目標(biāo)用戶對其接受概率較高的物品增加到待推薦物品中去,從而增大了處于長尾位置物品被推薦的概率。在適度降低推薦結(jié)果精確度的前提下,通過擴(kuò)大推薦結(jié)果的覆蓋率增強(qiáng)了推薦結(jié)果的新穎性,提高用戶對推薦結(jié)果的驚喜度。
協(xié)同過濾; 推薦系統(tǒng); 模糊不確定性; 個性化服務(wù)
信息技術(shù)特別是互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,導(dǎo)致人們獲取信息的途徑與方式發(fā)生了巨大的變化,這使得人們無法及時、準(zhǔn)確地從數(shù)據(jù)海洋中獲得滿足自身需要的信息。搜索引擎作為一種人們面對海量數(shù)據(jù)時較為有效的檢索與獲取信息的方式,仍舊無法滿足不同背景的使用者在不同時期的個性化信息需求。推薦系統(tǒng)則成為個性化信息服務(wù)領(lǐng)域的重要手段之一,并已廣泛應(yīng)用于信息檢索、電子商務(wù)、互聯(lián)網(wǎng)廣告等眾多領(lǐng)域。
推薦系統(tǒng)主要是通過分析用戶與物品(項(xiàng)目)之間的關(guān)系,幫助人們從海量的數(shù)據(jù)中提取出符合其自身需求的個性化信息。從信息過濾角度來講,可以將其分為三類[1]:(1) 協(xié)同過濾推薦:協(xié)同過濾算法的出發(fā)點(diǎn)是具有相同或者相似興趣偏好的用戶,對物品的評價也是類似的。通過計(jì)算與目標(biāo)用戶行為記錄相似用戶的喜好,來預(yù)測目標(biāo)用戶可能感興趣的物品。算法無需用戶行為日志之外的其他數(shù)據(jù),但是存在數(shù)據(jù)稀疏、冷啟動等問題。(2) 基于內(nèi)容的推薦:不需要依據(jù)用戶對項(xiàng)目的評價意見,而是計(jì)算用戶有過行為記錄物品的特征信息與其他項(xiàng)目物品特征信息之間的相似性,進(jìn)而選擇相似度較高的項(xiàng)目進(jìn)行推薦。由于不需要其他用戶的匹配信息,消除了基于物品系統(tǒng)過濾的冷啟動問題,但是對物品特征的提取相對困難,當(dāng)對物品屬性和用戶特征類別定義稍有偏差時,就很難做出相對精確的推薦。(3) 混合式推薦:按照不同的方式將以上兩種推薦方法進(jìn)行組合,取長補(bǔ)短,這就是混合推薦的思想。組合推薦的重點(diǎn)在于采用何種策略來組合不同的推薦算法,常用的有混合型、特征組合型、加權(quán)型,以及轉(zhuǎn)換型等。
在常用推薦策略中,協(xié)同過濾算法因不依賴于抽取對象的特征信息來了解用戶的興趣,同時還能發(fā)現(xiàn)用戶潛在興趣而備受歡迎,已成為目前應(yīng)用最為廣泛的推薦方法。一個好的推薦系統(tǒng)應(yīng)該盡可能地展現(xiàn)用戶感興趣的物品,但協(xié)同過濾面臨一個主要問題就是:越是熱門物品得到推薦的概率越大,新添加到系統(tǒng)中的物品和低曝光率物品往往因缺少評分?jǐn)?shù)據(jù)或評分?jǐn)?shù)據(jù)不足而無法得到推薦,即所謂的“冷啟動”問題。本文基于用戶的歷史評分記錄,選擇不確定性最大的物品作為待推薦對象,從而克服了推薦待選對象總是從最熱門物品中選擇的問題。本文第2節(jié)給出了基本的協(xié)同過濾算法;第3節(jié)介紹了本文的主要工作; 第4節(jié)針對所提算法進(jìn)行了實(shí)驗(yàn)驗(yàn)證;最后是本文的總結(jié)。
1.1 協(xié)同過濾算法概述
協(xié)同過濾技術(shù)通常使用用戶-項(xiàng)目評分矩陣R如下式所示。
其中,rui代表用戶u對項(xiàng)目i的評分值。根據(jù)一定的度量標(biāo)準(zhǔn)在評分?jǐn)?shù)據(jù)矩陣基礎(chǔ)上找出用戶的“最近鄰居”,基于這些“最近鄰居”的評分,計(jì)算預(yù)測目標(biāo)用戶對項(xiàng)目的評分,進(jìn)而產(chǎn)生推薦。
(1)
余弦相似性沒有考慮不同用戶的評分尺度問題,修正的余弦相似性度量方法通過減去用戶對項(xiàng)目的平均評分來改善上述問題,如式(2)。
(2)
某些情況下,用戶之間的相關(guān)性也可以用來作為尋找“最近鄰居”的標(biāo)準(zhǔn),相關(guān)性是指兩個實(shí)體之間相關(guān)聯(lián)的程度,比如“協(xié)同過濾”和“推薦系統(tǒng)”在字面意義上的相似性非常低,但卻是密切相關(guān)的兩個概念。在協(xié)同過濾中常用皮爾遜相似度來表示用戶之間相關(guān)的程度,如式(3)。
(3)
本文采用修正余弦相似性,如式(2)作為用戶間相似度的評價標(biāo)準(zhǔn),與之對應(yīng),用戶a對項(xiàng)目的評分預(yù)測可通過計(jì)算得到,如式(4)。
(4)
通過用戶評分預(yù)測的過程可知:協(xié)同過濾算法由于主要推薦相似用戶評分較高的物品。這就造成了越是熱門物品,被推薦的次數(shù)越多,而用戶本來感興趣的非熱門物品則得不到推薦的機(jī)會。
2.2 已有工作的分析
冷啟動和評分?jǐn)?shù)據(jù)稀疏是協(xié)同過濾面臨相互關(guān)聯(lián)的兩個主要問題。解決此類問題的最直接方法就是對空值進(jìn)行填充,例如文獻(xiàn)[2]利用模糊聚類算法根據(jù)用戶情景信息對用戶群進(jìn)行分類,進(jìn)而使用Slope One算法填充評分矩陣來提高推薦的精度。但是系統(tǒng)過濾本身就是一個對空值進(jìn)行預(yù)測的算法,其本質(zhì)也就是空值填充,同時預(yù)處理時填入數(shù)據(jù)的準(zhǔn)確性也有待考量。因而眾多科研人員轉(zhuǎn)而通過對用戶或項(xiàng)目進(jìn)行分類或聚類處理,如文獻(xiàn)[3]提出了一種在知識層面比較用戶相似度的方法,利用項(xiàng)目的分類信息,避免了把用戶整體打分作為單個向量的弊端,此方法在數(shù)據(jù)極度稀疏的情況下,仍能取得較高的推薦質(zhì)量。文獻(xiàn)[4]根據(jù)項(xiàng)目之間的相似性進(jìn)行聚類,并以此計(jì)算用戶的局部相似度;同時,利用重疊度因子來對用戶間的相似性進(jìn)行精細(xì)調(diào)整,提高了在評分?jǐn)?shù)據(jù)稀疏性框架推薦結(jié)果的質(zhì)量。文獻(xiàn)[5]也使用類似重疊度因子的方式來對用戶相似度進(jìn)行調(diào)校,以提高推薦結(jié)果的準(zhǔn)確率。文獻(xiàn)[6]根據(jù)目標(biāo)用戶與各用戶群體之間的關(guān)系,通過合并相應(yīng)的聚簇來實(shí)現(xiàn)對相似用戶的精確查找,此方法在高維稀疏環(huán)境下取得了較好的效果。
在分類或聚類模型的基礎(chǔ)上,又有學(xué)者進(jìn)一步加入了用戶間的信任信息,例如:黃創(chuàng)光等[7]通過對用戶和項(xiàng)目進(jìn)行相似性匹配,并選擇目標(biāo)用戶的最近鄰居的信任子群,并通過不確定緊鄰的動態(tài)度量方法,來對預(yù)測結(jié)果進(jìn)行平衡,此方法可以有效的應(yīng)對評分矩陣極度稀疏而帶來的不利影響。文獻(xiàn)[8]通過利用評分矩陣中的共同評分項(xiàng),計(jì)算用戶間的信任關(guān)系,并通過綜合用戶相似度和信任關(guān)系得到用戶之間的偏好關(guān)系,進(jìn)而完成推薦。此類算法雖然部分解決了冷啟動和數(shù)據(jù)稀疏問題,但冷門物品被推薦概率低的現(xiàn)象未曾得到根本改善。
類似文本檢索中的IDF概念,Breese等人[9]通過對物品的評分進(jìn)行變換,通過降低對廣受歡迎物品的權(quán)重提出了反用戶頻率(inverse user frequency)來解決此問題。文獻(xiàn)[10]則通過方差權(quán)重因子來降低被頻繁推薦物品的重要性。這兩種方法的本質(zhì)都是提高具有高方差評分值物品的作用來提高被推薦結(jié)果的覆蓋率。
在文獻(xiàn)[6,10,11]工作的基礎(chǔ)上,本文選擇用戶喜好傾向最難確定的物品為爭議站產(chǎn)品,并通過加權(quán)合并爭議項(xiàng)和傳統(tǒng)協(xié)同過濾推薦結(jié)果,提高最終推薦結(jié)果中用戶潛在感興趣且新穎性高的物品出現(xiàn)的幾率。
對于用戶來說,只有極少數(shù)的物品是確定喜歡與確定不喜歡的,對于剩余的絕大多數(shù)物品是介于喜歡和不喜歡之間,喜歡的程度可以用模糊數(shù)來表示。
當(dāng)τui=0時,可以確定用戶不喜歡此物品,此時無推薦此物品的必要,當(dāng)τuj=1時,可以確定用戶喜歡此物品,大多數(shù)情況下用戶可能已經(jīng)對此物品有所了解,雖然推薦結(jié)果精確,但是往往新穎性稍遜,同時給用戶的驚喜度也較低。
當(dāng)τuj=0.5時,介于用戶喜歡與不喜歡的臨界值,對于用戶可能接受的物品來說,此時只要有合適的理由,用戶接受此物品的概率較大,同時對用戶來說又可能有相對較高的新穎性和驚喜度?;诖死砟?,通過判定用戶可能處于最不確定位置的物品為推薦對象,作為輔助增加到待推薦列表中去,從而避免了每次推薦的結(jié)果都是從熱門物品中選擇的問題,增加了處于長尾位置物品被推薦的幾率。
由于用戶興趣度τuj=0.5時物品不確定性最大,我們稱之為爭議項(xiàng)?;谠u分矩陣Rui(如圖1所示),令M為所有對物品評過分的用戶集合,scoreuj指用戶u對項(xiàng)目j的評分值,n為評分區(qū)間的上限,δ為趨于0的閾值。則爭議項(xiàng)集合S可定義為用戶評分均值屬于Squa的集合,如式(5)。
(5)
以爭議項(xiàng)為推薦候選集合,使用協(xié)同過濾算法可以得到基于爭議項(xiàng)的待推薦集合,由于爭議項(xiàng)往往具有相對較低的評分值,可通過給予一定閾值以提高其最終被推薦的概率,
由于爭議項(xiàng)處于長尾位置,其預(yù)測評分值往往相對較低,可乘以一個適當(dāng)?shù)臋?quán)重以提高其最終被推薦的概率,令C為爭議項(xiàng)集合,則用戶u對產(chǎn)品的評分預(yù)測值,為式(6)。
(6)
其中,ω為對爭議項(xiàng)評分值的權(quán)重,此值為大于等于1的實(shí)數(shù),當(dāng)ω=1時,算法就退化為傳統(tǒng)協(xié)同過濾方法,此值越大則處于長尾位置的爭議項(xiàng)被推薦的概率越大,推薦結(jié)果的多樣性就越高。此權(quán)重可根據(jù)實(shí)際應(yīng)用需求通過實(shí)驗(yàn)得到,一般取值范圍可在1.2-1.8之間。具體推薦方案如下:
算法1:基于爭議項(xiàng)預(yù)處理的混合協(xié)同過濾算法
step 1:爭議項(xiàng)的確定:根據(jù)公式(5)確定爭議項(xiàng)。
step 2:計(jì)算用戶可能感興趣的爭議項(xiàng):
step 2-1:查找與用戶興趣相似的用戶集群:使用修正余弦相似性(公式2)選擇前個相似度最大,且對爭議項(xiàng)有過評分的用戶作為興趣相似用戶群;
step 2-2:根據(jù)公式(4)計(jì)算目標(biāo)用戶對待推薦爭議項(xiàng)的評分值,并選擇前個物品作為目標(biāo)用戶感興趣的待推薦物品集合S。
step 3:使用傳統(tǒng)協(xié)同過濾算法得到待推薦物品集合R。
step 4:物品推薦:
step 4-1:將集合S中的評分值乘以權(quán)重ω;
step 4-2:合并加權(quán)后的集合S和集合R,并按評分值從高到低的順序排列,選擇s前個物品作為推薦結(jié)果。
4.1 數(shù)據(jù)集
本文所用測試數(shù)據(jù)及來自GroupLen提供的Movielens 1M測試數(shù)據(jù)集(http://www.grouplens.org/system/files/ml-1m.zip),包含來自3900名用戶對6040部電影的1KM條評分。評分范圍從1-5,分別表示“非常差”、“差”、“一般”、“好”、“非常好”5個級別,且所有用戶的評分記錄均在20條以上。
數(shù)據(jù)集主要包括3個文本文件:users.dat和movies.dat分別記錄了用戶、電影的相關(guān)信息,ratings.dat記錄了用戶對電影的評分情況。實(shí)驗(yàn)按照7∶1的比率隨機(jī)從ratings.dat中提取數(shù)據(jù)分別作為訓(xùn)練集和測試集。實(shí)驗(yàn)過程為:1) 根據(jù)訓(xùn)練集數(shù)據(jù)計(jì)算爭議項(xiàng)(電影);2) 根據(jù)用戶評分記錄分別以爭議項(xiàng)和物品全域內(nèi)預(yù)測用戶對其潛在評分;3) 針對有預(yù)期評分值的電影計(jì)算準(zhǔn)確率和覆蓋率。
4.2 評價指標(biāo)
有多種指標(biāo),可分別從不同角度來對推薦系統(tǒng)的性能進(jìn)行評測。如準(zhǔn)確率、覆蓋率、新穎性、驚喜度、信任度,以及實(shí)時性等。有些指標(biāo)可以通過定量計(jì)算獲取如準(zhǔn)確率、覆蓋率等,有些則只能通過用戶的主觀意志出發(fā)進(jìn)行定性分析,如信任度、驚喜度、多樣性等。本文的出發(fā)點(diǎn)是提高推薦結(jié)果的多樣性與驚喜度,但是由于這兩個標(biāo)準(zhǔn)更依賴于用戶的主觀反應(yīng),而且很難量化,因而采用了準(zhǔn)確率和推薦結(jié)果覆蓋率作為度量標(biāo)準(zhǔn)??傮w來說,在保證準(zhǔn)確率的前提下,覆蓋率越大,則推薦結(jié)果的多樣性相對越高,潛在帶給用戶的驚喜度也就越大。
令為全體用戶集合,R(u)為根據(jù)推薦算法針對用戶u給出的推薦列表,T(u)為測試集中用戶u有過評分行為的電影列表,則推薦結(jié)果的準(zhǔn)確率可以定義,為式(7)。
(7)
推薦列表需要能夠覆蓋用戶不同的興趣領(lǐng)域,假設(shè)系統(tǒng)的用戶集合為U,物品結(jié)合為I,推薦系統(tǒng)給每個用戶u∈U推薦一個長度為N的物品列表R(u),則通過推薦系統(tǒng)的覆蓋率可定義,為式(8)。
(8)
由覆蓋率的定義可知,如果所有的物品都出現(xiàn)在推薦列表中,且出現(xiàn)次數(shù)差不多,那么推薦系統(tǒng)發(fā)掘長尾的能力就越好[12]。
4.3 實(shí)驗(yàn)結(jié)果及分析
由于協(xié)同過濾在處理海量數(shù)據(jù)時效率較為低下,實(shí)際應(yīng)用中最為常用的是先根據(jù)用戶的行為記錄對用戶進(jìn)行聚類,推薦階段在聚類的基礎(chǔ)上使用協(xié)同過濾算法。因此,實(shí)驗(yàn)結(jié)果與最為常用的傳統(tǒng)協(xié)同過濾算法和基于聚類的協(xié)同過濾進(jìn)行了比較,如圖2所示。
圖2 推薦結(jié)果準(zhǔn)確率比較
由于處于長尾位置,曝光率小而導(dǎo)致其被評分的概率相對較低,造成了大部分爭議項(xiàng)沒有評分記錄。而計(jì)算準(zhǔn)確率時,將未被評分產(chǎn)品的實(shí)際評分值默認(rèn)設(shè)定為0,由此,造成了準(zhǔn)確率有所降低。但是,這些處于長尾位置的物品對目標(biāo)用戶來說具有相對較高的接受程度和相對較高的驚喜度,這些可以部分抵消精度略微下降帶來的損失,如圖3所示。
圖3 推薦結(jié)果覆蓋率比較
由圖3可知,在加入爭議項(xiàng)后的推薦中,僅從比率上來看,覆蓋率提升不是很大,但從數(shù)量上分析,可選擇推薦結(jié)果從數(shù)量上平均提高了約30部-40部可選擇空間,結(jié)合最終推薦結(jié)果一般在5部-20部之間,覆蓋率的提升給推薦結(jié)果的多樣性提供了足夠的可選擇空間,如圖4所示:
圖4 Fac-Measure
綜合準(zhǔn)確率和覆蓋率,如式(9)。
(9)
進(jìn)行評判,如圖4所示,算法的綜合性能相對于傳統(tǒng)協(xié)同過濾和基于聚類的協(xié)同過濾算法有一定的提高。
實(shí)驗(yàn)只是對推薦候選物品進(jìn)行了評測,如第三小節(jié)所述,在實(shí)際應(yīng)用中,可根據(jù)實(shí)際需要來調(diào)整針對爭議項(xiàng)的權(quán)重因子,達(dá)到推薦結(jié)果精度和新穎性的平衡。
由于推薦結(jié)果的優(yōu)劣與個人的主觀意識緊密相關(guān),因而不應(yīng)僅僅從某一個可量化指標(biāo)去進(jìn)行判斷。本文所述方法,綜合考慮了多個評價指標(biāo),在推薦結(jié)果多樣性方面進(jìn)行了初步的探索,通過對試驗(yàn)結(jié)果的分析可以看出,通過提高待推薦產(chǎn)品的覆蓋率,并對處于長尾位置的物品賦以相對較高的權(quán)值,可以部分提高最終推薦結(jié)果的多樣性、新穎性。
[1] Jannach D, Zanker M, Felfernig Al, Friedrich F. Recommender Systems: An Introduction[M]. Cambridge: Cambridge University Press, 2011.
[2] 李華, 張宇, 孫俊華. 基于用戶模糊聚類的協(xié)同過濾推薦研究[J]. 計(jì)算機(jī)科學(xué), 2012, 39(12): 84-86.
[3] RanaForsati, AlirezaMoayedikia, MehrnoushShamsfard. AnEffective Web Page Recommender Using Binary Data Clustering[J]. Information Retrieval Journal, 2015, 18(3):167-214.
[4] 韋素云, 業(yè)寧, 朱健, 黃霞, 張碩. 基于項(xiàng)目聚類的全局最近鄰的協(xié)同過濾算法[J]. 計(jì)算機(jī)科學(xué), 2012, 39(12): 149-152.
[5] Bellogin A, Castells P, Cantador I. Imporving Memory-Based collaborative filtering by neighbor selection based on user preference overlap[C]∥Proceedings of the 10th Conference on Open Research Areas in Information Retrieval. 地點(diǎn), 2013: 145-148.
[6] Gao M, Cao F Y, Huang Z J. A Cross Cluster-Based Collaborative Filtering Method for Recommendation[C]∥Proceedings of the 10th IEEE International Conference on Information and Automation(ICIA’13). 地點(diǎn), 2013: 447-452.
[7] 黃創(chuàng)光, 印鑒, 汪靜, 劉玉葆, 王甲海. 不確定緊鄰的系統(tǒng)過濾推薦算法[J]. 計(jì)算機(jī)學(xué)報, 2010, 33(8): 1369 - 1377.
[8] 秦繼偉, 鄭慶華, 鄭德立, 田鋒. 結(jié)合評分和信任的協(xié)同推薦算法[J]. 西安交通大學(xué)學(xué)報, 2013, 47(4): 100-104.
[9] Breese J S, Heckerman D, Kadie C M. Empirical Analysis of Predictive Algorithms for Collaborative Filtering[C]∥Proceedings of the 14th Conference on Uncertainty in Artificial Intelligence. 地址,1998: 43-52.
[10] Herlocker J L, Konstan J A, Bochers Al, Riedl J. An Algorithmic Framework for Performing Collaborative Filtering[C]∥Proceedings of the 22nd Annual International ACM SIGIR Conference. 地點(diǎn), 1999: 230-237.
[11] Niemann K, Wolpers M. A New Collaborative Filtering Appraoch for Increasing the Aggreate Diversity of Recommender Systems[C]∥Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining (KDD’13). 地點(diǎn), 2013: 955-963.
[12] Fancesco Ricci等. 推薦系統(tǒng):技術(shù)、評估及高效算法. 李艷閩,等,譯. [M]. 北京: 機(jī)械工業(yè)出版社, 2015.
Collaborative Filtering Recommendation Method Considering the Controversial Items
Xu Ying1,Tao Hucheng2
(1. Education Support Center,Shanghai Police College,Shanghai 200137,China;2. Shenzhen MaiDa Digital Company Limited,Shenzhen 518000,China)
By filtering out the most controversial items that may be accepted by the active users, the method could increase the exposuring rates of the items positioned in long tail. The algorithm improved the novelty and surprising level for the users by improving the coverage of recommendation result, meanwhile it only lost relatively low accuracy.
collaborative filtering; recommender systems; fuzzy uncertainty; personalized service
上海市教育委員會“晨光計(jì)劃”項(xiàng)目(13CGB13)
徐瑩(1986-),女,碩士研究生,研究方向?yàn)閿?shù)據(jù)挖掘、推薦系統(tǒng), 上海 200137。 陶虎成(1973-),男,高級工程師,研究方向?yàn)闄C(jī)器學(xué)習(xí)、推薦系統(tǒng), 上海 200137。
1007-757X(2017)01-0015-04
TP391.9
A
2016.09.10)