王玉珍,王 倩
(蘭州財經大學信息工程學院,甘肅蘭州730020)
Apriori算法在商務網站用戶行為分析中的應用
王玉珍,王 倩
(蘭州財經大學信息工程學院,甘肅蘭州730020)
在介紹關聯規則的相關概念后分析了關聯規則經典的Apriori算法,探討了Apriori算法在某商務網站用戶行為分析中的具體應用,通過Apriori算法的挖掘結果分析出用戶行為特征,即用戶在點擊購買不同商品時存在著某種必然或者大概率事件,從而改善網站結構,提高用戶滿意度.
關聯規則;Apriori算法;用戶行為
2013年,全球網民總數量已超過20億,將近全球總人口的三分之一.在歐美國家,90%以上的企業都建立了自己的網站,通過網絡尋找客戶和需要的產品,已經成為了新的商業銷售趨勢.隨著互聯網用戶數量的增多,對于網絡用戶行為的研究越來越重要,而關聯規則挖掘是分析用戶行為特征的重要方法之一.本文以某商務網站為例,對關聯規則挖掘算法(Apriori算法)在用戶行為分析中的具體應用進行了研究.所研究的內容對改善網站結構,增加網站點擊率等方面有重要意義.
因關聯規則挖掘算法在用戶行為分析中的重用性,近年來不少學者給予了高度的關注.如,孫燕花[1]從安全的角度分析了用戶行為,利用CURE算法,建立模型,提供用戶行為的分析框架,區分用戶的正常行為和異常行為;王振宇[2]利用Hadoop框架,設計海量日志數據處理模型,分析搜索引擎中用戶的行為,從而改進搜索引擎的交互功能;丁青[3]以校園網的用戶為對象,利用K-means算法,進行聚類分析,分析出校園用戶行為特征,從而對校園網進行改進,滿足用戶個性化需求;柴巧葉[4]通過關聯規則分析,利用FrequentAccess算法,發現用戶的頻繁訪問模式;馬力[5]從檢測和分析的角度,研究Internet的網絡用戶行為,討論了正常行為的聚類研究方法和異類行為的檢測方法,提供了一種有效解決網絡用戶行為自主發現的途徑;杜海濤[6]探討了關聯規則算法在購物籃分析中的應用,重點分析了超市消費者的消費行為,通過分析發現商品之間的關聯規則,從而調整商品位置,使其更符合消費者的消費習慣,提高銷售業績;張忻[7]介紹了關聯規則挖掘的基本原理,利用Apriori算法分析網絡用戶行為并建立了模型;丁振國[8]根據SNS用戶行為存在序列性這一特點,利用序列模式挖掘,通過GSP算法對社交網絡用戶行為進行分析,從而改進網站結構、優化社交網絡等.可見,目前該領域的研究成果還是比較多,從不同角度對用戶行為分析進行了研究,但還未形成系統性,因此本文運用關聯規則挖掘的經典算法——Apriori算法,對某商務網站的用戶行為進行分析,發現用戶行為特征,從而改善網站結構,提高用戶滿意度.
1.1 相關概念
定義1項集:用表示數據庫中各項的集合,并且用表示所有事務的集合.每個事務ti包含的項集都是I的子集.在關聯分析中,項集是項的集合,用X表示,可以包含0個或多個項.如果一個項集包含k個項,則稱它為k-項集.
定義2支持度計數:指在事務集T中某個項集X出現的次數,即事務集T包含特定項集的事務個數.通常,項集X的支持度計數σ(X)可以表示為:

其中,符號 ||·表示集合中元素的個數.
定義3支持度和置信度:支持度(support)就是該項集的頻繁程度.置信度(confidence)用來確定Y在包含的事務中出現的頻繁程度,相當于Y在X條件下的條件概率.用數學公式表示支持度(s)和置信度(c)如下:

