摘 要: 針對目前電子商務個性化推薦研究的不足,提出準確全面地獲取用戶獨特興趣愛好、滿足用戶差異化需求的推薦服務,同時構建了具體的個性化推薦系統模型,給出了基于協作過濾算法的電子商務個性化推薦的流程、系統設計和系統實現,從而有利于推動電子商務的發展。
關鍵詞: 個性化推薦;用戶興趣模型;協作過濾
電子商務的迅速發展革命性地改變了人們的生產和生活方式,對于個人可以做到足不出戶就獲得所需要的商品和服務,對于企業則轉變了傳統經營模式,通過網站為用戶提供一個直接、迅速而且不受商品陳列空間限制的龐大的商品購物平臺[1]。然而在享受互聯網技術推動電子商務發展的便利的同時,用戶也發現自己處于了“信息爆炸而知識貧乏”的困境之中,也就是網站提供的品類繁雜的商品和用戶相對單一的購物需求之間的矛盾[2]。
因此電子商務網站希望通過應用個性化推薦技術較準確地預測用戶的購物需求,并給用戶提供高質量的推薦服務,以此來挖掘更多的潛在用戶,盡可能地將網站的瀏覽者轉化為購買者,增強網站的關聯銷售能力,提高用戶購物的滿意度,最終達到提高網站競爭力,提高網站經營效益的目的。本文就如何針對不同用戶提供差異化的服務做了研究并予以實現[3]。
電子商務個性化推薦系統以電子商務購物網站為依托,根據已知的用戶信息(比如個人注冊信息、歷史訪問記錄、評分記錄和訂單),利用推薦技術和算法,分析用戶的消費偏好,為不同的用戶有針對性地推薦符合興趣的商品。個性化推薦技術作為推薦系統的核心,是其重要的組成部分。其基本思想是:首先找與他自身興趣比較相似的用戶,然后將這些用戶感興趣的消費內容推薦給目標用戶。其最大的優點是對推薦對象沒有特殊的要求,能處理非結構化的復雜數據結構,如音頻、視頻等,也無需向基于內容的推薦那樣去考慮推薦對象的內容及關鍵字的抽取等。但也存在著數據稀疏、冷啟動等缺點。
1 系統總體設計
1.1 總體設計思想
基于協作過濾的個性化推薦系統是電子商務網站模擬了店鋪營業員對用戶的推薦行為,盡可能準確地獲取用戶的個性消費愛好,給不同用戶提供差異化的推薦服務。首先,需要建立一種合理的個性化推薦體系,在該體系的指導下,分析用戶的購物行為進而獲取用戶的興趣愛好數據,構建用戶興趣愛好模型,并使用個性化推薦算法計算目標用戶對每一個項目的期望值[4]。基于得出的用戶期望值,個性化推薦系統就可以對不同的目標用戶提供一種差異化的推薦服務。個性化推薦模型如圖1所示。
通過以上模型可知,在本系統中主要涉及到3個角色,分別是客戶端子系統、管理端子系統和個性化推薦子系統。而在作為核心部分的個性化推薦子系統中,以用戶興趣愛好數據作為輸入參數,使用協作過濾算法計算目標用戶對項目的預測值[5]。
1.2 系統框架
個性化推薦系統基于用戶提交的興趣愛好信息和在購物網站的瀏覽歷史信息提供個性化推薦服務和購買建議,其總體結構分為前臺客戶端管理、后臺管理和個性化推薦3個模塊。
2 系統應用
2.1 客戶端子模塊
在個性化推薦系統中,用戶作為最終的服務對象,參與了整個系統的服務過程。在本模塊中,用戶可以實現買賣交易,注冊成為本站的會員享受系統提供的個性化推薦服務,也可以對商品和店鋪根據提供的服務做出客觀評價。此外,用戶可以申請在本系統開啟自己的網上店鋪。
客戶端子系統的另一個重要功能就是根據用戶在本站的行為收集用戶的興趣愛好數據,并將其量化以建立用戶興趣模型,作為個性化推薦系統向用戶提供推薦服務的有力依據,保證推薦的高質量和精準性。
2.2 管理端子模塊
為了確保系統的正常運行,電子商務個性化推薦系統需要具有一個后臺管理子系統對整個系統進行配置管理。主要功能模塊包括:訂單管理、會員管理、權限管理、管理員登錄、系統配置管理、商品管理、店鋪管理、廣告管理、信息管理和個性化推薦模塊管理。
為了增加個性化推薦系統的推薦質量,加強推薦的彈性范圍,系統還允許管理員在個性化推薦模塊管理及時修改算法閾值,從而更進一步提供系統的靈活性和擴展性。
2.3 個性化推薦模塊
個性化推薦模塊遵循入-處理-輸出IPO(Input-Process-Output)模式[6],作為系統的核心部分,主要由數據表述、發現最近鄰居和產生推薦數據集[7]3個階段組成,其基本架構如圖2所示。
(1)數據表述階段
數據表述階段最重要的是建立用戶興趣模型。用戶興趣模型建立的第一步是獲取用戶興趣數據,目前主要有兩種方法。一種是顯式獲取,即用戶主動參與電子商務網站的反饋活動,要求用戶中斷正常的瀏覽行為對資源項目進行評分,這是獲取用戶興趣最佳的方式,不足之處是,顯式獲取需要為用戶帶來了額外的負擔,匆忙中填寫的反饋信息很大程度上并不能客觀地反映用戶偏好。另一種是隱式獲取,主要是以Web使用挖掘、人工智能和知識發現等理論為基礎,利用JavaScript、AJAX等應用技術分析用戶的瀏覽行為,獲取用戶興趣偏好并轉化為結構化數據的過程,它的優勢主要在于整個過程不需要用戶的主動參與,不會中斷用戶正常的瀏覽行為,也不會給用戶帶來額外負擔,能夠得到比顯示反饋更豐富的用戶偏好信息。因此,這里采用“以顯式獲取用戶興趣愛好為主,隱式獲取為輔,顯式和隱式相結合”的混合用戶興趣獲取方式[8],避免了中文分詞帶來的誤差和關鍵字抽取。將混合方式獲得的用戶興趣數據先進行降噪處理,降低噪聲對用戶興趣數據的干擾,比如在獲取用戶在某個頁面上停留的時間信息時,可能由于瀏覽者中途離開而導致數據失效等。為了方便存儲和計算,對用戶興趣數據經過降噪處理,轉換成相應的用戶對資源項目的評分,從而構建了用戶興趣模型。
本文借鑒MovieLens系統的用戶評分規則[1],設定用戶顯式評分是一個0~5之間的數字,以0.5作為間隔共分為11個檔次,表示用戶對商品的個性化偏好程度,其轉換規則如下。
①用戶u購買了某商品k但未評分,則Ru,k=3.0。
②用戶u對商品k的評分為score,則Ru,k=score。
③用戶點擊商品k的次數n與給定的除“0”外的10個分數檔對應,則Ru,k=n×0.5,若Ru,k>5.0則Ru,k=5.0。
④獲取時間與推測隱式評分對應關系如下:
Ru,k=1 (5≤t<10)2 (5≤t<10)3 (5≤t<10)4 (5≤t<10)5 (5≤t<10)
⑤其他情況下,Ru,k=0。
在一個典型的基于協作過濾技術的個性化推薦系統中,用戶興趣模型通常被表示為一個m×n的用戶-項目評估矩陣R,m是用戶數,n是項數,rij是第i個用戶對第j個項目的評估數值,其具體值由顯式和隱式用戶興趣獲取的數據轉換得來[6]。用戶-項目評估矩陣R如表1所示。
(2)發現最近鄰居集階段
用戶興趣模型建立后,系統根據用戶興趣模型計算每一位用戶的用戶相似度,通過度量目標用戶與所有候選鄰居間的相似度,產生基于協作過濾的top-n鄰居用戶集,然后根據這個鄰居用戶集,結合協作過濾推薦算法,對用戶作出個性化推薦服務和購買建議。其中協作過濾推薦的示意圖如圖3所示。
協作過濾算法是目前使用最多、應用最成熟的推薦技術。它的應用前提是:假設存在具有相似興趣偏好的用戶群,每個用戶都有與其興趣偏好相似的鄰居用戶。預測用戶對某一項目的偏好是根據鄰居用戶的偏好程度計算的,也就是以屬性或興趣相近的用戶建議作為個性化推薦的基礎。協作過濾算法最大的優勢在于不需要分析對象的特征屬性,所以對推薦沒有特殊要求,能處理非結構化的復雜對象,如音頻、視頻等[8]。
基于協作過濾推薦的上述優點,本文也采用協作過濾算法產生推薦。協作過濾算法有基于用戶(User-based)協作過濾算法和基于項目(Item-based)協作過濾兩種[9]。這里分別采用基于用戶協作過濾算法和基于項目協作過濾算法兩種方式產生推薦。采用余弦相似性算法計算用戶相似度,它既可以用于基于用戶的協作過濾中,也可以用于基于項目的協作過濾系統中。此方法是將用戶評分看作n維向量項目空間上的向量,如果用戶對項目沒有進行評分,則將評分設置為默認值0,用戶間的相似性通過向量間的余弦夾角來度量。余弦值越大表示用戶的相似程度越高。設用戶i和用戶j在n維向量空間上的評分分別表示為向量和,則用戶i和用戶j之間的相似性sim(i,j)為:
采用余弦性算法的用戶相似度處理過程如下:
輸入:用戶i和用戶j關于所有項目的評分
輸出:用戶i和用戶j的相似度
算法步驟:
第一步:判斷用戶i和用戶j的合法性。
第二步:初始化sum(x2)、sum(y2)、sum(xy)分別為0,n為項目個數。
第三步:計算sum(x2)、sum(y2)、sum(xy)的值:
for 每一條項目記錄
do
x=i1;y=j1;
if x,y都不為空
sum(x,y)+=x*y;
sum(x2)+=x*x;
sum(y2)+=y*y;
end if
end do
return sum(x,y)/(sqrt(sum(x2))*sqrt(sum(y2)));
將以上使用余弦相似性算法得到用戶X和用戶Y的相似度進行降序排序,取前k個用戶做為目標用戶的k鄰居用戶群。
(3)產生推薦數據集階段
在得到最近鄰居用戶集數據后,接下來根據計算出來的最近鄰居集預測評分并給目標用戶產生推薦結果。設目標用戶u的最近鄰居集合用Tu表示,則目標用戶u對項目i的預測評分Pu,i可以通過用戶u對最近鄰居集Tu中項目的評分得到,其中Pu,i的計算方法如下:
上式中sim(u,n)表示用戶u與n之間的相似程度,Rn,i表示用戶n對項目i的評分,u和n分別表示用戶u和用戶n對項目的平均評分。通過上述方法計算用戶對所有未評分的項目的評分,然后選擇其中預測評分最高的前若干項(top-n)作為推薦結果給當前用戶[10],通過這樣的基于用戶興趣相似度的推薦,網站就可以在恰當的時間向不同的用戶推薦合適的商品。
基于項目的協作過濾推薦算法和基于用戶的協作過濾推薦算法基本一致,且由于資源項目的相對靜態性,因此它的計算相對簡單。這里不再描述。
基于協作過濾算法的電子商務個性化推薦系統改進了傳統的基于文本的推薦技術,擴大了推薦范圍,提高了推薦質量,單渠道用戶興趣獲取模式變成了多渠道用戶興趣獲取模式,既避免了顯式用戶興趣獲取時帶來的不良用戶體驗,也消除了單純顯式獲取用戶興趣數據導致的數據稀疏性問題。
參考文獻
[1] Chong Jiang. Research of an e-commerce personalized recommendation system[D]. Changsha: Central South University, 2009.
[2] Ting Wen. Research of mining personalized service based on Web content and Log[D]. Dalian: Dalian University of Technology, 2007.
[3] Zhao Liang, Hu Naijing, Zhang Shouzhi. Design of personalized recommendation algorithm[J]. Computer Research and Development, 2002:78-84.
[4] Li Dandan. Research of an e-commerce personalized recommendation based on hybrid algorithm[D]. Tianjing: Tianjing Finance University, 2008.
[5] Jie Yang. Appliation and research of an personalized recommendation system[D]. Beijing: University of Science and Technoloy of China, 2009.
[6] Wei Lu. Application of an e-commerce personalized recommendation system based on collaborative filtering algorithm[D].Beijing: Beijing University of Posts and Telecommunications, 2007.
[7] MASSA P, AVESANI P. Trust-aware collaborative filtering for recommender systems[C]. Proceedings of International Conference on Cooperative Information Systems, 2004:240-249.
[8] BADRUL SARWAR, GEORGE KARYPIS, JOSEPH KONSTAN, et al. Item-Based collaborative filtering recommendation Algorithms[C]. Proceedings of the Tenth International Conference on World Wide Web, 2003:285-295.
[9] CHEN Y L, CHENG L C. A novel collaborative filtering approach for recommending ranked items[J]. Expert System with Applications, 2008,34(4):2396-2405.
[10] ADOMAVICIUS G, TUZHILIN A. Towad the next generation of recommender systems:A survey of-the state-of-the—art and possible extensions[J]. IEEE Transaction on Knowledge and Data Engineering, 2005, 17(6):734-749.