郁鋼 陸海良 單宇翔 高揚華
摘 要: 協(xié)同過濾推薦技術(shù)和基于商品屬性的推薦技術(shù)是比較流行的個性化推薦方法,但是前者存在數(shù)據(jù)稀少和新對象問題,后者也存在無法挖掘用戶潛在興趣的問題。本文采用基于區(qū)域用戶的相鄰用戶進行數(shù)據(jù)評分的矩陣填充,并采用商品之間的關(guān)聯(lián)規(guī)則應(yīng)用和解釋來向用戶推薦產(chǎn)品。測試表明,本方法解決了新商品的問題,并且在推薦的準確度、新穎性和覆蓋度上有了較好的效果。
關(guān)鍵詞: 用戶興趣模型;個性推薦;數(shù)據(jù)稀疏問題
Abstract:Collaborative filtering recommendation and recommendation based on product attributes are popular personalized recommendation methods. But the former can't handle the issues about sparse data and new objects the latter is not capable of mining the potential interests of users. This paper uses the matrix of data grading based on the adjacent users of the regional users and recommends the products to the users by applying and explaining the association rules between the commodities. Testing shows that this method solves the problem of new products and has good results in terms of accuracy novelty and coverage.
Key words: user interest model;personalized recommendation; sparse data
1 協(xié)同過濾算法
協(xié)同過濾(collaborative filtering CF)推薦算法是當前使用最為頻繁也最有效果的個性化定制銷售策略,可以利用消費者之間的共性向目標用戶推薦已知用戶的興趣偏好[1]。CF算法一般利用用戶對商品的評價信息和用戶信息來構(gòu)造用戶-商品矩陣,根據(jù)用戶之間的相似性產(chǎn)生鄰居用戶集,進而產(chǎn)生推薦數(shù)據(jù)集[2]。針對目標用戶的推薦過程就是使用矩陣數(shù)據(jù)進行預測,評估用戶對未接觸過產(chǎn)品的評分情況、即感興趣度,由此在大量數(shù)據(jù)集中計算出推薦列表。
CF的推薦算法的主要實現(xiàn)過程則如圖1所示。對其內(nèi)容可描述為:
(1)生成用戶-商品矩陣;
(2)采集相近用戶數(shù)據(jù)集;
(3)推薦結(jié)果集合。
用戶對商品的評價可分為顯式評價和隱式評價。其中,顯式評價是指用戶對自己感興趣的商品進行有意識的評分。隱式評價[3]是用戶在網(wǎng)頁中的駐留時間,對某一商品的消費記錄等方式?,F(xiàn)階段針對企業(yè)的營銷,多是采用顯式和隱式相結(jié)合的方式來獲取信息。
2 數(shù)據(jù)稀疏問題
CF算法中的評分分布存在分散性問題,即數(shù)據(jù)稀疏問題,因數(shù)據(jù)量太少會引起尋找鄰居用戶時的困難,進而將無從保證個性化的推薦效果。在用戶-商品矩陣中,空缺的評分可設(shè)置為一個固定值,該值可采用評分均值或者總分的中間值,當下已有研究能夠證明這種方式可以改善個性化推薦的結(jié)果。但是這種方式并不能很好地解釋用戶為什么被賦予評分均值或者中間值。
在上述的CF推薦算法中,若消費者A和消費者B之間不存在對同一商品進行評分的行為,即使2位消費者之間對商品屬性的偏愛存在很多的相同點,推薦系統(tǒng)也無法判定2位客戶之間的關(guān)聯(lián)關(guān)系?;谏唐穼傩韵嗨贫鹊膫€性化推薦可以解決這個問題,但若針對2個商品,同一用戶還未對其給予評價,這2個商品之間的相同點也將難于計算出來。
針對評分矩陣的稀疏性問題,許多研究從用戶關(guān)聯(lián)、技術(shù)創(chuàng)新等不同角度提出解決方案。從用戶角度,如張忠平[4]等提出將用戶對商品的評分作為一個集合,來計算消費者之間的共同點,篩選增加用戶對商品評價共同的評分項,從而可以提升預測的準確度。秦凱[5]等人從社會網(wǎng)絡(luò)信任特征出發(fā)來尋找相似用戶。HUANG[6]等人考慮商品屬性信息和用戶注冊信息的關(guān)聯(lián)匹配。從技術(shù)角度,張光衛(wèi)[7]等人通過聚類技術(shù)對大量數(shù)據(jù)的評分結(jié)果內(nèi)容實現(xiàn)降維處理,進而減小被推薦者近鄰的整體范圍空間,提高評測的準確度。王兆國[8]等人利用用戶或物品的評分頻次信息,建立了線性回歸模型,以此預測用戶對未置評物品的評分。王明佳[9]提出基于項目情景的推薦方法綜合項目分類對用戶提供個性化推薦模式。
上述研究在一定程度上提高了個性化推薦的準確度,部分解決了數(shù)據(jù)稀疏性問題。但是,在測定兩者之間的相同點時,前提條件是用戶與用戶之間并不存在關(guān)聯(lián)關(guān)系,也就是說用戶被相鄰消費影響程度是相同的。在實際應(yīng)用中,不同的消費者受其興趣度相鄰用戶的影響程度并非完全相同,這種情況會直接影響商品最終評分的精準性,進而影響到用戶的實際需求[10]。雖然引入、也研究了一些情景因素,但卻僅僅考慮了用戶自身的屬性和商品的分類,而并未關(guān)注重視用戶周圍因素對個性化所造成的作用效果。
綜上,在評分數(shù)據(jù)極端稀疏的情況下,前述研究沒有同時考慮到用戶評分行為和用戶環(huán)境兩種重要因素,依然無法準確地度量用戶間相似性,造成評分預測準確度較低,導致推薦質(zhì)量也隨即呈現(xiàn)下降態(tài)勢。在企業(yè)的個性化推薦營銷的過程中,多數(shù)推薦策略都是依據(jù)用戶對商品評分的高低來預測消費者對商品的偏愛程度,不同消費者之間利用評價相同產(chǎn)品的個數(shù)來測定用戶之間的相似性。這種情況是在數(shù)據(jù)混合的條件下展開的,而沒有對用戶劃定分類。如果能夠提前進行用戶分類,分類的原則主要基于用戶所在區(qū)域、所處時間段等情景,如此可將相似用戶相對準確地合并歸類,而在此基礎(chǔ)上實施推薦算法,才能有效改進評分預測準確度,從而提高協(xié)同過濾的推薦質(zhì)量。
3 混合協(xié)同過濾算法
提出新客戶受周圍因素的影響來解決數(shù)據(jù)稀少問題,即對于新客戶而言,其所在的地域和周圍生活環(huán)境會在很大程度上影響到用戶的決定。因而,可以將新客戶的空白評分依據(jù)好友用戶的評分進行填充,不僅可以增加用戶的個人數(shù)據(jù)集,還可以豐富商品屬性的特征數(shù)據(jù)集,有利于發(fā)現(xiàn)客戶隱含的興趣偏好。在以下研究中,設(shè)計提出了根據(jù)好友關(guān)系和商品屬性的特性功能來緩解推薦算法帶來的數(shù)據(jù)稀少的缺陷。該算法主要是通過老用戶與新用戶是好友的關(guān)系來計算用戶對商品屬性的偏愛程度,間接獲取新的消費者對商品的選擇方向和預計評分,從而增加銷售量,擴大企業(yè)的知名度。
本文采用的是Adamic-Adar指數(shù)和資源分配指數(shù)計算客戶與客戶間的相同點。原理來自計算機網(wǎng)絡(luò)結(jié)構(gòu)圖,即任意的2個未連接的節(jié)點之間在未來有可能會發(fā)生鏈接的概率大小。此后,則拓展到了電子商務(wù)中用于推演得到用戶與商品之間的偏愛程度和社交關(guān)系網(wǎng)中計算好友之間的信任程度。在企業(yè)中,可根據(jù)相同地域條件來劃分新用戶,將新用戶劃分到具有類似愛好的老用戶群體中。
Adamic-Adar指數(shù)是指通過增加好友數(shù)量較小的相似權(quán)重來提升共同好友的權(quán)重計算(排除好友為零的情況),數(shù)學定義如下:
資源分配指數(shù)表征著在復雜網(wǎng)絡(luò)上進行動態(tài)資源分配的應(yīng)用指數(shù)。假設(shè)有2個節(jié)點u、v沒有直接相連。節(jié)點u可以把資源發(fā)送給v,兩者之間的共同鄰近節(jié)點起著傳送的作用。
假設(shè)每個傳送者有一個單位資源,并且傳送給每個鄰近節(jié)點的概率是一樣的。資源分配指數(shù)的定義如下:
即sim(u,v)=sim(v,u),雖然彼此間的目的不同,但是兩者有著相似的結(jié)構(gòu),也就是說降低了共同鄰近節(jié)點。
通過新用戶與好友之間的關(guān)系分析得到兩者之間的相關(guān)性。對于商品i和用戶u來說,基于朋友關(guān)系的預測值具體可如式(3)所示:
其中,Ni是對商品i的評分預測客戶數(shù)據(jù)集合;ICv是客戶V評價商品的個數(shù);sim(u,v)是用戶U和用戶V之間的相關(guān)性。
基于商品的已有屬性信息挖掘出用戶對項目的偏愛程度,因此基于商品屬性信息的預測評分值的計算公式可表述如下:
其中,NTi是項目i的所有標簽;ITCt表示標簽t的商品個數(shù);rel(u,t)表示用戶u對標簽t的偏愛程度。
依據(jù)新用戶與老用戶之間關(guān)聯(lián)關(guān)系,得到預估評分值與根據(jù)商品屬性信息的預評分后,研究通過設(shè)定權(quán)重α對2種預測評分構(gòu)成的優(yōu)化組合而運算推出預測評分值公式如下:
4 實驗分析
在研究中,對α進行了實驗設(shè)定,分別將α取值為0,0.2,0.4,…,1。在此基礎(chǔ)上,為了消除推薦商品數(shù)量過多對α值的影響,研究又同步設(shè)置了推薦商品數(shù)量,也就是從5、10、15、20、25共設(shè)計展開了5組仿真實驗。實驗運行結(jié)果如圖2所示。
由圖2可以看出,隨著α值的變化,其波動趨勢基本一致:隨著α值增加,開始處于上升狀態(tài),達到最大值以后,緩慢下降。在本實驗中,當α=0.2時,準確率為最高,這也進一步證明了好友關(guān)系的模式和商品屬性的混合協(xié)同過濾算法要優(yōu)勝于單獨的基于商品屬性信息的算法性能。本文算法的設(shè)計流程內(nèi)容表述可見如下:
步驟一 選定要推薦的地區(qū)和商品規(guī)格,依據(jù)傳統(tǒng)的推薦算法計算目標用戶的興趣相似的用戶和非相鄰用戶數(shù)據(jù)集。對于非鄰居的用戶的數(shù)據(jù)集取值概率性較大的作為用戶評分的參考值,結(jié)合鄰居用戶的評分數(shù)據(jù)集進行匯總,給出評分數(shù)據(jù)。
步驟二 篩選用戶信息,根據(jù)用戶自身屬性進行劃分聚類,基于用戶年齡、收入、生活區(qū)域等因素研究劃分用戶的類別。
本文選擇某類商品在湖南省的銷售數(shù)據(jù)作為推薦數(shù)據(jù)來源,針對客戶背景、客戶情景下和非相鄰數(shù)據(jù)集進行推薦評估。湖南數(shù)據(jù)庫中包含了對產(chǎn)品的真實評分數(shù)據(jù)。系統(tǒng)新用戶在使用前需要先填寫個人信息,并且對已購買產(chǎn)品做出評價,總分數(shù)為10分,評分越高,意指對該商品就越滿意。此外,還需要填寫個人的年齡、性別、職業(yè)等信息。在這個數(shù)據(jù)庫中包含了大量的用戶數(shù)據(jù),本次研究集中選擇長沙地區(qū)用戶的數(shù)據(jù)實現(xiàn)地域性的個性分析。數(shù)據(jù)庫中存在很多表結(jié)構(gòu),基礎(chǔ)性的就包含了用戶評價表、用戶個人信息表、產(chǎn)品規(guī)格表等在內(nèi)。
表中的商品分類有很多,比如依據(jù)純度、包裝、香型、年份、產(chǎn)地等特點生成得到的商品分類。整個實驗數(shù)據(jù)集可分為訓練集和測試集,其中訓練集占總數(shù)據(jù)集的80%,而測試集則占據(jù)了20%。整個數(shù)據(jù)集提取了來自湖南地區(qū)的5 000條數(shù)據(jù),涵蓋了400位用戶對100個不同規(guī)格商品的評價。這里,將用戶的編號設(shè)置為1~400,商品編號設(shè)為1~100。研究中,存在一個用戶Uk未對數(shù)據(jù)庫中的商品進行評價,因而需要預測用戶Uk對商品i的評分。現(xiàn)取n=28,基于傳統(tǒng)的預測方式計算出商品n的最近鄰近值,采用皮爾森相關(guān)系數(shù)算法計算得出商品n的10個最近鄰居。同商品n最近似的其它商品編號可見表1。
由表1可以看出,與商品n相似的產(chǎn)品有10個。為了獲得用戶對商品的預測評分,在實驗中選取上述產(chǎn)品的均值。也就是說,基于好友關(guān)系的用戶對商品的評分預測值可設(shè)定為其鄰居用戶針對多個相似商品的均值。這種方式在很大程度上解決了矩陣存在評分數(shù)據(jù)稀疏的問題。
5 結(jié)束語
協(xié)同過濾推薦技術(shù)和基于商品屬性的推薦技術(shù)是在個性化推薦研究中頗為流行的項目領(lǐng)域重點課題。只是分析可知,前者存在數(shù)據(jù)稀少和新對象問題,后者也存在無法挖掘用戶潛在興趣等問題。本文針對這一數(shù)據(jù)稀疏性問題,采用了基于區(qū)域用戶的相鄰用戶進行數(shù)據(jù)評分的矩陣填充。對于無法挖掘用戶潛在興趣的問題,采用商品之間的關(guān)聯(lián)規(guī)則應(yīng)用和解釋來向用戶推薦產(chǎn)品。通過充分利用地域性、用戶好友信息、商品特性等在相當程度上解決了推薦技術(shù)中的現(xiàn)實問題,對于企業(yè)中個性化銷售創(chuàng)造了有利條件,從而增加了整個企業(yè)的銷售量。
參考文獻
[1] 冷亞軍,陸青,梁昌勇. 協(xié)同過濾推薦技術(shù)綜述[J]. 模式識別與人工智能 2014 27(8):720-734.
[2] 劉青文. 基于協(xié)同過濾的推薦算法研究[D]. 合肥:中國科學技術(shù)大學,2013.
[3] STROBBE M VAN LAERE O DHOEDT B et al. Hybrid reasoning technique for improving contextaware applications[J]. Knowledge and Information Systems 2012,31(3):581-616.
[4] 張忠平,郭獻麗. 一種優(yōu)化的基于項目評分預測的協(xié)同過濾推薦算法[J]. 計算機應(yīng)用研究 2008 25(9):2658-2660,2683.
[5] 秦凱,吳家麗,宋益多,等. 基于社會信任的協(xié)同過濾算法研究綜述[J]. 智能計算機與應(yīng)用 2015 5(4) 55-59.
[6] HUANG Z CHUNG W CHEN H. A graph model for ecommerce recommender systems[J]. Journal of the American Society for Information Science and Technology 2004 55(3):259-274.
[7] 張光衛(wèi),李德毅,李鵬,等. 基于云模型的協(xié)同過濾推薦算法[J]. 軟件學報 2007 18(10):2403-2411.
[8] 王兆國,謝峰,關(guān)毅. 一種基于線性回歸的新型推薦方法[J]. 智能計算機與應(yīng)用,2017 7(4):1-5.
[9] 王明佳,韓景倜,韓松喬. 基于模糊聚類的協(xié)同過濾算法[J]. 計算機工程 2012 38(24):50-52.
[10]許鵬遠. 多因素綜合框架的協(xié)同過濾推薦算法[D]. 大連:大連理工大學 2017.