定義4頻繁項集:如果一個項集的支持度計數大于或等于給定的最小支持度閥值,那么就稱它為頻繁項集,否則稱為非頻繁項集.
定義5關聯規則:關聯規則是形如A→B的蘊含表達式,并且A和B沒有交集,即A?B=?.
定義6先驗原理:如果一個項集是頻繁的,則它的所有子集一定也是頻繁的.相反,如果一個項集是非頻繁的,則它的所有超集也一定是非頻繁的.把該規則稱為先驗原理.
定義7FK-1×FK-1方法:函數候選k-項集產生的過程,通過合并一對頻繁(k-1)-項集產生,并且僅當它們的前k-2個項都相同時,才能合并.用數學方式解釋:令和 B=是一對頻繁(k-1)-項集,合并A和 B,如果它們滿足如下條件:
1.2 Apriori算法
Apriori算法是關聯規則挖掘的經典算法,它率先利用了基于支持度的剪枝技術,系統的控制候選項集指數增長.
算法1中給出了Apriori算法產生頻繁項集部分的偽代碼:
算法1 Apriori算法的頻繁項集產生
步驟1:k=1
步驟3:repeat
步驟4: k=k+1
步驟5: Ck=FK-1×FK-1//產生候選項集
步驟6:for每個事務t∈Tdo
步驟8: for每個候選項集c∈Ctdo
步驟9: σ(c)=σ(c)+1 //支持度計數增值
步驟10: endfor
步驟11:endfor
步驟13:untilFk=?
步驟14:Result=?Fk
令Ck為候選k-項集集合,而Fk為頻繁k-項集的集合:
第一步:該算法通過單遍掃描事務數據庫,確定每個項的支持度.掃描完后,就得到所有頻繁1-項集的集合F1(步驟1和步驟2).
第二步:使用上一次迭代發現的頻繁(k-1)-項集,產生新的候選k-項集(步驟5).候選項集的產生使用FK-1×FK-1方法實現.
第三步:掃描事務數據集(步驟6-10),對候選項的支持度計數.確定包含在每一個事務t中的Ck中的所有候選k-項集.
第四步:計算候選項的支持度計數之后,刪去支持度計數小于minsup的所有候選項集(步驟12).
第五步:當沒有新的頻繁項集產生,即Fk為空集時,算法結束(步驟13).
利用關聯規則,可分析商務網站的用戶行為,發現產品之間的關聯關系,分析影響用戶購買的因素,預測用戶下一個購買行為.通過關聯規則分析可以全面了解用戶的需求,能夠實時處理,分析周期較短,并且能夠形成良性循環.下面以Apriori算法在某商務網站中的應用為例,分析其具體應用過程.
2.1 Apriori算法應用過程
將Apriori算法應用到收集了的某商務網站數據挖掘分析中,可以發現用戶行為特征.由于源數據屬性和記錄都比較多,僅選取一部分數據進行關聯分析(如表1所示).

表1 某商務網站商品部分交易記錄
2.1.1 產生頻繁項集
①對事務數據庫進行第一次遍歷,將事務數據庫中的每個項集都作為候選1-項集F1中的元素,并且確定各元素的支持度計數(如圖1所示).

圖1 搜索候選1-項集和頻繁1-項集
②設定一個最小支持度計數,假設為3,則最小支持度閥值就是3/9=33.3%.這樣就可以確定頻繁1-項集C1(如圖1所示)
③運用頻繁1-項集,產生候選2-項集F2.這里采用C1⊕C1方法,產生的F2中包含個2-項集.再次掃描事務數據庫,獲得候選2-項集F2中各元素的支持度計數(如圖2所示).
④根據設定的最小頻繁支持度計數,確定頻繁2-項集C2.
⑤采用FK-1×FK-1方法,利用頻繁2-項集,產生候選3項集,遍歷事務數據庫,計算各項集的支持度計數(如圖3所示).
⑥根據設定的最小頻繁支持度計數,進行剪枝,確定頻繁3-項集C3(如圖4所示).

圖2 搜索候選2-項集和頻繁2項集

圖3 通過合并一對頻繁2-項集生成候選3-項集F3

圖4 通過剪枝生成頻繁3-項集C3
⑦同理,采用FK-1×FK-1方法,利用頻繁3-項集,產生候選4項集F4{A ,B,C,D},游歷事務數據庫得支持度計數為1,所以沒有頻繁4-項集.
⑧此時找到了所有頻繁項集,即{A,B,D}和{A,C,D}以及它們的非零子集.
2.1.2 產生強關聯規則
(Ⅰ)對于每個頻繁項集C3,產生C3的所有非空子集:{A ,B},{A ,D},{B ,D},{A ,C},{C ,D},{A},{B},{C},{D}.
(Ⅱ)設最小置信度閥值為70%,根據置信度公式,求得各關聯規則的置信度:

