趙 琳
中國海洋大學,山東 青島 266033
隨著數據庫技術的成熟和數據應用的普及,人類積累的數據量正在以指數速度迅速增長。當數據量極度增長時,如果沒有有效的方法來提取有用信息和知識,人們也會感到面對信息海洋像大海撈針一樣束手無策。面臨浩渺無際的數據,人們渴望從數據汪洋中來一個去粗存精、去偽存真的技術。從數據庫中發現知識及其核心技術—數據采掘(DM)便應運而生了。
知識發現(KDD)是從數據中發現有用知識的整個過程;數據開采(DM)是KDD過程中的一個特定步驟,它用專門算法從數據中抽取模式(patterns)。1996年,Fayyad、PiatetskyShapiror和Smyth將KDD過程定義為:從數據中鑒別出有效模式的非平凡過程,該模式是新的、可能有用的和最終可理解的。KDD過程是多個步驟相互連接、反復進行人機交互的過程。具體包括:1)學習某個應用領域:包括應用中的預先知識和目標;2)建立目標數據集:選擇一個數據集或在多數據集的子集上聚焦;3)數據預處理:去除噪聲或無關數據,去除空白數據域,考慮時間順序和數據變化等;4)數據轉換:找到數據的特征表示,用維變換或轉換方法減少有效變量的數目或找到數據的不變式;5)選定數據挖掘功能:決定數據挖掘的目的;6)選定數據挖掘算法:用KDD過程中的準則,選擇某個特定數據挖掘算法(如匯總、分類、回歸、聚類等)用于搜索數據中的模式;7)數據挖掘:搜索或產生一個特定的感興趣的模式或一個特定的數據集;8)解釋:解釋某個發現的模式,去掉多余的不切題意的模式,轉換某個有用的模式,以使用戶明白;9)發現知識:把這些知識結合到運行系統中,獲得這些知識的作用或證明這些知識。用預先、可信的知識檢查和解決知識中可能的矛盾。
所謂數據挖掘,就是從數據庫中抽取隱含的、以前未知的、具有潛在應用價值的信息的過程。數據挖掘是KDD最核心的部分。數據挖掘與傳統分析工具不同的是數據挖掘使用的是基于發現的方法,運用模式匹配和其它算法決定數據之間的重要聯系。數據挖掘算法的好壞將直接影響到所發現知識的好壞。目前,大多數的研究都集中在數據挖掘算法和應用上。有的學者認為,數據開采和知識發現含義相同,表示成KDD/DM,它是一個反復的過程,通常包含多個相互聯系的步驟:預處理、提出假設、選取算法、提取規則、評價和解釋結果、將模式構成知識,最后是應用。在實際,人們往往不嚴格區分數據挖掘和數據庫中的知識發現,把兩者混淆使用。一般在科研領域中稱為KDD,而在工程領域則稱為數據挖掘。
目前,數據挖掘應用方面有著種類繁多的商品工具和軟件,大致可以歸納為下列主要類型:傳統主觀導向系統,這是針對專業領域應用的系統。如基于技術分析方法對金融市場進行分析。采用的方法從簡單的走向分析直到基于高深數學基礎的分析理論和譜分析。這種技術需要有經驗模型為前提。屬于這類商品有美國的Metastak,SuperCharts,CandlestickForecaster和WallStreetMoney等傳統統計分析,這類技術包括相關分析、回歸分析及因子分析等。一般先由用戶提供假設,再由系統利用數據進行驗證。缺點是需經培訓后才能使用,同時在數據探索過程中,用戶需要重復進行一系列操作。由于近年來更先進的DM方法的出現和使用,這些廠商在原有系統中綜合一些DM部件,以獲得更完善的功能。以上兩種技術主要基于傳統的數理統計等數學的基礎上,一般早已開始用于數據分析方面。神經元網絡技術:神經元網絡技術是屬于軟計算領域內一種重要方法,它是多年來科研人員進行人腦神經學習機能模擬的成果,已成功地應用于各工業部門。在DM(KDD)的應用方面,當需要復雜或不精確數據中導出概念和確定走向比較困難時,利用神經網絡技術特別有效。經過訓練后的NN可以想像具有某種專門知識的“專家”,因此可以像人一樣從經驗中學習。NN有多種結構,但最常用的是多層BP模型。它已廣泛地應用于各種 DM(KDD)工具和軟件中。有些是以NN為主導技術。NN技術已廣泛地做為一種方法嵌入各種DM成套軟件中。缺點是用它來分析復雜的系統諸如金融市場,NN就需要復雜的結構為數眾多神經元以及連接數,從而使現有的事例數無法滿足訓練的需要;另外,由受訓后的NN所代表的預測模型的非透明性也是缺點。盡管如此,它還是廣泛而成功地為各種金融應用分析系統所采用。決策樹:在知識工程領域,決策樹是一種簡單的知識表示方法,它將事例逐步分類成代表不同的類別。由于分類規則是比較直觀的,因而比較易于理解。這種方法一般限于分類任務。在系統中采用這種方法的有美國的IDIS,法國的SIPINA.英國的 Clementinc和澳大利亞的C5.0.進化式程序設計,這種方法的獨特思路是:系統自動生成有關目標變量對其他多種變量依賴關系的務種假設,并形成以內部編程語言表示的程序。內部程序(假設)的產生過程是進化式的,類似于遺傳算法過程。當系統找到較好地描述依賴關系的一個假設時,就對這程序進行各種不同的微小修正,生成子程序組,再在其中選擇能更好地改進預測精度的子程序,如此依次進行,最后獲得達到所需精度的最好程序時,由系統的專有模塊將所找到的依賴關系由內部語言形式轉換成易于為人們理解的顯式形式。這種方法在原則上能保證任何一種依賴關系和算法都能用這種語言來描述。因此,它用于金融到醫療方面的各種應用中將能獲得很好的結果。
[1]馬麗娜,劉弘,張希林.數據挖掘.OLAP在決策支持系統中的應用[J].計算機應用研究,2007(11):10-12.
[2]胡彥.基于數據倉庫的決策支持工具的比較研究[J].計算機應用,2006,20(6):20-24.
[3]喻鋼,周定康.聯機分析處理(OLAP)技術的研究[J].計算機應用,2007,21(11):80-84.