[摘要] 本文從Web數(shù)據(jù)挖掘的概念入手,介紹了Web數(shù)據(jù)挖掘的一般流程及技術(shù),最后探討了Web數(shù)據(jù)挖掘在應用中的幾個問題。
[關(guān)鍵詞] 數(shù)據(jù)挖掘 Web數(shù)據(jù)挖掘 問題
一、引言
隨著Web技術(shù)的飛速發(fā)展,企業(yè)積累了大量的數(shù)據(jù),如何發(fā)現(xiàn)并利用隱藏在這些數(shù)據(jù)背后的知識成為當前信息技術(shù)領(lǐng)域研究的熱點問題之一。由于Web數(shù)據(jù)自身的特性,使得Web數(shù)據(jù)挖掘更加復雜,不同于傳統(tǒng)的基于數(shù)據(jù)庫的數(shù)據(jù)挖掘。為了解決這個問題,把數(shù)據(jù)挖掘的理論和技術(shù)應用于WWW,出現(xiàn)了一個新的研究領(lǐng)域——Web數(shù)據(jù)挖掘。
二、Web數(shù)據(jù)挖掘的概念
Web數(shù)據(jù)挖掘(Web Data Mining),是數(shù)據(jù)挖掘技術(shù)在Web環(huán)境下的應用,是集Web技術(shù)、數(shù)據(jù)挖掘技術(shù)、信息科學等多個領(lǐng)域的一項技術(shù),從大量的Web文檔集合和在站點內(nèi)進行瀏覽的相關(guān)數(shù)據(jù)中發(fā)現(xiàn)蘊涵的、未知的、有潛在應用價值的模式。對Web數(shù)據(jù)挖掘定義如下:
Web數(shù)據(jù)挖掘是指從Web文檔結(jié)構(gòu)和使用的集合C中發(fā)現(xiàn)隱含的模式P。如果將C看作輸入,P看作輸出,那么Web數(shù)據(jù)挖掘的過程就是從輸入到輸出的一個映射:
ξ C → P
Web數(shù)據(jù)挖掘從數(shù)據(jù)挖掘發(fā)展而來,都是在分析大量數(shù)據(jù)的基礎(chǔ)上,做出歸納性的推理,預測客戶的行為,幫助企業(yè)的決策者調(diào)整市場策略、減少風險并做出正確決策的過程。
三、Web數(shù)據(jù)挖掘的流程及常用技術(shù)
結(jié)合數(shù)據(jù)挖掘的一般流程,并根據(jù)Web數(shù)據(jù)的特點,將Web數(shù)據(jù)挖掘流程分解5個環(huán)節(jié),包括獲取數(shù)據(jù)源、數(shù)據(jù)選擇和預處理、模式發(fā)現(xiàn)、模式分析和知識表達。
1.獲取數(shù)據(jù)源
根據(jù)用戶的要求,從Web資源中提取所需要的相關(guān)數(shù)據(jù),包括Web文檔、電子郵件、電子文檔、新聞組、網(wǎng)站日志、Web交易數(shù)據(jù)庫等。
2.數(shù)據(jù)選擇和預處理
去除目標數(shù)據(jù)集中明顯的錯誤數(shù)據(jù)和冗余數(shù)據(jù),選擇數(shù)據(jù)的有效部分,并將數(shù)據(jù)轉(zhuǎn)化成進行數(shù)據(jù)挖掘和分析的有效形式,比如規(guī)整的邏輯形式甚至是關(guān)系表。
3.模式發(fā)現(xiàn)
對前面經(jīng)過預處理的數(shù)據(jù)自動進行模式發(fā)現(xiàn),可以在同一個站點內(nèi)部或在多個站點之間進行。
4.模式分析
驗證、解釋上一步驟發(fā)現(xiàn)的模式,必要時需要返回前面的某些步驟以反復提取??梢允菣C器自動完成,也可以是與分析人員進行交互來完成。
5.知識表達
最后將發(fā)現(xiàn)的知識以用戶能理解的方式提供給用戶。
Web數(shù)據(jù)挖掘的大部分技術(shù)來源于數(shù)據(jù)挖掘領(lǐng)域、數(shù)據(jù)庫領(lǐng)域和信息檢索領(lǐng)域,常用的有路徑分析、關(guān)聯(lián)規(guī)則挖掘、序列模式挖掘、聚類挖掘、預測建模和分類挖掘等技術(shù),其中路徑分析技術(shù)是針對Web數(shù)據(jù)挖掘?qū)iT設計的。隨著Web應用不斷取得進展,集成了不同類型數(shù)據(jù)的新的Web數(shù)據(jù)挖掘方法,也將被開發(fā)出來。
四、基于Web的數(shù)據(jù)挖掘在應用中存在的幾個問題
1.半結(jié)構(gòu)化的異構(gòu)數(shù)據(jù)源問題
Web網(wǎng)站上的信息都可以看作一個數(shù)據(jù)庫,每一個站點都是一個數(shù)據(jù)源,而且對數(shù)據(jù)的描述千差萬別,沒有可遵循的特定模型。所以,Web網(wǎng)站上的每個數(shù)據(jù)源都是異構(gòu)的。同時,Web上的數(shù)據(jù)與傳統(tǒng)數(shù)據(jù)庫中的數(shù)據(jù)不同,傳統(tǒng)的數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)性很強,而Web上的數(shù)據(jù)非常復雜,沒有特定的模型描述,每一站點的數(shù)據(jù)都各自獨立設計。雖然Web上的數(shù)據(jù)具有一定的結(jié)構(gòu)性,但因自述層次的存在,因而還是一種非完全結(jié)構(gòu)化的數(shù)據(jù),這也被稱之為半結(jié)構(gòu)化數(shù)據(jù)。顯然,面向Web的數(shù)據(jù)挖掘比面向單個數(shù)據(jù)倉庫的數(shù)據(jù)挖掘要復雜得多。
如果想要利用這些數(shù)據(jù)進行數(shù)據(jù)挖掘,必須解決半結(jié)構(gòu)化和異構(gòu)數(shù)據(jù)源的問題。首先,對于Web上的數(shù)據(jù)半結(jié)構(gòu)化問題,必須要尋找一個半結(jié)構(gòu)化的數(shù)據(jù)模型,還要一種半結(jié)構(gòu)化模型抽取技術(shù),即自動從現(xiàn)有數(shù)據(jù)中抽取半結(jié)構(gòu)化模型的技術(shù)。其次,必須要研究站點之間異構(gòu)數(shù)據(jù)的集成問題。只有將這些站點的數(shù)據(jù)都集成起來,提供給用戶一個統(tǒng)一的視圖,才有可能從巨大的數(shù)據(jù)資源中獲取所需的東西。解決Web上的異構(gòu)數(shù)據(jù)的集成問題,就必須要有一個模型來清晰地描述Web上的數(shù)據(jù)。
目前,WEB站點上的數(shù)據(jù)信息一般采用HTML描述,信息只能在瀏覽器中提供數(shù)據(jù)的顯示方式。要想在這種方式下獲得數(shù)據(jù)描述,真正做到準確、高效地挖掘是不可能的,而XML突破了HTML固定標記集合的約束,可自行定義各種標記描述數(shù)據(jù)元素和屬性,能夠反映一定的數(shù)據(jù)含義,組成一個完整的信息體系,從而獲得更大的靈活性和更強的功能。由于XML能夠使不同來源的結(jié)構(gòu)化數(shù)據(jù)很容易地結(jié)合,使搜索多樣不兼容的數(shù)據(jù)庫成為可能,也為半結(jié)構(gòu)化數(shù)據(jù)的處理提供了很好的解決方法。
2.Web中數(shù)據(jù)源的獲取問題
用戶每次點擊網(wǎng)頁時都會產(chǎn)生很多信息,Web服務器可以記錄下來。我們可以利用這些信息對用戶進行數(shù)據(jù)挖掘分析。但在Web上可以用作數(shù)據(jù)挖掘分析的數(shù)據(jù)量比較大,而且類型眾多,比較復雜。下面我們介紹幾種從Web站點中的獲取數(shù)據(jù)的途徑。
(1)訪問日志。訪問Web站點的用戶每次從Web服務器上請求一個文件,該文件條目放在一個稱為訪問日志的ASCII文本文件中。在訪問連接期間,每次事務操作都被順序地記錄在訪問日志中,訪問日志是發(fā)現(xiàn)誰訪問了Web站點、訪問了什么頁面的關(guān)鍵組件。
(2)Cookies信息。Cookies是用戶訪問站點時由Web服務器傳遞到用戶瀏覽器的少量信息,存儲在用戶自己硬盤中。Cookies詳細描述了用戶訪問站點時瀏覽了哪些地方。大多數(shù)Web站點都己經(jīng)把Cookies作為提供個性化Web頁面和產(chǎn)品的關(guān)鍵營銷工具。
(3)表單或用戶注冊信息。用戶在進入站點時都需要注冊個人信息,如姓名、地址、職業(yè)等;另外,用戶在查詢或購買商品時也需要填寫表單信息,Web站點能夠獲取這些數(shù)據(jù),為隨后的挖掘產(chǎn)生有價值的數(shù)據(jù)庫。
(4)電子郵件系統(tǒng)。許多Web站點都有電子郵件鏈接,它使得用戶能及時地查詢產(chǎn)品和服務,并提供重要的反饋信息。Web數(shù)據(jù)挖掘技術(shù)能夠?qū)τ脩綦娮余]件反饋數(shù)據(jù)進行挖掘和分析,而且Web站點可以將挖掘結(jié)果自動地用電子郵件通知某些客戶,比如關(guān)心優(yōu)惠或打折信息的目標客戶群體,并最終依據(jù)客戶對郵件的響應來尋找更多的優(yōu)惠措施。
3.Web中的用戶身份識別問題
如果位于Web上的每一臺客戶機都擁有自己唯一的IP地址,那么對Web上用戶識別就比較容易。但是客戶機器一般都是采用動態(tài)IP技術(shù),用戶每次登錄Web時都擁有一個與上次不同的IP地址,這就使單獨使用IP地址來識別用戶的方法行不通。為了精確識別用戶,需要足夠的數(shù)據(jù),而收集這些數(shù)據(jù)遇到的最大的兩個問題就是客戶端緩存和代理服務器緩存。
為了提高效率,客戶端瀏覽器采用了緩存技術(shù),即保存用戶最近訪問的頁面,當用戶“后退”時,客戶端瀏覽器就不再向服務器發(fā)送請求,導致服務器無法探測到用戶的重復訪問動作,更無法在服務器日志中記錄。代理服務器提供了一個中間緩沖層,為識別用戶帶了更大的問題,在服務器日志文件中,所有通過代理服務器發(fā)來的用戶請求均具有同樣的用戶標志,即使這些請求是多個用戶發(fā)起的。
針對用戶身份識別過程中出現(xiàn)的種種情況,可以采用以下幾種Web技術(shù)來進行處理:
(1)Cookies技術(shù)。Cookies在用戶第一次訪問網(wǎng)站時設置一個唯一的標識,不能重復使用并且始終與該用戶有關(guān),有效期限應該足夠長以便使該Cookies在當前訪問和至少在下一次可能訪問之間保持有效。這樣每當用戶重復訪問時,不管它進入網(wǎng)站的哪個頁面,其身份都能被識別。所以每當用戶重返網(wǎng)站時,在訪問期間所瀏覽的所有網(wǎng)頁都會與一個具體的用戶相聯(lián)系。
(2)URL重寫技術(shù)。如果客戶端瀏覽器禁止Cookies的使用,那么可以使用URL重寫技術(shù)。它是將需要來回傳送的信息置入查詢字符串中,通過URL來進行傳遞。如果企業(yè)想從一個網(wǎng)頁到另一個網(wǎng)頁對用戶進行跟蹤,那么就可以把用戶名作為查詢字符串的一部分追加到這些網(wǎng)頁中的每一個鏈接中。這種技術(shù)可以用來跟蹤用戶訪問Web站點的路徑,因為訪問過的每個頁面的URL都被記錄在服務器日志中,包括查詢字符串。。
(3)隱藏表單域技術(shù)。隱藏表單域是一種特殊的表單,其目的是在表單中添加一些對用戶不可見的信息以區(qū)分同一網(wǎng)頁上的多個表單。提交表單時,隱藏域的值一同傳給表單處理程序,利用該值,可以在同一個表單處理程序中分別對不同的表單進行處理。該方法允許企業(yè)網(wǎng)站將一些相關(guān)的值放入網(wǎng)頁上用戶不可見的一些表單域中,一旦用戶提交表單,這些值將會被送回Web服務器。
五、結(jié)束語
基于Web的數(shù)據(jù)挖掘是一個結(jié)合了數(shù)據(jù)挖掘和WWW的熱門研究主題,是一個新興的研究領(lǐng)域,至今還沒有形成成熟的理論和技術(shù)。本文從幾個不同的角度對面向Web的數(shù)據(jù)挖掘進行了分析和探討。隨著基于Web的數(shù)據(jù)挖掘算法和技術(shù)的不斷發(fā)展和成熟,Web數(shù)據(jù)挖掘一定會有非常廣闊的應用前景。
參考文獻:
[1]何月順:計算機半結(jié)構(gòu)化數(shù)據(jù)源的數(shù)據(jù)挖掘技術(shù)研究[J].哈爾濱工業(yè)大學學報,2005(10)
[2]周琪鋒:基于Web的數(shù)據(jù)挖掘技術(shù)的研究[J].電腦知識與技術(shù),2007(1)
[3]陸楠:WEB數(shù)據(jù)挖掘中異構(gòu)數(shù)據(jù)集成問題的研究[J].深圳大學學報,2002(3)