瓊臺師范高等專科學校 周 密
數據挖掘技術分析
瓊臺師范高等專科學校 周 密
隨著數據庫技術的迅速發展以及數據庫管理系統的廣泛應用,數據庫中的信息量在不斷增加。人們面對“被數據淹沒,卻饑餓于知識”的挑戰,為此,數據挖掘和知識發現(DMKD)技術便應運而生,并得到了蓬勃發展,日益顯示出其強大的生命力。
數據挖掘(Data Mining)就是從大量的、不完全的、有噪聲的、模糊的和隨機的數據中,提取隱含在其中的、人們事先不知道的、但又是潛在有用的信息和知識的過程。而且,還有很多和這一術語相近似的術語,如,從數據庫中發現知識(KDD)、數據/模式分析、數據考古和數據捕撈等。數據挖掘又是一門非常廣義的交叉學科,它匯聚了不同領域,尤其是數據庫、人工智能、數理統計、可視化、并行計算等方面的知識。 簡而言之,數據挖掘就是一類深層次的數據分析的方法。
數據挖掘的任務就是從數據集中發現模式。按其功能可分為2大類:預測型模式和描述型模式。在實際應用中,往往根據模式的實際作用又可分為以下幾個分類。
1. 用于預測事件所屬的類別。其中,樣本數據中包含標識樣本事件所屬類別的數據項。類別是已知的,由數據挖掘根據樣本數據構建對這些類別模式的描述。再利用所發現的模式,參照新的數據的特征變量,將其映射到已知類別中。其中,樣本數據中不包含類別變量。數據挖掘將具有共同趨勢和模式的數據元組歸類。
2. 聚集為一類。使類內各元組相似程序最高,類間差異最大。
3. 關聯分析。關聯分析用于發現給定事件或紀錄中經常一起發生的項目,由此推斷事件間潛在的關聯,識別有可能重復發生的模式。
4. 序列模式。序列模式與關聯分析類似,只是擴展為一段時間的項目集間的關系常把序列模式看作由時間變量連接起來的關聯序列分析,從而能分析長時間的相關紀錄,發現經常發生的模式。
1. 確定業務對象。清晰地定義出業務問題,并認清數據挖掘的目的,是數據挖掘的重要一步。挖掘的最終結構是不可預測的,但要探索的問題應是可預見的。為了數據挖掘而數據挖掘帶有強烈的盲目性,是不會成功的。
2. 數據準備。
(1)數據清理。即消除噪聲或不一致數據。
(2)數據集成。即將多種數據源組合在一起。
(3)數據選擇。即搜索所有與業務對象有關的內部和外部數據信息,并從中選擇出適用于數據挖掘應用的數據。
(4)數據變換。即將數據轉換成一個分析模型。這個分析模型是針對挖掘算法建立的。建立一個真正適合挖掘算法的分析模型是數據挖掘成功的關鍵。
3. 數據挖掘。即對所得到的經過轉換的數據進行挖掘。除了完善和選擇合適的挖掘算法外,其余一切工作都能自動地完成。
4. 模式評估。數據挖掘出現結果后,需要對結果進行解釋和評估,以保證數據挖掘結果在實際應用中的成功率。具體的解釋與評估方法一般應根據數據挖掘操作結果所制定的決策成敗來決定。其使用的分析方法一般應由數據挖掘的操作而定,通常會用到可視化技術。
5. 知識表示。數據挖掘的結果經過業務決策人員的認可,才能獲得實際利用。只有通過對數據挖掘知識的應用,才能對數據挖掘最終的成果做出正確的評價。數據挖掘結果要能在實際中得到應用,需要將分析所得到的知識集成到組織機構中去,使這些知識在實際的管理決策分析中得到應用。
1. 聚類分析。聚類分析是根據所選樣本之間關聯的標準將其劃分成幾個組,同組內的樣本具有較高的相似度,不同組的樣本則相異。常用的技術有分裂算法、凝聚算法、劃分聚類和增量聚類。聚類方法主要有層次方法、基于密度的方法、基于網絡的方法、基于模型的聚類方法等。聚類方法適合于探討樣本間的內部關系,從而對樣本結構做出合理的評價。此外,聚類分析還用于對孤立點的檢測。有時進行聚類不是為了將對象相聚在一起,而是為了更容易地使某個對象從其他對象中分離出來。聚類分析技術的關鍵除了算法的選擇之外,就是對樣本的度量標準的選擇。并非所有聚類分析算法得到的類對決策都是有效的,在運用某一個算法之前,一般要先對數據的聚類趨勢進行檢驗。
2. 決策樹。決策樹是一種針對人工智能開發的有指導性的歸納學習方法,它通過將大量數據進行有目的地分類,從中找到一些有價值的、潛在的信息。決策樹以及決策規則屬于以邏輯模型方式輸出的分類方法,主要用來解決數據挖掘中的分類和預測問題,其歸納學習的目標是建立一個分類模型(也叫分類器)。它能夠為含有數值型和分類型的數據集建立模型,且無需預先對數據性質做出假設,決策樹方法簡單易懂且精確度高,已經成功應用于解決現實問題。決策樹方法的局限性在于它不允許輸出多個屬性,且只能輸出分類型,由于數值型數據的屬性分裂時往往是二元分裂,因此用決策樹方法處理時會相當的復雜。另外,決策樹算法缺乏穩定性,也使其運用受到限制。
3. 關聯規則。關聯規則是一種簡單、實用的分析規則,它描述了一個事物中某些屬性同時出現的規律,是數據挖掘中最成熟的技術之一。最經典的關聯規則挖掘算法是Apriori算法。該算法是一種布爾關聯規則頻繁項集的算法,即用一種逐層搜索的迭代方法,k-項集用于探索(k+1)-項集:首先找出頻繁1-項集的集合,然后利用前者找出2項集的集合,如此迭代,直到不能找出頻繁k項集,最后由頻繁項集產生關聯規則。關聯規則在數據挖掘領域應用很廣泛,適用于在大型數據集中發現數據之間有意義的關系,原因是它不受只選擇一個因變量的限制。關聯規則在數據挖掘領域最典型的應用是購物籃分析。大多數關聯規則挖掘算法能夠無遺漏發現隱藏在所挖掘數據中的所有關聯關系, 所挖掘出的關聯規則量往往非常巨大。但是,并不是所有通過關聯得到的屬性之間的關系都有實際應用價值。如何對這些關聯規則進行有效評價,篩選出用戶真正感興趣的、有意義的關聯規則,則顯得尤為重要。事實上,任何一種挖掘工具往往是根據定義的業務問題來選擇相應的挖掘方法,很難說哪種方法好,那種方法不好,而是要視具體問題而定。每種方法都有其擅長的方面,數據挖掘工作者應該根據實際情況而選擇。
1. Web的數據挖掘。Web上有海量的數據信息,怎樣對這些數據進行復雜的應用便成了現今數據庫技術的研究熱點。數據挖掘就是從大量的數據中發現隱含規律性的內容,解決數據的應用質量問題。充分利用有用的數據,廢棄無用的數據,是數據挖掘技術的最重要的應用。顯然,面向Web的數據挖掘比面向單個數據倉庫的數據挖掘要復雜得多。因為它面臨如下諸多挑戰:
(1)對于有效的數據倉庫和數據挖掘而言,Web的存儲量實在是太龐大了。
(2)Web頁面的復雜性遠比任何傳統的文本文檔復雜得多。
(3)Web是一個動態性極強的信息源。
(4)Web面對的是一個形形色色和廣泛的用戶群體。
(5)Web上的信息只有很小的一部分是相關的或有用的。
2. 文本的數據挖掘。在現實世界中,可獲取的大部分信息是存儲在文本數據庫中的,由來自各種數據源的大量文檔組成。由于電子形式的信息量的飛速增長,文檔數據庫也隨之飛速發展。文檔數據庫中存儲最多的數據是所謂的半結構化數據,它既不是完全無結構的,也不是完全結構化的。在最近的數據庫研究領域中已經有大量關于半結構化數據的建模和實現方面的研究。而且,信息檢索技術也已被用來處理非結構化文檔。傳統的信息檢索已經不適應日益增長的大量文本數據處理的需要。因此,文檔挖掘就成為數據挖掘中一個日益流行且十分重要的課題。
當前,數據挖掘研究方興未艾,數據挖掘的研究還會形成更大的高潮,研究焦點會集中到以下幾個方面:應用探索、數據挖掘語言的標準化、可視數據的挖掘、生物數據挖掘、Web挖掘、實時數據挖掘、分布式數據挖掘等。
但是,無論如何,只有從數據中有效地提取信息,從信息中及時地發現知識,才能為人類的思維決策和戰略發展服務。也只有發展到這個階段,數據才能夠真正成為與物質相媲美的資源,信息時代也才會真正到來。