根據各關聯規則的置信度可知,第⑴、⑸、⑹、⑽規則,由于它們的信任度大于最小置信度閥值,屬于強關聯規則被保留下來.
2.2 應用關聯規則算法的結果分析
根據以上關聯規則分析,可以得出商務網站用戶行為的某些特征.通過⑴可知,用戶購買了A和B就一定會購買產品D;通過⑸可知,如果用戶購買了A和C,則一定會購買產品D;根據⑹可知,如果用戶購買了產品C和D,則再購買產品A的概率為75%;根據⑽分析出如果用戶購買產品C,就有75%的可能性同時購買A和D.由此可以得出以下結論:
(1)由于某些原因,用戶在購買A和B產品或者A和C產品,就一定會購買D產品.
(2)用戶如果購買了C和D產品,有很大可能購買A產品,但不是百分之百可能.
(3)產品C和產品A、D的銷量有很大的聯系,用戶如果購買了C產品,就有很大可能購買A和D產品.
通過關聯規則分析發現的用戶行為特征,可以對網站結構進行改進,使之更充分地滿足用戶需求,從而提高用戶滿意度.根據各產品之間的關聯關系,該商務網站可以采取各種促銷手段,調整銷售方式,提高利潤.
2.3 算法驗證
對Apriori算法在商務網站用戶行為分析中的有效性進行了驗證.實驗環境為Windows7、Intel Corei5@3.1GHz、4GB內存,用VC++語言實現了Apriori算法.測試數據是來自于蘭州市的一家購物網站——三維商城(www.3d100.cn),從該網站的交易數據庫中隨機抽取了12000條交易記錄,共涉及300多個商品.首先要對收集到的數據進行清洗、凈化、整理,將數據整合成能被挖掘算法利用的數據,保存于事務數據庫中;然后,進行關聯規則挖掘.將最小支持度閾值設為33%,最小置信度閾值設為70%,利用Apriori算法對用戶所購買的產品進行相關性分析.通過算法實驗發現,Apriori算法可以找出商務網站用戶所購買商品之間的關聯規則,分析影響用戶購買的因素,預測用戶的下一次購買行為.同時,也可根據顧客購買商品的相關性,發現消費者在消費過程中的喜好,從而可以更好地開發顧客的購買潛力,實現商務網站的利益最大化.
Apriori算法是關聯規則分析中的經典算法,通過先驗原則找到頻繁項集,并根據置信度求得強關聯規則.雖然這種算法需要多次掃描數據庫,但是其操作簡便、便于理解.將Apriori算法應用到商務網站的用戶行為分析中,是一種非常有意義的嘗試.根據分析結果可以了解用戶的行為特征,從而制定相應的網絡營銷策略或調整商務網站結構,提高用戶的滿意度.
[1]孫燕花,李杰,李建.基于CURE算法的網絡用戶行為分析[J].計算機技術與發展,2011,21(9):35-38.
[2]王振宇,郭力.基于Hadoop的搜索引擎用戶行為分析[J].計算機工程與科學,2011,33(4):115-120.
[3]丁青,周留根,朱愛兵,等.基于K-means聚類算法的校園網用戶行為分析研究[J].微計算機應用,2010,31(6):74-80.
[4]柴巧葉.基于關聯規則的用戶頻繁訪問模式研究[J].太原師范學院學報,2011,10(2):87-89.
[5]馬力,焦李成,董富強.一種Internet的網絡用戶行為分析方法的研究[J].微電子學與計算機,2005,22(7):124-126.
[6]杜海濤,陳定方,張波.一種基于關聯規則的超市購物籃分析方法[J].湖北工業大學學報,2008,23(2):53-55.
[7]張忻,李昆侖.基于關聯規則挖掘的網絡行為分析系統設計[J].電腦知識與技術:學術交流,2011(4):2333-2334.
[8]丁振國,宋薇,李婧.基于序列模式挖掘的社交網絡用戶行為分析[J].現代情報,2013,33(3):56-60.
[9]王攀,張順碩,陳雪嬌.基于DBP的Web用戶行為分析關鍵技術[J].電信快報:網絡與通信,2008(8):13-15.
[10]王偉.關聯規則中的Apriori算法的研究與改進[D].青島:中國海洋大學,2012.
[11]李強.數據挖掘中關聯分析算法研究[D].哈爾濱:哈爾濱工程大學,2010.
[12]畢建欣,張岐山.關聯規則挖掘算法綜述[J].中國工程科學, 2005,7(4):88-94.
[13]劉金勇.WEB數據挖掘在電子商務中的研究應用[J].網絡安全, 2013(9):25-26.
[14]周賀來.Web挖掘中關聯規則的研究與應用[D].鄭州:州州大學,2006.
[15]烏文波.應用Apriori關聯規則算法的數據挖掘技術挖掘電子商務潛在客戶[D].杭州:浙江工業大學,2012.
[16]崔寅舟.關聯規則和時序模式挖掘技術在服裝專賣店中應用的研究[D].上海:上海交通大學,2012.
[17]陳則芝,李冬梅.數據挖掘關聯規則Apriori算法的優化[J].山西大同大學學報,2008,24(4):35-37.
【編校:王露】
AprioriAlgorithmApplicationinBusinessWebsite'sUserBehaviorAnalysis
WANGYuzhen,WANGQian
(SchoolofInformationEngineering,LanzhouUniversityofFinanceandEconomics,Lanzhou,Gansu730020,China)
Byintroducingtheconceptsofassociationrules,theassociationrules'classicalApriorialgorithmanditsappli?cationinbusinesswebsite'suserbehaviorwereanalyzed.TheresultsfromApriorialgorithmcanrevealtheuserbehavior feature,thatiswhenusersclickedtobuydifferentcommoditythereisacertaininevitableeventorahighprobability event.Thatimprovesthesitestructureandcustomersatisfaction.
associationrules;Apriorialgorithm;userbehavior
TP301.6;TP393
A
1671-5365(2015)12-0015-04
王玉珍,王倩.Apriori算法在商務網站用戶行為分析中的應用[J].宜賓學院學報,2015,15(12):15-18. WANGYZ,WANGQ.AprioriAlgorithmApplicationinBusinessWebsite'sUserBehaviorAnalysis[J].JournalofYibinUniver?sity,2015,15(12):15-18.
2015-08-06修回:2015-09-09
甘肅省教育廳項目(2013B-047);2013年甘肅省高等學校基本科研業務費項目
王玉珍(1970-),女,教授,碩士,研究方向為數據挖掘、電子商務
時間:2015-09-1015:38
http://www.cnki.net/kcms/detail/51.1630.z.20150910.1538.001.html