嚴(yán)春景 謝勝利
摘要:網(wǎng)民借助于網(wǎng)絡(luò)工具進(jìn)行的一切操作都會(huì)產(chǎn)生大量的有用數(shù)據(jù),尤其是在當(dāng)下電商的迅猛發(fā)展局勢(shì)下,利用數(shù)據(jù)挖掘技術(shù)分析這些數(shù)據(jù)有助于提出更好的推薦系統(tǒng)和廣告設(shè)置。該文就基于目前的研究現(xiàn)狀分析并設(shè)計(jì)以Hadoop大數(shù)據(jù)平臺(tái)為依托,采用K-means算法實(shí)現(xiàn)本系統(tǒng)。
關(guān)鍵詞:數(shù)據(jù)挖掘;網(wǎng)絡(luò)行為;Hadoop大數(shù)據(jù)
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)03-0049-02
據(jù)《中國(guó)移動(dòng)互聯(lián)網(wǎng)用戶行為統(tǒng)計(jì)報(bào)告2015》一文中的數(shù)字顯示,截至2014年,中國(guó)移動(dòng)互聯(lián)網(wǎng)用戶規(guī)模達(dá)7.29億,其中社交、娛樂(lè)、實(shí)用工具以及閱讀類應(yīng)用用戶占比超過(guò)70%,出行旅游、消費(fèi)(實(shí)物)類應(yīng)用用戶占比大于40%[1]。網(wǎng)絡(luò)世界里充滿著多方面的信息和數(shù)據(jù),如何通過(guò)分析這些數(shù)據(jù)來(lái)發(fā)掘用戶的潛在需求,為用戶推薦更好的產(chǎn)品或服務(wù)是當(dāng)前電子商務(wù)的一大營(yíng)銷策略。本文從云計(jì)算技術(shù)和聚類算法的兩個(gè)角度來(lái)設(shè)計(jì)用戶行為分析系統(tǒng),希望能為電商系統(tǒng)的精準(zhǔn)營(yíng)銷做出貢獻(xiàn)。
1系統(tǒng)流程
本次研究主要是圍繞如何在Hadoop分布式處理平臺(tái)之上,借助云計(jì)算的方法來(lái)研究網(wǎng)絡(luò)用戶的行為而展開(kāi)的。利用網(wǎng)絡(luò)用戶行為所產(chǎn)生的海量的日志數(shù)據(jù)構(gòu)建大數(shù)據(jù)環(huán)境,借助Hadoop分布式處理的框架和聚類算法等挖掘出相應(yīng)的信息。
1.1數(shù)據(jù)提取
本系統(tǒng)針對(duì)網(wǎng)購(gòu)用戶的行為進(jìn)行分析,數(shù)據(jù)來(lái)源于搜狗實(shí)驗(yàn)室所提供的用戶查詢?nèi)罩?,主要是Sogou搜索引擎部分通過(guò)網(wǎng)絡(luò)爬蟲(chóng)抓取到的網(wǎng)頁(yè)查詢需求及用戶點(diǎn)擊情況的網(wǎng)頁(yè)查詢?nèi)罩緮?shù)據(jù)集合,該數(shù)據(jù)集合的格式為:訪問(wèn)時(shí)間 用戶ID [查詢?cè)~] 該URL在返回結(jié)果中的排名 用戶點(diǎn)擊的順序號(hào) 用戶點(diǎn)擊的URL,其中,用戶ID是根據(jù)用戶使用瀏覽器訪問(wèn)搜索引擎時(shí)的Cookie信息自動(dòng)賦值,即同一次使用瀏覽器輸入的不同查詢對(duì)應(yīng)同一個(gè)用戶ID[2]。
1.2數(shù)據(jù)預(yù)處理
Sogou實(shí)驗(yàn)室所提供的數(shù)據(jù)格式是一條數(shù)據(jù)占據(jù)一行,行內(nèi)數(shù)據(jù)以空格間隔,因此需要切割數(shù)據(jù)并存放在一組對(duì)象數(shù)組中,對(duì)象元素包含1.1所敘述的數(shù)據(jù)集合格式的基本屬性。
1.3用戶行為的集群性分析
本系統(tǒng)需要對(duì)用戶的行為進(jìn)行分門(mén)別類,即打上用戶標(biāo)簽,標(biāo)注該用戶行為的詳細(xì)信息,比如用戶停留在某一網(wǎng)站時(shí)間長(zhǎng)短、購(gòu)物車?yán)锏奈锲奉悇e以及上網(wǎng)時(shí)間段等更細(xì)粒度的信息。把結(jié)果歸并成某一特征規(guī)律,從而得出用戶和網(wǎng)站之間的映射關(guān)系。如果此后再關(guān)注用戶的網(wǎng)絡(luò)行為時(shí),便可以產(chǎn)生相應(yīng)的推薦系統(tǒng)。
1.4挖掘用戶潛在的其他可能行為:
通過(guò)給用戶貼標(biāo)簽,分析用戶的上網(wǎng)習(xí)慣并結(jié)合關(guān)聯(lián)規(guī)則,我們可以發(fā)掘出客戶的多種需求,向其推銷相關(guān)的產(chǎn)品或服務(wù)。比如購(gòu)買圓珠筆的顧客中有65%也會(huì)購(gòu)買筆記本,利用這個(gè)規(guī)則,網(wǎng)站可以合理地規(guī)劃商品擺放問(wèn)題。
1.5優(yōu)化用戶行為分析流程:
為了提高用戶行為分析效率,本系統(tǒng)需要解決的問(wèn)題是“如何利用用戶的標(biāo)簽行為給用戶推薦物品”和“如何在用戶給物品打標(biāo)簽時(shí)給用戶推薦適合該物品的標(biāo)簽”。
2實(shí)驗(yàn)方法及過(guò)程
通過(guò)聚類算法可以把相似度高的對(duì)象歸為一類,以實(shí)現(xiàn)“物以類聚”,我們可以用聚類算法來(lái)對(duì)用戶的上網(wǎng)行為進(jìn)行“聚類”,將具有相同的上網(wǎng)習(xí)慣的用戶歸為一類,并為其“貼上”相同的用戶標(biāo)簽。本文采用K-means算法實(shí)現(xiàn)聚類過(guò)程,并將其 MapReduce化。
2.1 K-means算法簡(jiǎn)介
K-means算法是十大經(jīng)典算法中的之一,其核心思想就是將m個(gè)樣本點(diǎn)細(xì)分為n個(gè)聚簇,每個(gè)簇有為數(shù)不一的樣本點(diǎn),簇的數(shù)量由劃分時(shí)的設(shè)定值決定[3]。其中簇內(nèi)樣本點(diǎn)相似度較大,而簇與簇之間的樣本點(diǎn)相似度卻很低,通過(guò)計(jì)算每個(gè)簇中樣本點(diǎn)的期望值來(lái)決定相似度值的大小。
2.2 Mapper與Reducer任務(wù)
//1、確定Mapper 實(shí)現(xiàn)過(guò)程
public static class KmeansMapper extends MapReduceBase implements Mapper
public void map(LongWritable key, Text value,OutputCollector
String [] strArr = value.toString().split("\t");
. . . //根據(jù)聚類坐標(biāo),把文件中的點(diǎn)進(jìn)行類別劃分
}
}
//2、確定Reducer過(guò)程,即計(jì)算新的聚類中心
public static class KmeansReducer extends MapReduceBase implements Reducer
. . .
}
3 結(jié)束語(yǔ)
基于Hadoop的大數(shù)據(jù)平臺(tái)分析用戶的網(wǎng)絡(luò)行為有助于推動(dòng)對(duì)用戶上網(wǎng)行為的研究向前發(fā)展,以目前的互聯(lián)網(wǎng)和電商的發(fā)展趨勢(shì)來(lái)看,用戶上網(wǎng)所產(chǎn)生的數(shù)據(jù)量及其所具有的潛在價(jià)值都值得我們對(duì)其認(rèn)真研究。本系統(tǒng)的技術(shù)架構(gòu)的優(yōu)點(diǎn)在于它的分層處理思路清晰,靈活使用Hadoop的生態(tài)系統(tǒng)搭建適合本系統(tǒng)的數(shù)據(jù)挖掘環(huán)境。采用了經(jīng)典的K-means算法實(shí)現(xiàn)聚類思路,并且將其MapReduce化,雖然最后得出結(jié)果,但其中仍然有待優(yōu)化的地方,尤其是在處理PB級(jí)別的數(shù)據(jù)量時(shí),系統(tǒng)的穩(wěn)定性更是得出結(jié)果的關(guān)鍵。
參考文獻(xiàn):
[1] 搜狐媒體.中國(guó)移動(dòng)互聯(lián)網(wǎng)用戶行為統(tǒng)計(jì)報(bào)告.http://mt.sohu.com/20150318/n409959259.shtml.2015
[2] 搜狗實(shí)驗(yàn)室.用戶查詢?nèi)罩?http://www.sogou.com/labs/resources.html?v=1.2015
[3] 韓曉紅, 胡彧. K—means聚類算法的研究[J]. 太原理工大學(xué)學(xué)報(bào), 2009, 40(3):236-239.