摘要:討論了基于XML語言的Web數據挖掘技術,解決了Internet上絕大多數非結構化甚至是無結構的、Web信息的組織結構性差而導致的Web數據挖掘困難的問題。
關鍵詞:數據挖掘;Web數據挖掘;XML技術
中圖分類號:TP311文獻標識碼:A 文章編號:1009-3044(2008)14-20792-02
1 引言
基于Web技術的萬維網是一個巨大的、分布廣泛的、全球性的信息服務中心,涉及新聞、廣告、消費者信息、金融管理、教育、政府、電子商務和許多其他信息服務。在這些異質的Web信息資源中,蘊含著具有巨大潛在價值的知識,但同時也面臨著如何從大量Web信息中得到相關和有用的信息問題。而面向Web的數據挖掘技術就為因特網上的信息利用提供了一個很好的解決途徑,并且已經取得了一些令人滿意的結果。但由于Web數據存在方式的特殊性使Web數據控制變得十分復雜,而XML的出現為Web數據挖掘技術帶來了新的契機和巨大的發展。
2 Web數據挖掘概述
互聯網是世界上最豐富和最密集的信息來源。但是,它的結構給人們對它的利用帶來了難度。因此,如何從浩瀚的網絡信息中挖掘出人們所需要、真正有價值的信息是Web挖掘的主要任務。而Web信息同普通文本存在顯著的區別,即Web信息是半結構化的文本,其中的標簽(Tag)給Web挖掘帶來了不少方便之處。在加了標簽后,Web提供了許多附加信息,如
2.1 半結構化的數據結構
Web上的數據與傳統的數據庫中的數據不同,傳統的數據庫都有一定的數據模型,可以根據模型來具體描述特定的數據。而Web上的數據非常復雜,沒有特定的模型描述,每一站點的數據都各自獨立設計,并且數據本身具有自述性和動態可變性。因而,Web上的數據是一種非完全結構化的數據,這也稱之為半結構化數據。半結構化是Web上數據的最大特點。
2.2 解決半結構化的數據源問題
Web上的每一個站點都是異構的數據源,因而每一站點之間的信息和組織都不一樣,這就構成了一個巨大的異構數據庫環境。如果想要利用這些數據進行數據挖掘,首先,必須將這些站點的數據都集成起來,提供給用戶一個統一的視圖,才有可能從巨大的數據資源中獲取所需的東西。其次,還要解決Web上的數據查詢問題,因為如果數據不能很有效地得到,對這些數據進行分析、集成、處理就無從談起。
解決Web上的異構數據的集成與查詢問題,就必須要有一個模型來清晰地描述Web上的數據。Web數據挖掘技術首要解決半結構化數據源模型和半結構化數據模型的查詢與集成問題。針對Web上的數據半結構化的特點,尋找一個半結構化的數據模型是解決問題的關鍵所在。除了要定義一個半結構化數據模型外,還需要一種半結構化模型抽取技術,即自動地從現有數據中抽取半結構化模型的技術。也就是說面向Web的數據挖掘必須以半結構化模型和半結構化數據模型抽取技術為前提。
3 XML與Web數據挖掘技術
3.1 XML簡介
XML可擴展標記語言,為W3C所制定的一種標記語言國際標準。HTML著重在網頁內容的顯示,而XML的制定,則以網頁內容的建立與管理為主要目標。在XML中,可以自行定義資料的形態,可以建立結構化的數據庫,還可以透過篩選條件,進行資料排序與查詢。此外,XML還具有延伸性,使用者可以依據不同的需求,自行設定標記的格式,并具有對文件自我解釋的能力。由于對XML特性的了解,相對于HTML,通過XML可以發掘出更多、更有意義的Web信息。
3.2 基于XML的Web數據挖掘模型
面向Web的數據挖掘必須以半結構化模型和半結構化數據模型抽取技術為前提。由于XML具有很強大的數據描述和數據抽取功能,利用 XML技術可以實現對Web頁半結構的數據進行描述, 形成一個半結構的數據模型, 通過這個模型可以很好的實現數據挖掘。借助它可以完成基于Web數據挖掘中最重要的步驟數據抽取與轉換。其主要的思想是: 把現有的Web頁面轉換成XML或 XHTML,并使用眾多工具中的一小部分來處理XML結構的數據, 以檢索出適當的數據。
如何從Web網頁上析取結構化數據,為了達到此目的,通過融合網絡爬行器技術和基于XML的數據析取技術,設計出一種Web數據挖掘的框架,如圖1[2]所示。
根據以上框架,將Web數據挖掘分為以下幾個步驟:
(1)利用爬行器從互聯網上獲得目標Web網頁,這些網頁可能是HTML文檔或XML文檔;
(2)將 HTML格式的Web頁面轉換成良構的XML格式;
(3)析取器對XML格式的文檔進行數據析取;從析取器中得到的XML文檔送往數據檢驗器和數據集成器進行檢驗和集成;
(4)通過 Java 語言中的 JDBC 將提取出的XML數據寫入關系數據庫,以備其他應用程序調用。
3.3 XML在Web數據挖掘中的應用
XML 已經成為正式的規范,開發人員能夠用XML的格式標記和交換數據。XML在三層架構上為數據處理提供了很好的方法。使用可升級的三層模型,XML可以從存在的數據中產生出來,使用XML結構化的數據可以從商業規范和表現形式中分離出來。XML可完成用標準的HTML無法完成的Web應用。數據的集成、發送、處理和顯示過程如圖2所示。
3.3.1 數據挖掘中基于XML的異構數據集成
將XML 應用到Web挖掘中的主要目的是解決以下兩個方面的問題。一方面將Web文檔轉換成結構化數據的表示形式,即XML文檔。由于XML的自定義性及可擴展性,它足以表達各種類型的數據。以DTD中定義的結構方式來組織Web頁面的內容,很容易將其轉換成結構化的 XML文檔。另一方面以統一的結構將來自不同數據源的異構數據集成到一個XML文檔中。當Web 挖掘的數據來自不同的數據庫服務器時,這些數據一般都有自已的格式,即異構性,但由于 XML 所具有的自解釋性,可以統一表示這些數據。Web挖掘可以在Web服務器上對來自多個不同應用點和數據庫服務器的數據方便地進行集成。
3.3.2 XML數據與數據庫之間的轉換
在數據挖掘領域,首先要進行的是數據的收集和集成的過程。因此,經常使用XML文檔作為一種中間格式從此數據庫模型轉換到其他的模型。XML可以定義很多數據交換的標準,它為Web 數據管理提供了新的數據模型,并通過一定的映射機制轉換為關系數據庫數據。XML中的若干標記依據其相鄰的層次關系,分別映射為關系數據庫中的關系表、字段,從而將數據庫技術應用于XML數據處理領域,實現批量數據的精確查找和模型抽取。這種映射主要通過模型驅動方法實現。
XML文檔中的數據根據預定義的模型,隱式地映射到數據庫中。對于大型的XML文檔,這種模型使用對象-關系的映射,因此也稱為對象模型驅動。在這個模型中,將XML 文檔中的數據庫作為一個對象樹,把具有相同屬性的元素類型、內容作為類進行建模,然后使用對象-關系映射技術將這個模型映射到數據庫中。其中,類被映射成表,其內部的多個層次屬性映射為表中字段列,若干個同類中的子元素值轉換為一個表中的多個記錄。從 XML文檔到數據庫的映射經常會丟失一些有關文檔的元信息,甚至是文檔的內在邏輯結構。如果在應用中只強調文檔中的數據而不考慮數據之間的出現次序,則這種轉換是極為有用的。
4 結束語
面向Web的數據挖掘是一項復雜的技術,XML 的出現為解決Web數據挖掘的難題帶來了機會。由于XML能夠使不同來源的結構化的數據很容易地結合在一起,因而使搜索多樣的不兼容的數據庫成為可能,從而為解決Web數據挖掘難題帶來了希望。XML 的擴展性和靈活性允許XML描述不同種類應用軟件中的數據,從而能描述搜集的Web 頁中的數據記錄。同時,由于基于XML的數據是自我描述的,數據不需要有內部描述就能被交換和處理。相信隨著 XML作為在Web上交換數據的一種標準方式的出現,面向Web的數據挖掘將會變得非常輕松。
參考文獻:
[1] 蘇新寧,等. 數據倉庫和數據挖掘[M].北京:清華大學出版社,2006.
[2] 崔建群,等. 基于 XML的Web 數據挖掘關鍵技術的研究[J].計算機工程,2006(20):43-77.
[3] (加)Jiawei Han Micheline Kamber. 范明, 等譯. 數據挖掘概念與技術[M].北京:機械出版社,2007.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文