摘要:根據(jù)Web日志中的瀏覽時間、服務器發(fā)送字節(jié)數(shù)信息和統(tǒng)計所得的頁面瀏覽頻度計算頁面興趣度,并結(jié)合模糊理論,生成模糊關(guān)聯(lián)規(guī)則,提出了一個預測用戶瀏覽興趣的方法。實驗表明,該方法是可行的并且具有較好的效果。
關(guān)鍵詞:Web日志挖掘;模糊集;關(guān)聯(lián)規(guī)則;頁面興趣度
0引言
自20世紀90年代互聯(lián)網(wǎng)開始迅速發(fā)展以來,Web已成為人們獲取信息的一個重要途徑,搜索引擎在人們的日常生活和學習中發(fā)揮了重要作用。隨著Web挖掘技術(shù)的發(fā)展以及需求的推動,出現(xiàn)了個性化服務:通過收集和統(tǒng)計用戶的歷史數(shù)據(jù),挖掘用戶感興趣的頁面,獲取用戶興趣模型,以便在用戶以后的訪問過程中根據(jù)挖掘出來的用戶興趣模型自動向用戶推薦內(nèi)容,提高搜索效率。
Web挖掘可分為三類:Web內(nèi)容挖掘,Web結(jié)構(gòu)挖掘,Web使用挖掘。Web使用挖掘即Web日志挖掘。Web服務器的日志文件記錄了用戶訪問網(wǎng)站時的大量有用信息,日志挖掘是將數(shù)據(jù)挖掘技術(shù)應用在日志文件上,發(fā)現(xiàn)用戶感興趣的瀏覽模式,分析網(wǎng)站的使用情況。
目前許多Web個性化推薦系統(tǒng)都涉及到頁面興趣度的計算,根據(jù)計算得到的頁面興趣度應用數(shù)據(jù)挖掘技術(shù)獲得用戶的興趣模型,但這些計算方法都存在不足。本文結(jié)合Web日志挖掘和模糊集理論,利用Web日志中記錄的用戶訪問網(wǎng)站時的信息計算頁面興趣度,應用Apriori算法生成模糊關(guān)聯(lián)規(guī)則,挖掘用戶的興趣模型。
1基礎知識
1.1 Web日志挖掘
Web服務器日志記錄了用戶訪問網(wǎng)站時的請求信息,一般包含日期、時間、用戶IP地址、用戶名、方法、URI資源(URL)、Win32狀態(tài)(簡稱狀態(tài))、發(fā)送字節(jié)數(shù)、接受字節(jié)數(shù)、所花時間、協(xié)議版本、用戶代理、Cookie、參照等信息字段。
由于Web記錄和HTTP協(xié)議自身的原因,原始Web日志是雜亂的,還原的信息包含錯誤信息,為了把Web日志轉(zhuǎn)化為適合進行數(shù)據(jù)挖掘的可靠的準確的數(shù)據(jù),要對原始Web日志進行預處理。數(shù)據(jù)預處理主要包括數(shù)據(jù)清洗、用戶識別、會話識別幾個步驟。
數(shù)據(jù)清洗 指刪除Web日志文件中與挖掘算法無關(guān)的記錄,處理錯誤記錄。用戶瀏覽網(wǎng)頁時,與這個網(wǎng)頁有關(guān)的圖片、音頻及視頻等輔助信息會同網(wǎng)頁一起自動下載,這些信息并不是用戶請求的,與挖掘用戶的興趣模型無關(guān),根據(jù)URL地址上的文件后綴判斷文件類別,要將這類記錄刪除。具體到實際的系統(tǒng)應保留哪些信息或刪除哪些信息要根據(jù)網(wǎng)站的類型決定。例如:主要包含音頻的網(wǎng)站,日志文件中的音頻文件可能就是用戶的顯示請求,此時就不能把音頻信息刪除。
用戶識別緩存、代理服務器和防火墻的使用,使得識別用戶的方法變得很復雜。常用的用戶識別方法是基于日志,站點的啟發(fā)式方法:
(1)當IP地址相同時,不同的瀏覽器或操作系統(tǒng)表示不同的用戶。
(2)當IP地址、用戶使用的瀏覽器和操作系統(tǒng)均相同時,將訪問日志和站點的拓撲結(jié)構(gòu)結(jié)合,如果當前請求的頁面同用戶已瀏覽的頁面之間沒有超鏈接關(guān)系,就認為存在另外具有相同IP地址的用戶。
當然,應用這些規(guī)則并不能非常準確地識別出每一個用戶。例如:校園網(wǎng)內(nèi)的學生機房,相同的IP地址,相同的瀏覽器和操作系統(tǒng),但用戶不是固定的。
會話識別 將一個用戶在一段時間內(nèi)所有請求的頁面分解成會話。會話的意義是用戶對服務器的一次有效訪問。
日志文件中不同用戶訪問的頁面屬于不同的會話。同一用戶訪問的頁面,若頁面請求的時間跨度比較大,認為可能該用戶多次訪問同一網(wǎng)站。用戶訪問的頁面可以分為多個會話,常用的方法就是設置一個時間閾值,如果用戶訪問頁面的時間差超過這個閾值,則認為用戶開始了一個新的會話。這個閾值一般設置為30分鐘。
1.2模糊集理論
對于一個集合,一個對象屬于這個集合,或者不屬于這個集合,兩者必居其一,且僅居其一。集合論的這個概念大大限制了古典數(shù)學的應用范圍,使其無法處理日常生活中大量的不明確的模糊現(xiàn)象與概念。Zadeh于1965年提出的模糊集的概念是對普通集合的一種推廣,并奠定了模糊數(shù)學的理論基礎。
假設u是一個論域,u上的一個模糊集合A由u上的一個實值函數(shù)表示。對于稱為u對于A的隸屬度,而稱為A的隸屬函數(shù)。通常用A(u)表示。
的值表示u屬于A的程度。的值越接近1,u屬于A的程度就越高;相反,(u)的值越接近O,u屬于A的程度就越低。
2已有的頁面興趣度計算方法
頁面興趣度的計算不是—個新的課題。文獻[5]選取用戶瀏覽頁面的次數(shù)和訪問時間作為描述用戶興趣的屬性。但是用戶訪問頁面所用的時間是與頁面自身的長度相關(guān)的,單純考慮訪問時間不能反映用戶的瀏覽興趣。文獻[6]綜合考慮了瀏覽頻度、時間和頁面長度作為描述用戶興趣的屬性。但是頁面長度信息在Web日志文件中沒有相應的字段記錄,頁面長度信息無從獲取。文獻[7]將會話中兩個連續(xù)訪問頁面之間的時間差定義為“持續(xù)時間”,作為描述用戶興趣的屬性。其不足之處有二:一是持續(xù)時間與網(wǎng)絡的傳輸速度有直接的關(guān)系,不能準確地表示用戶的興趣,產(chǎn)生的誤差可能很大;二是會話中最后一個頁面的持續(xù)時間無法得到。
3改進的頁面興趣度計算方法
日志文件中記錄著豐富的用戶信息,經(jīng)過統(tǒng)計所得到的信息和日志文件本身記錄的信息均為可利用信息。結(jié)合上述文獻中用到的頁面興趣度的計算方法,本文選擇兩個在日志文件中記錄的字段信息和統(tǒng)計得到的信息計算頁面興趣度。兩個字段信息分別為所花時間和發(fā)送字節(jié)數(shù),需要統(tǒng)計的信息是頁面的瀏覽頻度。所花時間表示完成瀏覽所花費的時間,發(fā)送字節(jié)數(shù)表示服務器發(fā)送的字節(jié)數(shù)。
數(shù)據(jù)預處理完成后的數(shù)據(jù)形式為用戶會話,由多個頁面組成。會話中每個頁面的興趣度表示用戶對這個頁面的感興趣程度。每個頁面都用兩個字段記錄了所花時間和發(fā)送字節(jié)數(shù)。將頁面被用戶瀏覽的次數(shù)作為這個頁面的瀏覽頻度。設si為一會話,其中,cn表示第n個頁面,tn是第n個頁面所花時間信息,sbn是第n個頁面的發(fā)送字節(jié)數(shù)信息,fn是第n個頁面的瀏覽頻度。頁面j的興趣度pj可按以下公式計算得到。式中:m表示會話數(shù),n表示頁面數(shù)。
4實驗設計及結(jié)果分析
將本文計算頁面興趣度的方法與文獻[7]中的方法進行比較。
4.1實驗設計
原始資料來自河北大學網(wǎng)絡中心提供的河北大學網(wǎng)站的日志文件,經(jīng)過數(shù)據(jù)預處理、模糊化,計算模糊支持度、模糊置信度生成模糊關(guān)聯(lián)規(guī)則,并在測試集上進行規(guī)則匹配。實驗數(shù)據(jù)為2006年3月12日和13日兩天的日志文件,取20903條日志記錄作為訓練集,30489條日志記錄作為測試集。數(shù)據(jù)預處理后每條記錄包含的信息字段為日期、時間、方法、URI資源(URL)、用戶IP地址、協(xié)議版本、用戶代理、參照、狀態(tài)、發(fā)送字節(jié)數(shù)、接收字節(jié)數(shù)、所花時間。利用記錄中的發(fā)送字節(jié)數(shù)和所花時間信息和統(tǒng)計得到的頁面瀏覽頻度按照上述公式計算頁面的興趣度,根據(jù)圖l所示的隸屬函數(shù)將頁面興趣度模糊化為四種狀態(tài):不感興趣(uI)、一般(GE)、感興趣(IN)、非常感興趣(vI)。根據(jù)模糊化后的結(jié)果,將uI值為l的頁面刪除(即興趣度小于等于0.1的頁面),此類頁面為用戶極不感興趣的頁面,對發(fā)現(xiàn)模糊關(guān)聯(lián)規(guī)則沒有意義。
假設一用戶會話,包含三個頁面,模糊化后的結(jié)果如表1所示。
根據(jù)文獻[7]中用到的發(fā)現(xiàn)模糊關(guān)聯(lián)規(guī)則的基本方法,計算模糊支持度和模糊置信度。發(fā)現(xiàn)關(guān)聯(lián)規(guī)則首先要找到頻繁項集(滿足最小支持度閾值的項集為頻繁項集),然后從頻繁項集中生成強壯的關(guān)聯(lián)規(guī)則,這些規(guī)則既要滿足最小支持度閾值又要滿足最小置信度閾值。關(guān)聯(lián)規(guī)則為IF…THEN…形式。例如:規(guī)則為IF A is c THEN B is D,其中,A和B均為頁面,c和D為集合{ut,GE,IN,VIl中的值。
模糊支持度表示對項集的支持程度。計算方法是所有頁面對應的隸屬度之和除以頁面出現(xiàn)的次數(shù)。例如,X=AUB,Y--CUD,x是頁面的集合,Y是狀態(tài)的集合。頁面A、B分別為狀態(tài)c、D的隸屬度情況如表2所示。
則模糊支持度為:
模糊置信度用來估計生成的模糊關(guān)聯(lián)規(guī)則的感興趣程度。計算方法是利用公式,規(guī)則IF A is c THEN B is D的置信度為:
根據(jù)計算所得的置信度,大于置信度閾值的為模糊關(guān)聯(lián)規(guī)則。
4.2結(jié)果分析
對于每一條規(guī)則,模糊支持度閾值設為0.3,模糊置信度閾值設為0.4。得到的實驗結(jié)果與文獻[7]中實驗的基本方法比較。文獻[7]中的實驗:將原始日志數(shù)據(jù)預處理后進行會話識別,選擇會話中用戶連續(xù)訪問頁面之間的時間差作為模糊化屬性,模糊化后生成模糊關(guān)聯(lián)規(guī)則。實驗在同樣的訓練集和測試集上進行,結(jié)果如表3所示。
實驗1應用本文所提出的方法進行的實驗,實驗2應用文獻[7]中所用方法進行的實驗。表3中規(guī)則在測試集中匹配成功的次數(shù)一欄是指生成的每條規(guī)則在測試集上進行匹配,匹配成功的次數(shù)相加求和。從實驗結(jié)果可以看出實驗2生成的規(guī)則數(shù)是實驗1的1.2倍。但是實驗1生成的規(guī)則在測試集中匹配成功的次數(shù)是實驗2的2.5倍。生成的規(guī)則少,在測試集中找到的個數(shù)多,表明實驗l挖掘出來的規(guī)則是用戶頻繁訪問的,能夠代表用戶的興趣。
5結(jié)束語
隨著互聯(lián)網(wǎng)的發(fā)展,Web服務的個性化趨勢已成必然。本文提出了一個得到用戶瀏覽興趣的方法,此方法利用日志記錄中的兩個字段信息和統(tǒng)計所得的瀏覽頻度信息,計算得到用戶的興趣度。本方法采用實際日志數(shù)據(jù)。雖然日志數(shù)據(jù)能體現(xiàn)用戶的真實信息,但所包含的信息有限。在以后的研究中應考慮利用用戶的背景信息,這類信息必須是用戶愿意提供而且不能被屏蔽的,這樣挖掘出來的用戶興趣模型會更準確。
(注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。)