陳海紅
摘要:隨著電子商務(wù)的普及,商品智能推薦成為越來越多電子商務(wù)網(wǎng)站的“標(biāo)配”。本文基于Abrjot算法提出了一種新的智能推薦模型,并利用MapReduce架構(gòu)設(shè)計(jì)了推薦策略。本文還對(duì)新模型進(jìn)行了仿真實(shí)驗(yàn),結(jié)果表明,隨著求解精度的增加,新算法連接和剪枝過程明顯優(yōu)于傳統(tǒng)串行搜索。
【關(guān)鍵詞】電子商務(wù) Abrjot算法 MapReduce架構(gòu) 智能推薦模型
1 引言
近年來,隨著互聯(lián)網(wǎng)的普及,電子商務(wù)已經(jīng)走入尋常百姓家,人們足不出戶,就可以在網(wǎng)絡(luò)上買到自己心儀的商品。具有明確需求的用戶可以通過電子商務(wù)網(wǎng)站的搜索引擎查找想買的商品,但據(jù)Amazon統(tǒng)計(jì),這樣的客戶只有16%,更多的用戶只是在網(wǎng)站上盲目瀏覽,“嘗試”遇到自己想不到但認(rèn)為有用的商品。據(jù)Amazon的數(shù)據(jù),由于使用了個(gè)性化推薦系統(tǒng),其網(wǎng)站的銷售額在2016年提高了30%。
目前,國內(nèi)外電子商務(wù)的推薦研究工作主要集中在以下幾個(gè)方而:
(1)推薦算法的基礎(chǔ)性研究。文獻(xiàn)[1]全而介紹了現(xiàn)有主要的推薦方法,分析了各自的優(yōu)勢(shì)與不足,總結(jié)了該領(lǐng)域目前所而臨的主要問題,為推薦技術(shù)的研究勾勒出一條清晰的主線,為相關(guān)研究者提供有益的參考。作者將現(xiàn)有的主流算法歸類為四種,即:協(xié)同過濾推薦算法、基于內(nèi)容的推薦算法、基于圖結(jié)構(gòu)的推薦算法以及混合算法。作者在文中還介紹了評(píng)分估計(jì)方法和推薦算法評(píng)價(jià)準(zhǔn)則。
(2)推薦效率和推薦質(zhì)量的平衡性研究。在任何系統(tǒng)中,實(shí)現(xiàn)效率和實(shí)現(xiàn)質(zhì)量都是一對(duì)天然存在的矛盾,在商品自動(dòng)化推薦領(lǐng)域也不例外[2]?;趦?nèi)容的推薦方法猶豫需要分析用戶數(shù)據(jù)的內(nèi)容信息,會(huì)占用大量計(jì)算資源,從而導(dǎo)致分析效率降低,但隨之帶來的就是推薦質(zhì)量的提高:而近年來興起的基于協(xié)同過濾技術(shù)的推薦算法,由于其不需要分析對(duì)象的特征屬性,可以在準(zhǔn)確率不降低的前提下提高推薦效率而得到學(xué)者們的關(guān)注。為解決上述兩種技術(shù)存在的不足,人們提出基于知識(shí)的推薦技術(shù),這種推薦技術(shù)由于不依靠客戶商品評(píng)分?jǐn)?shù)據(jù),解決了數(shù)據(jù)量不足的問題,提高了推薦質(zhì)量。
(3)推薦系統(tǒng)的規(guī)模性研究。從現(xiàn)有文獻(xiàn)看,推薦算法針對(duì)某特定網(wǎng)站的研究較多,而通用性的推薦算法研究并不多。到目前為止,絕大多數(shù)電子商務(wù)推薦技術(shù)及系統(tǒng)研究均是基于特定網(wǎng)站的,不能滿足大規(guī)模網(wǎng)站的推薦應(yīng)用。Chiu等人提出的而向通用電子商務(wù)社區(qū)的推薦系統(tǒng)可以較廣泛應(yīng)用于文中定義的智能社區(qū)。本文的研究在第三部分中展開。
本文剩余部分如下:第二部分介紹本文擬使用的算法模型:第三部分利用該模型設(shè)計(jì)推薦策略;第四部分進(jìn)行仿真實(shí)驗(yàn);最后是本文小結(jié)。
2 模型理論基礎(chǔ)與設(shè)計(jì)思路
使用遞歸方法,可以提高云環(huán)境下具備動(dòng)態(tài)性和模糊性的用戶推薦算法的準(zhǔn)確性,同時(shí)可以減少噪音。
2.1 Abrjot算法
文獻(xiàn)[5]提出的Abrj ot算法用戶挖掘關(guān)聯(lián)規(guī)則,該算法使用逐層搜索的迭代算法,縮小了聚類的范圍。該算法由鏈接和剪枝兩個(gè)步驟組成。鏈接,顧名思義就是將不同的信息節(jié)點(diǎn)連接在一起,首先找出一個(gè)信息點(diǎn)Lk,利用前一個(gè)信息點(diǎn)Lk-1通過自連接運(yùn)算構(gòu)成K*序列集合Ck,作為用于數(shù)據(jù)提取的候選集。然后是剪枝,顧名思義就是把無用信息刪除掉,對(duì)于Ck中包含的元素,Ck只包含所有的頻繁k*序列集,通過對(duì)DB的遍歷掃描計(jì)算,得到Ck候選集合元素的數(shù)量。從而可以確定Lk和Lk-1。
2.2 利用MapReduce實(shí)現(xiàn)自動(dòng)化推薦模型建立
自動(dòng)化推薦有多種手段和方法,既可以利用傳統(tǒng)的關(guān)聯(lián)技術(shù)、機(jī)器學(xué)習(xí),也可以采用數(shù)據(jù)挖掘、模糊決策等,這取決于數(shù)據(jù)量和樣本本身的數(shù)據(jù)質(zhì)量。如果數(shù)據(jù)量較大,建議采用數(shù)據(jù)挖掘的方法更有效果。本文假設(shè)的應(yīng)用環(huán)境是中高數(shù)據(jù)吞吐量電子商務(wù)網(wǎng)站,因此選擇MapReduce這種數(shù)據(jù)挖掘技術(shù)。MapReduce采用分布式策略處理大量用戶行為數(shù)據(jù),從而可以提高處理效率,可以充分利用其迭代式的運(yùn)算框架滿足數(shù)據(jù)挖掘分析的需求。
假設(shè)用戶訪問站點(diǎn)的訪問數(shù)據(jù)均為開放狀態(tài),本文將利用用戶訪問行為軌跡,建立一種基于用戶行為特征分析的云環(huán)境下的用戶商品推薦機(jī)制。在這種機(jī)制中,用戶終端首先收集用戶訪問電子商務(wù)網(wǎng)站的行為軌跡信息,按照既定規(guī)則進(jìn)行數(shù)據(jù)預(yù)處理后傳輸至用戶行為分析模塊。用戶行為數(shù)據(jù)分析模塊調(diào)用用戶瀏覽歷史軌跡記錄,采用統(tǒng)計(jì)學(xué)聚合分析,利用分布式模型對(duì)時(shí)問片段內(nèi)的工作狀態(tài)和心理預(yù)期進(jìn)行定性刻畫。任何調(diào)度模塊收到任務(wù)管理模塊的請(qǐng)求后可以進(jìn)行動(dòng)態(tài)資源分配。模型如圖1所示。
眾所周知,MapReduce是一種對(duì)大數(shù)據(jù)進(jìn)行分布式處理的分析算法。為了提高計(jì)算效率,MapReduce首先將海量數(shù)據(jù)切分為小數(shù)據(jù)集,提交到分布式的計(jì)算節(jié)點(diǎn)進(jìn)行并行處理。在本文中,MapReduce將新算法中的剪枝和鏈接階段轉(zhuǎn)化為Map和Reduce兩個(gè)函數(shù)。在MapReduce平臺(tái)里,一個(gè)作業(yè)的輸入數(shù)據(jù)集合被切分為多個(gè)獨(dú)立的小數(shù)據(jù)集合,交由映射過程并行處理,從而提高了計(jì)算效率。
3 利用模型的推薦策略設(shè)計(jì)
現(xiàn)有的關(guān)聯(lián)規(guī)則算法都關(guān)注算法的準(zhǔn)確性,卻忽略了算法的計(jì)算效率。在實(shí)際推薦過程中,推薦的效率是至關(guān)重要的一個(gè)因素,用戶極有可能會(huì)在1秒內(nèi)對(duì)推薦等待產(chǎn)生放棄心理。因此,充分考慮計(jì)算效率的推薦策略才有意義。
3.1 Map過程
利用Hadoop平臺(tái)中的MapReduce任務(wù)調(diào)度等待響應(yīng)機(jī)制,可以計(jì)算出主節(jié)點(diǎn)和從節(jié)點(diǎn)的閑置狀態(tài),從而可以自動(dòng)調(diào)度空閑節(jié)點(diǎn)進(jìn)行計(jì)算,一次響應(yīng)計(jì)算請(qǐng)求,提高計(jì)算效率。
3.2 Reduce過程endprint
Reduce
{
for every direct ansewrt∈D
{
For anyone itemx∈t
fx,count++
Ifx,count++ Delete x: } } = {xlx∈n x.count≥minsup) return for (k=2, L_k-l≠φ;k++){ =Gen_Abrjot (,min_sup);; While every answer t ∈?D? {//count theelements in D =subset(,t);; while things c∈c,count___; retum } 4 仿真實(shí)驗(yàn) 實(shí)驗(yàn)環(huán)境: 平臺(tái):Hadoop 0.20.0開發(fā)環(huán)境; 硬件配置: Core2 E77500 Dual-core Processor 4GBRAM; 軟件配置: Ubuntu Linux 11.10, Hadoop-0.20.0, JDK16。 按照Hadoop部署手冊(cè),首先將Abrjot算法Jar包部署到實(shí)驗(yàn)平臺(tái),將Hadoop中自帶的FIFO的配置節(jié)點(diǎn)替換為新的配置文件。為了按照Hadoop模式運(yùn)行,本實(shí)驗(yàn)選擇9臺(tái)PC機(jī)作為C,luster,其中有8臺(tái)PC作為從節(jié)點(diǎn)服務(wù)器。實(shí)驗(yàn)分別采用FIFO傳統(tǒng)調(diào)度算法和本文所提出的算法,在HDS這個(gè)基準(zhǔn)測(cè)試程序中進(jìn)行Abrjot變化實(shí)驗(yàn),以及用戶特征行為獲取,輸出初始規(guī)則集。為了比較并行算法和傳統(tǒng)串行算法對(duì)JOB的影響,設(shè)置JOB精度為8個(gè)組,再根據(jù)Cluster的當(dāng)前作業(yè)負(fù)載確定每組中JOB的數(shù)量。 5 結(jié)論 本文針對(duì)云環(huán)境下推薦算法的研究方向展開討論,構(gòu)建了一種基于Abrj ot算法的MapReduce推薦模型,并進(jìn)行了仿真實(shí)驗(yàn)進(jìn)行橫向性能分析,結(jié)果表明,新算法在求解精度越高時(shí)有明顯的優(yōu)勢(shì)。 參考文獻(xiàn) [1]楊博,趙鵬飛.推薦算法綜述[J].山西大學(xué)學(xué)報(bào),2011,34(03): 337-350. [2]Kouichi. An Idea of the Agent-based Information Recommending System Using the Statistical Information. IEEE.2000:143-146.