摘 要:以數(shù)據(jù)挖掘中的關(guān)聯(lián)規(guī)則為基礎(chǔ),深入研究了基于關(guān)聯(lián)規(guī)則的個(gè)性化推薦技術(shù)在電子商務(wù)中的應(yīng)用,提出了電子商務(wù)推薦系統(tǒng)的體系結(jié)構(gòu),并對(duì)系統(tǒng)涉及到的關(guān)鍵技術(shù)進(jìn)行了詳細(xì)的描述。系統(tǒng)采用FP-Growth算法進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,緊緊結(jié)合了數(shù)據(jù)庫技術(shù)的優(yōu)勢(shì),對(duì)當(dāng)前電子商務(wù)系統(tǒng)中大量復(fù)雜的數(shù)據(jù)具有很好的適應(yīng)性。
關(guān)鍵詞:數(shù)據(jù)挖掘; 關(guān)聯(lián)規(guī)則; 電子商務(wù)推薦系統(tǒng); 數(shù)據(jù)庫技術(shù)
中圖分類號(hào):
TN915-34
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2011)19
-0179
-04
Application of Association Rules in E-commerce Recommendation System
WANG Jiang-wei, GUO Min
(College of Electronic and Control Engineering, Beijing University of Technology, Beijing 100124, China)
Abstract: On the basis of association rules in data mining, the application of a personalized recommendation based on association rules in E-commerce is deeply researched. The architecture of E-commerce recommendation system is proposed, and the related technology is described. The system uses FP-Growth algorithm to mine association rules, which makes full use the advantages of database technology, so it can process the complex data in the current E-commerce system very well.
Keywords: data mining; association rule; E-commerce recommendation system; database technology
收稿日期:2011-04-21
0 引 言
隨著電子商務(wù)的迅猛發(fā)展,人類進(jìn)入了信息社會(huì)和網(wǎng)絡(luò)經(jīng)濟(jì)時(shí)代,商務(wù)信息爆炸式增長,客戶選擇喜歡的商品變得困難。如何幫助各種客戶順利地完成購物活動(dòng)成為網(wǎng)站贏得利潤和信譽(yù)的關(guān)鍵。在這種情況下,為客戶提供個(gè)性化推薦服務(wù)的電子商務(wù)推薦系統(tǒng)應(yīng)運(yùn)而生。電子商務(wù)推薦系統(tǒng)“利用電子商務(wù)網(wǎng)站向客戶提供商品信息和建議,幫助客戶決定應(yīng)該購買什么產(chǎn)品,模擬銷售人員幫助客戶完成購買過程”[1]。電子商務(wù)推薦系統(tǒng)最大的優(yōu)點(diǎn)在于它能收集用戶感興趣的資料,并根據(jù)用戶興趣偏好主動(dòng)為用戶做出個(gè)性化推薦。
個(gè)性化推薦系統(tǒng)主要有3個(gè)作用:將電子商務(wù)網(wǎng)站的瀏覽者轉(zhuǎn)變?yōu)橘徺I者;提高電子商務(wù)網(wǎng)站的交叉銷售能力;提高客戶對(duì)電子商務(wù)網(wǎng)站的忠誠度。
目前,學(xué)者對(duì)電子商務(wù)推薦系統(tǒng)有大量的研究,主要集中在數(shù)據(jù)的獲取和推薦技術(shù)[2]。個(gè)性化推薦是通過推薦算法從大量復(fù)雜的數(shù)據(jù)中分析出客戶的消費(fèi)習(xí)慣和偏好,因此大量有價(jià)值的數(shù)據(jù)是推薦的基礎(chǔ)。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展和數(shù)據(jù)庫技術(shù)的廣泛應(yīng)用,電子商務(wù)中的數(shù)據(jù)也日益豐富和復(fù)雜。在推薦技術(shù)研究中,關(guān)鍵的問題是根據(jù)系統(tǒng)的數(shù)據(jù)確定合適的推薦算法。目前,學(xué)者主要致力于兩方面研究:一方面努力提高算法的效率,滿足實(shí)時(shí)性的要求;另一方面,改進(jìn)目前的算法,使推薦效果更加完美準(zhǔn)確。
電子商務(wù)分為B2C和B2B兩種模式。本文主要側(cè)重于對(duì)B2C電子商務(wù)的分析,應(yīng)用于綜合性的零售網(wǎng)站。目前主要的推薦方法有基于關(guān)聯(lián)規(guī)則的推薦,基于內(nèi)容的推薦,基于協(xié)同過濾的推薦等[3]。本文討論關(guān)聯(lián)規(guī)則在電子商務(wù)推薦系統(tǒng)中的應(yīng)用。
1 數(shù)據(jù)挖掘與電子商務(wù)推薦
電子商務(wù)推薦系統(tǒng)是將數(shù)據(jù)挖掘技術(shù)應(yīng)用到電子商務(wù)領(lǐng)域的范例。隨著電子商務(wù)的應(yīng)用,數(shù)據(jù)庫中可以收集到大量的用戶數(shù)據(jù),如用戶交易數(shù)據(jù)、用戶注冊(cè)數(shù)據(jù)、用戶評(píng)分?jǐn)?shù)據(jù)、用戶咨詢數(shù)據(jù)等。這些數(shù)據(jù)中蘊(yùn)含著豐富的知識(shí),基于數(shù)掘的推薦系統(tǒng)通過數(shù)據(jù)挖掘技術(shù)對(duì)用戶行為和用戶屬性進(jìn)行學(xué)習(xí),從中獲取有價(jià)值的知識(shí),根據(jù)得到的知識(shí)產(chǎn)生推薦。
基于數(shù)據(jù)挖掘的推薦系統(tǒng)根據(jù)數(shù)據(jù)挖掘技術(shù)建立用戶檔案。用戶檔案的建立可以基于對(duì)用戶長期行為的分析,如用戶的瀏覽記錄,購買歷史、性別、職業(yè)、收入、年齡等。也可以基于用戶的當(dāng)前行為,如用戶當(dāng)前的會(huì)話行為、當(dāng)前購物籃信息、當(dāng)前瀏覽商品等。
2 電子商務(wù)推薦系統(tǒng)
2.1 電子商務(wù)推薦系統(tǒng)的結(jié)構(gòu)
電子商務(wù)推薦系統(tǒng)主要由三大部分構(gòu)成:數(shù)據(jù)采集部分、推薦方法部分和輸出部分[4]。數(shù)據(jù)采集部分用來接收用戶的輸入信息;推薦方法部分根據(jù)一定算法和用戶數(shù)據(jù),得出對(duì)目標(biāo)用戶的推薦。該部分是整個(gè)推薦系統(tǒng)的核心部分,個(gè)性化推薦方面的研究很大一部分都集中在找到好的推薦方法;輸出部分主要是指將得到的推薦以某種形式反饋給用戶。
輸入部分主要負(fù)責(zé)對(duì)用戶信息的收集和更新。輸入主要指目標(biāo)用戶,即要求獲得推薦的人為得到推薦而必須進(jìn)行一些輸入,以表達(dá)自己的偏好,包括隱式瀏覽輸入、關(guān)鍵詞和項(xiàng)目屬性輸入和用戶購買歷史等。
輸出部分主要負(fù)責(zé)在系統(tǒng)獲得輸入信息后,輸出推薦給用戶的內(nèi)容。主要形式有:
① 建議:又分為單個(gè)建議、未排序建議列表、排序建議列表,典型的如Top-N:推薦系統(tǒng)根據(jù)客戶的喜好向客戶推薦最可能吸引客戶的前N件產(chǎn)品;
② 預(yù)測(cè):系統(tǒng)對(duì)給定項(xiàng)目的總體評(píng)分;
③ 個(gè)體評(píng)分:輸出其他客戶對(duì)商品的個(gè)體評(píng)分;
④ 評(píng)論:輸出其他客戶對(duì)商品的文本評(píng)價(jià)。
推薦方法部分是推薦系統(tǒng)的核心部分,負(fù)責(zé)對(duì)輸入數(shù)據(jù)的處理,決定著推薦系統(tǒng)的性能優(yōu)劣。推薦方法部分以推薦算法為技術(shù)支撐。
2.2 電子商務(wù)推薦系統(tǒng)的信息模型
電子商務(wù)系統(tǒng)中存在著豐富而復(fù)雜的數(shù)據(jù),如用戶交易數(shù)據(jù)、用戶注冊(cè)數(shù)據(jù)、用戶評(píng)價(jià)數(shù)據(jù)、用戶咨詢數(shù)據(jù)等。這些數(shù)據(jù)中蘊(yùn)含著豐富的知識(shí),是進(jìn)行電子商務(wù)推薦的基礎(chǔ)。通過對(duì)當(dāng)前主要大型購物網(wǎng)站的調(diào)查研究,總結(jié)出了電子商務(wù)網(wǎng)站的主要信息模型,如圖1所示。
另外,在大多數(shù)基于Internet的網(wǎng)上購物商店中,商家都對(duì)商品進(jìn)行了明確的分類,圖2是一個(gè)簡單的示例。商品分類在知識(shí)發(fā)現(xiàn)過程中起著重要作用。在許多實(shí)際應(yīng)用中,強(qiáng)關(guān)聯(lián)規(guī)則更易于出現(xiàn)在商品分類的高層,但可能會(huì)出現(xiàn)公共知識(shí)的重復(fù);另一方面,低層的關(guān)聯(lián)規(guī)則可能更令人感興趣,但發(fā)現(xiàn)的難度更大。因此,在關(guān)聯(lián)規(guī)則挖掘中選擇適當(dāng)?shù)膶哟螌?duì)于關(guān)聯(lián)規(guī)則的挖掘是非常重要的。
2.3 推薦技術(shù)的選擇
在進(jìn)行個(gè)性化推薦時(shí),選擇合適的推薦技術(shù)是成功的關(guān)鍵。零售網(wǎng)站的特點(diǎn)是商品種類繁多,顧客群廣泛,網(wǎng)站訪問量比較大?;趦?nèi)容的推薦只能推薦與已購買商品相似的商品,不能發(fā)現(xiàn)潛在感興趣的商品;協(xié)同過濾推薦的效果取決于客戶的評(píng)價(jià)分?jǐn)?shù)。在現(xiàn)有的零售網(wǎng)站中,大量的商品沒有客戶評(píng)價(jià)或評(píng)價(jià)稀少,不適合應(yīng)用協(xié)同過濾推薦技術(shù);關(guān)聯(lián)規(guī)則與其他的技術(shù)比較有如下的優(yōu)點(diǎn):數(shù)據(jù)源簡單,不需要特殊數(shù)據(jù)源,只要有準(zhǔn)確的交易記錄即可;具有對(duì)用戶購買行為的預(yù)測(cè)性,挖掘用戶的潛在興趣;可以挖掘不同類型的商品,對(duì)商品特性沒有要求[5]。于是可以看出,關(guān)聯(lián)規(guī)則比較適合應(yīng)用在零售網(wǎng)站中。
圖1 信息模型
圖2 商品的分類
關(guān)聯(lián)規(guī)則挖掘就是發(fā)現(xiàn)數(shù)據(jù)集中項(xiàng)集之間有趣的關(guān)聯(lián)或相互關(guān)系[6-7]。它是數(shù)據(jù)挖掘領(lǐng)域的一個(gè)重要分支,最近幾年已被業(yè)界所廣泛研究和應(yīng)用。在電子商務(wù)領(lǐng)域,關(guān)聯(lián)規(guī)則主要用于商品、鏈接或頁面的個(gè)性化推薦。關(guān)聯(lián)規(guī)則常用的挖掘算法是Apriori算法和FP-Growth算法。
Apriori算法的缺陷是它會(huì)產(chǎn)生巨大的候選集,需要多次掃描數(shù)據(jù)庫[8-9]。如果最長的模式是n,則需要n+1次數(shù)據(jù)庫掃描,當(dāng)數(shù)據(jù)庫較大時(shí),性能會(huì)受到較大影響,大大降低挖掘的效率。研究者還提出了各種改進(jìn)的Apriori算法,但是都不能克服原來固有的缺陷。
FP-Growth算法不需要生成大量候選項(xiàng)集,大大降低了搜索開銷,提高了挖掘效率[10-11]。對(duì)FP-Growth方法的性能研究表明:對(duì)于挖掘長的和短的頻繁模式,它都是有效的和可伸縮的,并且效率約比Apriori算法快1個(gè)數(shù)量級(jí)。
通過以上比較,本文選擇FP-Growth算法進(jìn)行關(guān)聯(lián)規(guī)則的挖掘。
3 電子商務(wù)推薦系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)
在此提出了一個(gè)電子商務(wù)推薦系統(tǒng)的體系結(jié)構(gòu)如圖3所示。該結(jié)構(gòu)分為兩個(gè)部分:離線部分和在線部分。離線部分的功能是首先對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理產(chǎn)生事務(wù)集,然后對(duì)事務(wù)集進(jìn)行挖掘產(chǎn)生關(guān)聯(lián)規(guī)則;在線部分與用戶的實(shí)時(shí)交互,利用離線生成的關(guān)聯(lián)規(guī)則和數(shù)據(jù)庫中的信息進(jìn)行分析,產(chǎn)生推薦,然后將推薦結(jié)果通過瀏覽器返回給用戶。
圖3 電子商務(wù)推薦系統(tǒng)
為了驗(yàn)證系統(tǒng)的合理性和適用性,采用AdventureWorks數(shù)據(jù)源對(duì)系統(tǒng)進(jìn)行了測(cè)試。
3.1 離線挖掘關(guān)聯(lián)規(guī)則
系統(tǒng)的離線挖掘部分使用VS2008進(jìn)行開發(fā),數(shù)據(jù)庫采用SQL Server 2005。在這一部分中,可以完成系統(tǒng)參數(shù)的設(shè)置、預(yù)處理、關(guān)聯(lián)規(guī)則的挖掘等功能,用戶界面如圖4所示。
圖4 離線挖掘部分的用戶界面
(1) 系統(tǒng)參數(shù)的確定
在關(guān)聯(lián)規(guī)則的挖掘中,首先要確定最小支持度和最小置信度兩個(gè)參數(shù)。支持度是對(duì)關(guān)聯(lián)規(guī)則重要性的衡量,表示這條規(guī)則的頻度;置信度是對(duì)關(guān)聯(lián)規(guī)則準(zhǔn)確度的衡量,表示規(guī)則的強(qiáng)度。
(2) 預(yù)處理
數(shù)據(jù)庫中的原始數(shù)據(jù)不適合直接進(jìn)行數(shù)據(jù)挖掘,需要進(jìn)行預(yù)處理。預(yù)處理主要完成了以下數(shù)據(jù)處理:
① 聯(lián)合查詢顧客表、商品表、銷售訂單表、銷售訂單明細(xì)表、商品型號(hào)表、生成事務(wù)表。事務(wù)表包括訂單號(hào),商品型號(hào)字段;
② 去除事務(wù)表中商品數(shù)為1的事務(wù);
③ 生成頻繁項(xiàng)集表;
④ 去除事務(wù)中的非頻繁商品,并將事務(wù)中的商品按降序排列。
(3) 關(guān)聯(lián)規(guī)則的挖掘
這里選擇FP-Growth算法進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,在第2節(jié)已經(jīng)作了詳細(xì)的分析。在FP-Growth算法中,最關(guān)鍵的兩個(gè)數(shù)據(jù)結(jié)構(gòu)是FP-Tree和關(guān)聯(lián)規(guī)則表。將FP-Tree保存在數(shù)據(jù)表中,具體結(jié)構(gòu)如圖5所示。這個(gè)數(shù)據(jù)表結(jié)構(gòu)充分描述了FP-Tree中的節(jié)點(diǎn)間的關(guān)系,節(jié)點(diǎn)編號(hào)表示節(jié)點(diǎn)在樹中的惟一編號(hào);名稱表示節(jié)點(diǎn)所代表項(xiàng)目的名稱;計(jì)數(shù)表示項(xiàng)目在事務(wù)集中出現(xiàn)的頻次;父節(jié)點(diǎn)編號(hào)指向本節(jié)點(diǎn)的父節(jié)點(diǎn);子節(jié)點(diǎn)數(shù)表示本節(jié)點(diǎn)的孩子節(jié)點(diǎn)數(shù),可以判斷該節(jié)點(diǎn)是否是葉節(jié)點(diǎn)。
關(guān)聯(lián)規(guī)則存儲(chǔ)在個(gè)性化推薦系統(tǒng)的數(shù)據(jù)庫中,以備在線推薦使用,如圖6所示。其中,置信度表示關(guān)聯(lián)規(guī)則的強(qiáng)度,反映了規(guī)則的可信度。置信度是生成推薦列表的重要指標(biāo)。置信度越高的規(guī)則,其結(jié)果越容易被推薦給用戶。
圖5 FP-Tree表
圖6 規(guī)則表
圖5 FP-Tree表
圖6 規(guī)則表
在這一過程中主要分為3個(gè)步驟如圖7所示:首先根據(jù)事務(wù)集建立FP-Tree,然后挖掘FP-Tree生成頻繁項(xiàng)集,最后根據(jù)頻繁項(xiàng)集產(chǎn)生關(guān)聯(lián)規(guī)則。
圖7 FP-Growth算法
3.2 在線推薦
進(jìn)行在線推薦時(shí),系統(tǒng)首先識(shí)別當(dāng)前登錄的用戶,然后通過分析用戶已購買商品信息與規(guī)則信息運(yùn)算出推薦信息。在線推薦的流程如圖8所示。
圖8 在線推薦流程
4 結(jié) 語
本文以數(shù)據(jù)挖掘中的關(guān)聯(lián)規(guī)則理論為基礎(chǔ),從應(yīng)用的角度分析了電子商務(wù)系統(tǒng)中個(gè)性化推薦系統(tǒng)的需求和信息模型。針對(duì)B2C網(wǎng)上零售商店的特點(diǎn),選擇基于關(guān)聯(lián)規(guī)則的個(gè)性化推薦技術(shù),設(shè)計(jì)了一個(gè)電子商務(wù)個(gè)性化推薦系統(tǒng)?,F(xiàn)實(shí)中的電子商務(wù)系統(tǒng)包含大量復(fù)雜的數(shù)據(jù),只用關(guān)聯(lián)規(guī)則還不能達(dá)到完美的效果。因此,下一步的工作是結(jié)合多種數(shù)據(jù)挖掘模型,實(shí)現(xiàn)更加完善的個(gè)性化推薦服務(wù)。
參 考 文 獻(xiàn)
[1]RESNICK Varian. Recommendation systems \\.Communications of the ACM, 1997, 40(3): 56-58.
[2]易明.基于Web挖掘的電子商務(wù)個(gè)性化推薦機(jī)理與方法研究[D].武漢:華中科技大學(xué),2006.
[3]SARWAR B, KARYPIS G, KONSTAN J. Analysis of re-commendation algorithms for E-commerce \\. \\: ACM Conference on Electronic Commerce, 2000.
[4]劉麗霞,莊奕琪.電子商務(wù)系統(tǒng)的數(shù)據(jù)挖掘與智能推薦預(yù)測(cè)的研究[J].計(jì)算機(jī)工程與科學(xué),2008,30(2):92-95.
[5]高彩霞.基于關(guān)聯(lián)規(guī)則挖掘的網(wǎng)上書店電子商務(wù)的研究與設(shè)計(jì)[J].大同:山西大同大學(xué),2008.
[6]HAN Jia-wei, KAMBER M. Data mining concepts techniques(Version 1) \\. Beijing: China Machine Press, 2001.
[7]張峰,常會(huì)友,衣楊.基于規(guī)則的電子商務(wù)推薦系統(tǒng)模型和實(shí)現(xiàn)\\.計(jì)算機(jī)集成制造系統(tǒng),2004,10(8):898-902.
[8]BODON F. A fast APRIORI implementation \\. Florida: Proc. of the IEEEICDM Workshop on FIMI′03, 2003.
[9]AGRAWAL R, SRIKANT R. Fast algorithms for mining association rules in large databases \\// Proceedings of 20th International Conference on Very Large Data Bases. Santiago De Chile, Chile: \\, 2003: 487-499.
[10]王新宇,杜孝平,謝昆青.FP-Growth算法的實(shí)現(xiàn)方法研究[J].計(jì)算機(jī)工程與應(yīng)用,2004,40(9):174-176.
[11]FRANCISCO G S. An integrated approach for developing E-commerce applications \\. Expert Systems with Applications, 2005,28: 223-235.