孟亞輝
(廣東石油化工學(xué)院,廣東 茂名 525000)
1.1 數(shù)據(jù)收集
用戶訪問的行為會產(chǎn)生包含行為信息的數(shù)據(jù),如何有效收集這些可用于挖掘的數(shù)據(jù)是數(shù)據(jù)收集的主要研究方向.
1.1.1 可使用的數(shù)據(jù)
基于Web使用挖掘的數(shù)據(jù)主要分為四類.
(1)簡檔
用于對Web用戶的個人信息進(jìn)行描述.個人信息包括用戶的個人信息以及其他的隱式或者顯式的用戶信息,例如用戶對于電影,商品等產(chǎn)品的評價.
(2)使用數(shù)據(jù)
用于描述Web界面的使用模式,如請求頁面,頁面訪問時間,IP地址等.
(3)結(jié)構(gòu)數(shù)據(jù)
用于描述Web頁面結(jié)構(gòu)組織的數(shù)據(jù),常見結(jié)構(gòu)是頁面之間的超鏈接.
(4)內(nèi)容數(shù)據(jù)
用于描述內(nèi)容數(shù)據(jù),如文件圖像信息.
1.1.2 數(shù)據(jù)源
(1)服務(wù)器端數(shù)據(jù)采集
Web服務(wù)器日志記錄了用戶對于站點的訪問行為,是Web挖掘的數(shù)據(jù)源對象,但是由于緩存的存在致使數(shù)據(jù)可靠性降低.另一種方式是直接從網(wǎng)絡(luò)截取數(shù)據(jù)包.服務(wù)器還是用了Cookies和查詢?nèi)罩颈4嬗脩舻氖褂眯畔?還提供結(jié)構(gòu)內(nèi)容數(shù)據(jù)和Web頁面信息.
(2)客戶端數(shù)據(jù)采集
客戶端數(shù)據(jù)收集的特點是全面,準(zhǔn)確.可利用遠(yuǎn)程代理或者愿意使用被修改的瀏覽器.對單個用戶進(jìn)行訪問信息收集的優(yōu)點是可以有針對性的為客戶提供一個或多個喜好站點.
(3)代理端數(shù)據(jù)采集
代理端服務(wù)器訪問信息主要包含用戶訪問日志和緩存中被訪問的界面.通過對代理端服務(wù)器進(jìn)行信息挖掘可獲取用戶訪問偏好的信息.
1.1.3 數(shù)據(jù)特性
用戶訪問的Web頁面是有不同的數(shù)據(jù)特性,研究的重點在于特性設(shè)計和擴(kuò)展數(shù)據(jù)挖掘方法.數(shù)據(jù)實體具有特定屬性,頁面文件和用戶是使用數(shù)據(jù)和其他輔助數(shù)據(jù)的連接點.用戶與商業(yè)數(shù)據(jù)有關(guān)聯(lián),內(nèi)容數(shù)據(jù)和結(jié)構(gòu)數(shù)據(jù)與頁面文件形成關(guān)聯(lián).由于Web站點訪問不受時空限制,因而產(chǎn)生的數(shù)據(jù)量會十分龐大.對于傳統(tǒng)的系統(tǒng)和挖掘方法是一個考驗.
1.2 數(shù)據(jù)預(yù)處理
Web日志文件存儲的是用戶訪問歷史的原始記錄,在原始記錄上直接進(jìn)行數(shù)據(jù)挖掘比較困難,因此為了解決這個問題,我們要在數(shù)據(jù)挖掘之前,對數(shù)據(jù)進(jìn)行預(yù)處理,這個過程非常重要,預(yù)處理會直接影響到用戶行為模式是否真實可靠,數(shù)據(jù)挖掘要求原始數(shù)據(jù)模型與數(shù)據(jù)模型要有一定的區(qū)別,需要進(jìn)行抽取轉(zhuǎn)換工作.
1.2.1 數(shù)據(jù)凈化
數(shù)據(jù)凈化是刪除Web服務(wù)日志中與挖掘算法無關(guān)的數(shù)據(jù),是數(shù)據(jù)挖掘的主要任務(wù).在數(shù)據(jù)凈化中主要考慮以下幾方面:對用戶所需信息進(jìn)行分類;對用戶會話進(jìn)行信息識別;與模式發(fā)現(xiàn)和數(shù)據(jù)挖掘有關(guān)的數(shù)據(jù)項;如何過濾瀏覽記錄.
在日志文件里,需將客戶端發(fā)出的用戶名請求和服務(wù)器響應(yīng)的子狀態(tài)刪除.在用戶請求網(wǎng)頁時,有關(guān)信息自動進(jìn)行下載,并記錄于日志文件中,并根據(jù)數(shù)據(jù)挖掘的目的來刪除不是用戶請求的文件.對日志記錄清除無關(guān)數(shù)據(jù),檢查URL后綴,合并記錄,適當(dāng)對頁面發(fā)生錯誤的記錄進(jìn)行處理.為提高系統(tǒng)的可擴(kuò)展性,我們利用缺省的后綴名列表DT幫助刪除文件數(shù)據(jù)凈化算法如下:
上述數(shù)據(jù)凈化算法處理后的日志數(shù)據(jù)量是原始數(shù)據(jù)的10%到25%,大量降低挖掘工作數(shù)據(jù)量,提到效率.
1.2.2 用戶識別
為了識別訪問用戶,需要借助代理服務(wù)器,網(wǎng)絡(luò)防火墻來完成.然而正因為這樣也造成了這個過程的復(fù)雜.原因是不同用戶可以在相同時間通過一個簡單代理訪問服務(wù)器;同一個用戶可以在不同機(jī)器上訪問服務(wù)器;同一個用戶可以在同一臺機(jī)器上用不同瀏覽器進(jìn)行訪問,然而不同用戶使用一臺機(jī)器在不同瀏覽器訪問也會造成混淆.
1.2.3 用戶訪問事務(wù)識別
利用對用戶會話文件進(jìn)行兩步的處理來識別用戶訪問事務(wù),通過根據(jù)用戶對話序列構(gòu)造出頁面訪問有向樹,對其進(jìn)行遍歷,篩選出最大向前訪問路徑.
(1)有向樹的擴(kuò)展
原始Web數(shù)據(jù)進(jìn)行預(yù)處理之后,得出用戶會話文件.把用戶會話頁面抽象成一顆擴(kuò)展有向樹,過程如下:
假設(shè)當(dāng)前頁面為n,上一頁為m.把用戶會話頁面的第一頁作為有向樹德根節(jié)點,令根節(jié)點為m,n指向下一頁.注意若n不在已構(gòu)造的有向樹中,則從m處引出實線指向n.記為1若n已經(jīng)在生成樹中,那么就從m處引一條虛線指向n,記為2.重復(fù)1,2步驟直到用戶會話的最后一個頁面,此時就得到了用戶會話的擴(kuò)展有向樹.
擴(kuò)展有向樹分為兩部分,一部分是實線部分,表示有意義的有向樹,表示向前遍歷;另一部分是虛線部分,表示遍歷時的后退路徑,實際常用的是實線表示部分.有向樹根節(jié)點是用戶會話的第一個界面,實線表示日志記錄中的路徑,虛線表示路徑補(bǔ)充的路徑.
例如,某用戶會化為{a,b,c,d,e,b,a,f,h}的擴(kuò)展有向樹如圖所示
(2)最大向前訪問路徑
最大向前引用路徑的概念是由ChenMS等人提出.首先是在Web日志挖掘中采用數(shù)據(jù)挖掘技術(shù).通過發(fā)現(xiàn)最大向前引用路徑,把用戶會話分割成一系列部分,采取與關(guān)聯(lián)規(guī)則類似的方法來挖掘訪問次數(shù)頻繁的路徑.
挖掘頻繁訪問路徑的方法是在每個用戶會話中找到全部最大向前路徑.通過構(gòu)造的有向擴(kuò)展樹就可以找到,就是從根節(jié)點到每一個葉子節(jié)點的路徑所經(jīng)過的頁面集合.如上圖所表示的有向樹,我們可以找出三個最大向前路徑:{a,f,h},{a,b,e},{a,b,c,d}
Web使用挖掘在電子商務(wù)中主要實現(xiàn)了對用戶訪問模式,興趣習(xí)慣等挖掘,通過優(yōu)化站點的服務(wù)應(yīng)用,達(dá)到站點和用戶共贏的局面.主要應(yīng)用如下:
2.1 分類技術(shù)
對于一個從事電子商務(wù)網(wǎng)站而言,時時把握客戶需求,關(guān)注客戶動向至關(guān)重要.從大量的訪問者中發(fā)現(xiàn)潛在客戶群體同樣重要.一旦發(fā)現(xiàn)潛在客戶群,就可以實施相應(yīng)策略,使他們變成注冊用戶群體.根據(jù)各類的公共屬性,按照分類規(guī)則進(jìn)行正確劃分,確定是否是潛在客戶.
2.2 聚類技術(shù)
運用聚類技術(shù)可以將有相似瀏覽習(xí)慣的客戶進(jìn)行分組,幫助組織者更好了解客戶的特征,從而向客戶提供更好的服務(wù).瀏覽行為用客戶ID,訪問節(jié)點和訪問次數(shù)描述,以URL為行,ID為列構(gòu)造URL-ID的關(guān)聯(lián)矩陣.可有效的對客戶進(jìn)行聚類.
2.3 序列分析
在服務(wù)日志里,用戶的訪問是用時間為單位記錄.通過運用序列分析,可以挖掘用戶訪問的時間順序.這些序列反應(yīng)用戶行為,對于商家了解客戶興趣有一定幫助,從而確定產(chǎn)品生命周期,采取相應(yīng)商業(yè)戰(zhàn)略.
3.1 聚類,就是把一組對象劃分成若干類,每個類中對象相似度較高不同類對象相似度較低.聚類不依靠給定的類別對對象進(jìn)行劃分.一下為聚類分析的算法:
3.1.1 劃分的方法
根據(jù)用戶輸入值m把對象分為m組,滿足兩個條件.首先每組至少含有一個對像.其次每個對象必須只屬于一組,因此每個組都是一個聚類.根據(jù)循環(huán)在定位技術(shù)對聚類里的對象實施變換,直到客觀劃分標(biāo)準(zhǔn)達(dá)到最優(yōu)化為止.
3.1.2 密度方法
主要思想是使聚類不斷增長直到對象密度超過設(shè)定值為止.典型代表:DBSCAN,OPTICS.
3.1.3 網(wǎng)格方法
將對象的空間劃分成有限數(shù)量的單位來形成網(wǎng)格,相關(guān)聚類操作均在網(wǎng)格進(jìn)行.代表:STING.
3.1.4 模型方法
將每個聚類抽象成一個模型,根據(jù)模型的特性來篩選符合要求的對象.這種方法基于數(shù)據(jù)是根據(jù)潛在概率分布生成的.有神經(jīng)網(wǎng)絡(luò)和統(tǒng)計學(xué)方法.代表:SOMS,COBWEB.
3.2 聚類分析數(shù)據(jù)結(jié)構(gòu)
數(shù)據(jù)矩陣:用p個變量描述n個對象,如性別,年齡,身高等屬性來描述對象人.
相異度矩陣:用來儲存n個對象之間的相似性.是n*n型矩陣其中d(i,j)是用來量化對象i,j的相異性,為非負(fù)值.i,j差異性明顯時,值越大.
3.3 聚類分析算法
K-means聚類算法:
算法核心思想是接受輸入量k,將n個對象劃分為k個聚類,使?jié)M足同意聚類對象相似度較高,不同聚類對象相似度較低.
(1)算法介紹
K-means是一種簡單的無監(jiān)督學(xué)習(xí)算法,用來解決聚類問題.通過使用一個簇中心參數(shù)實現(xiàn)數(shù)據(jù)分類.定義K個質(zhì)心,計算每一個簇質(zhì)心的位置,選擇方法是位置彼此盡可能遠(yuǎn)離.將數(shù)據(jù)集中距離每一質(zhì)心最近的數(shù)據(jù)加入到相應(yīng)簇.重新計算新加入數(shù)據(jù)的簇的質(zhì)心.這樣我們有了k個新的質(zhì)心.重復(fù)以上步驟,不斷改變k個質(zhì)心的位置,直到質(zhì)心位置不再發(fā)生變化.最終得到最小化目標(biāo)函數(shù)如下:
(2)算法步驟
①從n個對象中任意選取k個對象作為初始聚類中心;
②循環(huán)③④,直到聚類不再發(fā)生變化;
③根據(jù)每個聚類對象均值,計算每個對象與中心對象距離,根據(jù)最小距離重新劃分;
④重新計算每個聚類均值.
(3)算法存在的問題
上述方法只能在簇平均值被定義的前提下才能使用,對于有分類屬性的數(shù)據(jù)不適用.凸面形狀的簇用此種方法不易被發(fā)現(xiàn).因為噪聲和孤立點數(shù)據(jù)的敏感性.
結(jié)語:Web日志挖掘?qū)τ陔娮由虅?wù)網(wǎng)站的行為規(guī)律,改善頁面間的超鏈接結(jié)構(gòu),提高系統(tǒng)性能有十分重要的意義.本文主要論述了Web使用挖掘的基本概念原理,在商務(wù)電子的應(yīng)用以及聚類算法的分析介紹,但仍有不少問題需要進(jìn)一步研究.需要進(jìn)一步改進(jìn)矩陣聚類算法,并深入發(fā)現(xiàn)新的算法,對挖掘結(jié)果進(jìn)行評估,提高實用性.
由于時間關(guān)系和作者水平有限,本文在上述方面無法逐一進(jìn)行更深入的研究.不足之處,請各位老師批評指正.
〔1〕張新香.Web日志挖掘在電子商務(wù)中的應(yīng)用研究[J].計算機(jī)系統(tǒng)應(yīng)用,2006(1):52~55.
〔2〕陳美娜.基于WEB使用挖掘的智能個性化系統(tǒng)研究[D].河北工業(yè)大學(xué),2004.
〔3〕張琦琪.基于Web用途處理的聚類挖掘研究[D].太原理工大學(xué),2004.