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