王子卿+樊楠
摘要: 該文以某電子商務(wù)網(wǎng)站的Web訪問(wèn)日志為研究對(duì)象,利用SQL Server提供的SSIS服務(wù)和T-SQL語(yǔ)句進(jìn)行數(shù)據(jù)預(yù)處理,得到序列數(shù)據(jù)庫(kù),然后用java語(yǔ)言編程實(shí)現(xiàn)GSP算法對(duì)其進(jìn)行序列模式的挖掘測(cè)試分析,通過(guò)對(duì)結(jié)果分析可以做出對(duì)該網(wǎng)站布局和內(nèi)容(或產(chǎn)品)調(diào)整提供參考,使其更好為其用戶提供針對(duì)性的服務(wù)。
關(guān)鍵詞: Web日志; 序列模式挖掘; GSP算法
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)30-0217-02
隨著網(wǎng)絡(luò)服務(wù)的迅速發(fā)展,互聯(lián)網(wǎng)上已有龐大數(shù)量的網(wǎng)站,且還在不斷的建設(shè),通過(guò)對(duì)網(wǎng)站服務(wù)器的操作和訪問(wèn)進(jìn)行專業(yè)而詳細(xì)的分析,可以了解網(wǎng)站的運(yùn)行情況并能進(jìn)一步發(fā)現(xiàn)網(wǎng)站所存在的缺陷,為促使網(wǎng)站更好的運(yùn)營(yíng)與發(fā)展提供可靠的技術(shù)支持與決策依據(jù)。為了能夠促使網(wǎng)站更好的運(yùn)營(yíng)與提供針對(duì)性與個(gè)性化的服務(wù),必須要了解電子商務(wù)網(wǎng)站以及其所展示的各產(chǎn)品模塊的具體訪問(wèn)情況,而這些信息只能通過(guò)獲取對(duì)Web服務(wù)器上網(wǎng)站的相關(guān)運(yùn)行日志文件,并對(duì)其包含的數(shù)據(jù)信息進(jìn)行統(tǒng)計(jì)與分析得到。
互聯(lián)網(wǎng)用戶具有多樣性的特點(diǎn),全球大概有10億多個(gè)網(wǎng)站,網(wǎng)民數(shù)量接近30億,他們來(lái)自不同的民族,具有不同層次的經(jīng)濟(jì)收入水平,具備不同的教育背景與不同的個(gè)人興趣,他們?cè)L問(wèn)的目的也均不同,但他們?cè)跒g覽Web頁(yè)面過(guò)程中均留下了訪問(wèn)信息。特別是像淘寶、京東等大型的電子商務(wù)網(wǎng)站,它們每天都有數(shù)億的在線交易額,而這些交易以及用戶的瀏覽(指沒(méi)有交易的用戶)都產(chǎn)生可謂海量的Web訪問(wèn)日志數(shù)據(jù)。Web日志挖掘是Web大數(shù)據(jù)應(yīng)用領(lǐng)域或者電子商務(wù)商業(yè)智能應(yīng)用中的一個(gè)最為重要的內(nèi)容。
本文以某電子商務(wù)網(wǎng)站的Web訪問(wèn)日志為研究對(duì)象,利用SQL Server提供的SSIS服務(wù)和T-SQL語(yǔ)句進(jìn)行數(shù)據(jù)預(yù)處理,得到序列數(shù)據(jù)庫(kù),然后用java語(yǔ)言編程實(shí)現(xiàn)GSP(Generalized Sequential Patterns)算法對(duì)其進(jìn)行序列模式的挖掘測(cè)試分析,通過(guò)對(duì)結(jié)果的分析可以為改善該網(wǎng)站的布局以及產(chǎn)品展示方式的調(diào)整提供參考。
1 基于Web日志的序列挖掘
Web日志序列挖掘一般分三個(gè)步驟,即數(shù)據(jù)預(yù)處理、挖掘算法處理以及模式分析。
數(shù)據(jù)預(yù)處理主要是對(duì)Web日志進(jìn)行序列挖掘之前的對(duì)原始日志文件進(jìn)行數(shù)據(jù)轉(zhuǎn)換、清洗等一系列的操作,最終形成可供序列模式挖掘算法所使用的規(guī)范化數(shù)據(jù)。其具體工作主要包含數(shù)據(jù)凈化、會(huì)話識(shí)別、用戶識(shí)別以及路徑補(bǔ)充等過(guò)程。數(shù)據(jù)凈化工作主要是對(duì)挖掘中不需要的相關(guān)數(shù)據(jù)進(jìn)行刪除操作;會(huì)話識(shí)別主要是對(duì)每個(gè)用戶在某一段時(shí)間內(nèi)的所有請(qǐng)求頁(yè)面進(jìn)行分解從而得到用戶會(huì)話;用戶識(shí)別是將用戶和請(qǐng)求的頁(yè)面進(jìn)行相關(guān)聯(lián)的過(guò)程,其中主要是處理多個(gè)用戶通過(guò)防火墻或代理服務(wù)器訪問(wèn)站點(diǎn)的情況。在用戶識(shí)別的過(guò)程中,不僅需要服務(wù)器日志,還需要知道站點(diǎn)的拓?fù)浣Y(jié)構(gòu);路徑補(bǔ)充過(guò)程就是將本地或代理服務(wù)器緩存所造成的遺留請(qǐng)求也補(bǔ)充完整。執(zhí)行上面的操作后,就得到了序列模式挖掘算法所需要的輸入信息(用戶會(huì)話文件),該文件中包含訪問(wèn)Web站點(diǎn)的用戶,用戶請(qǐng)求的頁(yè)面及請(qǐng)求發(fā)生的順序,每一頁(yè)瀏覽的時(shí)間等信息[1]。
挖掘算法處理主要是指在基于數(shù)據(jù)預(yù)處理的基礎(chǔ)上,通過(guò)實(shí)現(xiàn)某種序列算法得到挖掘結(jié)果,這些結(jié)果主要包括如每頁(yè)的訪問(wèn)數(shù),最頻繁的訪問(wèn)的頁(yè)面,每頁(yè)的平均瀏覽時(shí)間等。序列模式算法主要有兩類:一類是類Apriori算法,以GSP算法為代表,這種算法基于一個(gè)事實(shí):一個(gè)序列是頻繁的,它的所有子序列必然是頻繁的;另一種挖掘序列模式的思想是基于數(shù)據(jù)庫(kù)投影的序列模式生長(zhǎng)技術(shù)的應(yīng)用,如PrefixSpan算法。
模式分析是依據(jù)挖掘算法所得到的模式集合,再結(jié)合實(shí)際所感興趣的模式進(jìn)行篩選和分析,然后采用可視化技術(shù)對(duì)這些模式作為挖掘的最終結(jié)果進(jìn)行直觀和個(gè)性化的展示。
2 基于GSP算法的實(shí)現(xiàn)流程
序列模式挖掘一般分為五個(gè)步驟,這些步驟分別為排序階段、大項(xiàng)集階段、轉(zhuǎn)換階段、序列階段以及選最長(zhǎng)序列階段。
GSP算法的主要流程如圖1所示:
1)序列數(shù)據(jù)庫(kù)進(jìn)行掃描,得到長(zhǎng)度為1的序列模式L1,作為初始的種子集。
2)根據(jù)長(zhǎng)度為i的種子集Li通過(guò)連接操作和剪切操作生成長(zhǎng)度為i+1的候選序列模式Ci+1;然后掃描序列數(shù)據(jù)庫(kù),計(jì)算每個(gè)候選序列的支持?jǐn)?shù),產(chǎn)生長(zhǎng)度為i+1的序列模式Li+1,并將Li+1作為新的種子集。
3)重復(fù)第二步,直到?jīng)]有新的序列模式或候選序列模式產(chǎn)生為止。
3 網(wǎng)站日志挖掘?qū)嵗治?/p>
本文采用ECML_PKDD 2005會(huì)議提供的公共點(diǎn)擊流數(shù)據(jù),它收集了380多萬(wàn)條電子商務(wù)網(wǎng)站的服務(wù)器日志記錄,每個(gè)日志文件包含的是一個(gè)小時(shí)所收集的記錄,每個(gè)文件包含的信息有時(shí)間、IP、會(huì)話標(biāo)識(shí)、請(qǐng)求頁(yè)面和引用頁(yè)面等相關(guān)信息。日志記錄形式如下:
16;1074661208;212.209.160.2;09b611d2583514c458f 8946841f880a5;/ls/?id=139;http://www.shop6.cz/
其主要結(jié)構(gòu)如表1所示。
本文通過(guò)取該站點(diǎn)上的一個(gè)服務(wù)器日志文件,共計(jì)353K字節(jié),2978條記錄,為了減少算法的計(jì)算量以及提高數(shù)據(jù)挖掘結(jié)果的準(zhǔn)確性,利用T-SQ語(yǔ)句和SQL Server的SSIS服務(wù)功能將原始數(shù)據(jù)文件進(jìn)行數(shù)據(jù)轉(zhuǎn)換凈化、代理訪問(wèn)的處理、用戶識(shí)別、會(huì)話識(shí)別、鏈接規(guī)范化、排序等數(shù)據(jù)預(yù)處理,然后得到序列數(shù)據(jù)庫(kù),總共是179條記錄,107個(gè)序列。
通過(guò)java編寫的GSP算法對(duì)該電子商務(wù)網(wǎng)站的訪問(wèn)日志進(jìn)行數(shù)據(jù)挖掘測(cè)試,根據(jù)GSP算法,我們將最小支持度設(shè)為8,得到了該電子商務(wù)網(wǎng)站的頻繁訪問(wèn)序列總共計(jì)9條,其序列模式挖掘的結(jié)果如圖2所示:
從運(yùn)行的結(jié)果我們可以很容易看出,用戶對(duì)該網(wǎng)站的這9種產(chǎn)品相對(duì)比較感興趣,其中最感興趣的是該網(wǎng)站的Digital cameras產(chǎn)品。
4 結(jié)束語(yǔ)
本文利用SQL Server對(duì)某電子商務(wù)網(wǎng)站的日志進(jìn)行了數(shù)據(jù)預(yù)處理并產(chǎn)生序列數(shù)據(jù)庫(kù),并通過(guò)java編程實(shí)現(xiàn)GSP序列模式挖掘算法對(duì)其進(jìn)行測(cè)試分析,通過(guò)對(duì)結(jié)果分析可以做出對(duì)該網(wǎng)站布局和內(nèi)容(或產(chǎn)品)調(diào)整提供參考,使其更好為其用戶提供針對(duì)性的服務(wù)。
參考文獻(xiàn):
[1]朱鶴祥.Web日志挖掘中數(shù)據(jù)預(yù)處理算法的研究[D].大連:大連交通大學(xué),2009.
[2]汪莉棟. Web日志挖掘中數(shù)據(jù)預(yù)處理算法的研究及實(shí)現(xiàn)[D].貴陽(yáng):貴州大學(xué),2008.
[3]趙暢,楊冬青,唐世渭.Web日志序列模式挖掘[J]. 計(jì)算機(jī)應(yīng)用,2000,20(9):15-18.
[4]李林,崔志明.用戶Web日志序列模式挖掘研究[J]. 微機(jī)發(fā)展,2005,15(5): 119-121.
[5]朱琳玲,胡學(xué)鋼,穆斌.基于Web的數(shù)據(jù)挖掘研究綜述[J].電腦與信息技術(shù),2002,20(6):45-48.
[6]王璟. Web使用記錄挖掘技術(shù)綜述[J].四川經(jīng)濟(jì)管理學(xué)院學(xué)報(bào),2008,20(1):49-50.
[7]王新,馬萬(wàn)青,潘文林.基于Web日志的用戶訪問(wèn)模式挖掘[J].計(jì)算機(jī)工程與應(yīng)用,2006,21(9):156-158.
[8]劉沛騫,郭海儒,袁玲玲.Web日志挖掘中的用戶訪問(wèn)模式識(shí)別[J].雁北師范學(xué)院學(xué)報(bào),2006(2).
[9]邵峰品,于忠清.數(shù)據(jù)挖掘原理與算法[M].北京:中國(guó)水電水利出版社,2003.
[10]毛國(guó)群. 數(shù)據(jù)挖掘原理與算法[M].北京:清華大學(xué)出版社,2005.