知識挖掘
知識挖掘
知識挖掘源於全球範圍內資料庫中存儲的數據量急劇增加,人們的需求已經不只是簡單的查詢和維護,而是希望能夠對這些數據進行較高層次的處理和分析以得到關於數據總體特徵和對發展趨勢的預測。知識挖掘最新的描述性定義是由UsamaM.Fayyyad等給出的:知識挖掘是從數據集中識別出有效的、新穎的、潛在有用的,以及最終可理解的模式的非平凡過程。
數據是指有關事實的集合,記錄和事物有關的原始信息。
模式是一個用語言來表示的一個表達式,它可用來描述數據集的某個子集,所說的知識,是對數據包涵的信息更抽象的描述。對大量數據進行分析的過程,包括數據準備、模式搜索、知識評價,以及反覆的修改求精;該過程要求是非平凡的,意思是要有一定程度的智能性、自動性(僅僅給出所有數據的總和不能算作是一個發現過程)。有效性是指發現的模式對於新的數據仍保持有一定的可信度。新穎性要求發現的模式是新的。潛在有用性是指發現的知識將來有實際效用,如用於決策支持系統里可提高經濟效益。最終可理解性要求發現的模式能被用戶理解,它主要是體現在簡潔性上。有效性、新穎性、潛在有用性和最終可理解性綜合在一起可稱之為興趣性。
由於知識挖掘是一門新興學科,況且它又是一門受到來自各種不同領域的研究者關注的邊緣學科,因此產生很多不同的術語,除了稱為“知識挖掘”外,主要還有如下若干種稱法:“數據發現”、“數據開採”、“知識抽取”、“信息發現”、“知識發現”、“智能數據分析”、“探索式數據分析”、“信息收穫”和“數據考古”等等。“知識挖掘”被許多研究者看作僅是數據發現的一個步驟。相對來講,數據開採主要流行於統計界、數據分析、資料庫和管理信息系統(MIS)界;而數據發現則主要流行於人工智慧和機器學習界。
知識挖掘已被越來越多的領域所採用,並取得了較好效果。這些領域有科學研究、市場營銷、金融投資、欺詐甄別、產品製造、通信網路管理等。由加州理工學院噴氣推進實驗室與天文科學家合作開發的SKICAT(SkyImageCatalogingandAnalysisTool)是第一個獲得相當成功的知識挖掘應用,已經幫助科學家發現了16顆極其遙遠的類星體。
雖然知識挖掘已經受到許多關注並取得了廣泛應用,但它仍處於發展的早期,還有很多研究難題和面臨的挑戰,如數據的巨量性、動態性、雜訊性、缺值和稀疏性,發現模式的可理解性、興趣或價值性,應用系統的集成,用戶的交互操作,知識的更新管理,複雜資料庫的處理等等。
20世紀90年代,伴隨著網際網路(Internet)的出現和發展,
實施知識挖掘必須先了解知識狀態
知識挖掘
所謂知識挖掘,就是從資料庫中抽取隱含的、以前未知的、具有潛在應用價值的信息的過程。知識挖掘是KDD最核心的部分。知識挖掘與傳統分析工具不同的是知識挖掘使用的是基於發現的方法,運用模式匹配和其它演演算法決定數據之間的重要聯繫。
知識挖掘
知識挖掘演演算法的好壞將直接影響到所發現知識的好壞。大多數的研究都集中在知識挖掘演演算法和應用上。需要說明的是,有的學者認為,數據開採和知識發現含義相同,表示成KDD/DM.它是一個反覆的過程,通常包含多個相互聯繫的步驟:預處理、提出假設、選取演演算法、提取規則、評價和解釋結果、將模式構成知識,最後是應用。在實際,人們往往不嚴格區分知識挖掘和資料庫中的知識發現,把兩者混淆使用。一般在科研領域中稱為KDD,而在工程領域則稱為知識挖掘。
KDD過程是多個步驟相互連接、反覆進行人機交互的過程。具體包括:
學習某個應用領域
包括應用中的預先知識和目標。
建立目標數據集
選擇一個數據集或在多數據集的子集上聚焦。
數據預處理
去除雜訊或無關數據,去除空白數據域,考慮時間順序和數據變化等。
數據轉換
找到數據的特徵表示,用維變換或轉換方法減少有效變數的數目或找到數據的不變式。
選定知識挖掘功能
決定知識挖掘的目的。
選定知識挖掘演演算法
用KDD過程中的準則,選擇某個特定知識挖掘演演算法(如匯總、分類、回歸、聚類等)用於搜索數據中的模式。
知識挖掘
搜索或產生一個特定的感興趣的模式或一個特定的數據集。⑧解釋:解釋某個發現的模式,去掉多餘的不切題意的模式,轉換某個有用的模式,以使用戶明白。
發現知識
把這些知識結合到運行系統中,獲得這些知識的作用或證明這些知識。用預先、可信的知識檢查和解決知識中可能的矛盾。
市面知識挖掘應用方面有著種類繁多的商品工具和軟體,大致可以歸納為下列主要類型:
傳統主觀導向系統
:這是針對專業領域應用的系統。如基於技術分析方法對金融市場進行分析。採用的方法從簡單的走向分析直到基於高深數學基礎的分形理論和譜分析。這種技術需要有經驗模型為前提。屬於這類商品有美國的Metastak,SuperCharts,CandlestickForecaster和WallStreetMoney等傳統統計分析:這類技術包括相關分析、回歸分析及因子分析等。一般先由用戶提供假設,再由系統利用數據進行驗證。缺點是需經培訓后才能使用,同時在數據探索過程中,用戶需要重複進行一系列操作。屬於這類商品有美國的SAS,SPSS和Stargraphis等。由於近年來更先進的DM方法的出現和使用,這些廠商在原有系統中綜合一些DM部件,以獲得更完善的功能。以上兩種技術主要基於傳統的數理統計等數學的基礎上,一般早已開始用於數據分析方面。
神經元網路技術
神經元網路技術是屬於軟計算(SoftComputing)領域內一種重要方法,它是多年來科研人員進行人腦神經學習機能模擬的成果,已成功地應用於各工業部門。在DM(KDD)的應用方面,當需要複雜或不精確數據中導出概念和確定走向比較困難時,利用神經網路技術特別有效。經過訓練后的NN可以想像具有某種專門知識的“專家”,因此可以像人一樣從經驗中學習。NN有多種結構,但最常用的是多層BP(backpropagation)模型。它已廣泛地應用於各種DM(KDD)工具和軟體中。有些是以NN為主導技術,例如俄羅斯的PolyAnalyst,美國的BrainMaker,Neurosell和OWL等。NN技術也已廣泛地做為一種方法嵌入各種DM成套軟體中。其缺點是用它來分析複雜的系統諸如金融市場,NN就需要複雜的結構為數眾多神經元以及連接數,從而使現有的事例數(不同的紀錄數)無法滿足訓練的需要。另外由受訓后的NN所代表的預測模型的非透明性也是其缺點,儘管如此,它還是廣泛而成功地為各種金融應用分析系統所採用。
決策樹
決策樹:在知識工程領域,決策樹是一種簡單的知識表示方法,它將事例逐步分類成代表不同的類別。由於分類規則是比較直觀的,因而比較易於理解,。這種方法一般限於分類任務。在系統中採用這種方法的有美國的IDIS,法國的SIPINA,英國的Clementinc和澳大利亞的C5.0,進化式程序設計(Evolutionaryprogramming):這種方法的獨特思路是:系統自動生成有關目標變數對其他多種變數依賴關係的務種假設,並形成以內部編程語言表示的程序。內部程序(假設)的產生過程是進化式的,類似於遺傳演演算法過程。當系統找到較好地描述依賴關係的一個假設時,就對這程序進行各種不同的微小修正,生成子程序組,再在其中選擇能更好地改進預測精度的子程序,如此依次進行,最後獲得達到所需精度的最好程序時,由系統的專有模塊將所找到的依賴關係由內部語言形式轉換成易於為人們理解的顯式形式,如數學公式,預測表等。由於採用通用編程語言,這種主法在原則上能保證任何一種依賴關係和演演算法都能用這種語言來描述。這種方法的商用產品還只見諸俄羅斯的PolyAnalyst.據報導,它用於金融到醫療方面軍的各種應用於,能獲得者很好的結果。
基於事例的推理方法
(CBR—Casebasedreasoning):這種方法的思路非常簡單,當預測未來情況或進行正確決策時,系統尋找與現有情況相類似的事例,並選擇最佳的相同的解決方案,這種方法能用於很多問題求解,並獲得好的結果,其缺點是系統不能生成匯總過去經驗的模塊或規則。採用這種方法的系統有美國的PatternRecognitionWorkbench和法國的KATEtools,遺傳演演算法(GA—GeneticAlgorithms):DA不是GA應用的主要領域,它是解決各種組合或優化問題的強有力的手段,但它在現代標準儀器表中也用來完成DA任務。這種方法的不足之處是:這種問題的生成方式使估計所得解答的統計意義的任何一種機會不再存在。另外一方面,只有專業人員才能提出染色體選擇的準則和有效地進行問題描述與生成。在系統中包含遺傳演演算法的有美國的GeneHunter,非線性回歸方法:這種方法的基礎是,在預定的函數的基礎上,尋找目標度量對其它多種變數的依賴關係。這種方法在金融市場或醫療診斷的應用場合,比較好的提供可信賴的結果。在俄羅斯的PalyAnalyst以及美國的Neuroshell系統中包括了這種技術。
多年來數理統計分析以及AI與KE的研究提供了種類繁多特點各異的手段,DM開發人員完全可以根據不同任務加以選擇使用,另外在軟計算(SoftComputing)和不確定信息處理(dealingwithUncertaintyofinformation)方法的研究,促使DM(KDD)技術向更深層次發展。
上面所說的DM中的數據是指資料庫中表格形式中的記錄和條目,這種數據稱作結構型數據(Structureddata)。在一個企業中,還有一類像文本和網頁形式的數據,稱作非結構型數據(unstructureddata)。它來自不同的信息源,如文本圖像影視和音響等,當然文本是最主要的一種非結構數據。1995年分析家已預言,像文本這樣非結構型數據將是在線存貯方面占支配地位的數據形式。到1998年初,在Internet上的信息網頁數,已超過5億。隨著Internet的擴展和大量在線文本的出現,將標誌這巨大的非結構型數據海洋中,蘊藏著極其豐富的有用信息即知識。人們從書本中獲取知識方法是閱讀和理解。開發一種工具能協助用戶從非結構數據中抽取關鍵概念以及快速而有效地檢索到關心的信息,這將是一個非常引人入勝的研究領域。基於圖書索引檢索以及超文本技術的各類搜索引擎,能協助用戶尋找所需信息,但要深入發掘這類數據中的有用用信息,尚需要更高層次的技術支持,人工智慧領域有關知識表示及獲取的方法(如語義網路概念映射等),和自然語言理解的研究成果,可望被採用。還可能要涉及到語言學心理學等領域。已出現針對文本的DM工具的報導。如IBM公司的TexMiner,NetQuestion,WedCawler和megaputer公司的TextAnalyst等。
DM(KDD)工具和軟體已在各個部門得到很好的應用,並收到明顯的效益。
金融方面:銀行信用卡和保險行業,預測存/貸款趨勢,優化存/貸款策略,用DM將市場分成有意義的群組和部門,從而協助市場經理和業務執行人員更好地集中於有促進作用的活動和設計新的市場運動。
在客戶關係管理方面:DM能找出產品使用模式或協助了解客戶行為,從而可以改進通道管理(如銀行分支和ATM等)。又如正確時間銷售(RightTimeMarKeting)就是基於顧客生活周期模型來實施的。
在零售業/市場營銷方面:是知識挖掘技術應用最早也是最重要的領域,DM用於顧客購貨籃的分析可以協助貨架布置,促銷活動時間,促銷商品組合以及了解滯銷和暢銷商品狀況等商業活動。通過對一種廠家商品在各連鎖店的市場共享分析,客戶統計以及歷史狀況的分析,可以確定銷售和廣告業務的有效性。
在過程式控制制/質量監督保證方面:DM協助管理大數量變數之間的相互作用,DM能自動發現出某些不正常的數據分佈,暴露製造和裝配操作過程中變化情況和各種因素,從而協助質量工程師很快地注意到問題發生範圍和採取改正措施。
在遠程通訊部門:基於DM的分析協助組織策略變更以適應外部世界的變化,確定市場變化模式以指導銷售計劃。在網路容量利用方面,DM能提供對客戶組類服務使用的結構和模式的了解,從而指導容量計劃人員對網路設施作出最佳投資決策。
化學/製藥行業:從各種文獻資料總自動抽取有關化學反應的信息,發現新的有用化學成分。在遙感領域針對每天從衛星上及其它方面來的巨額數據,對氣象預報,臭氧層監測等能起很大作用。
軍事方面:使用DM進行軍事信息系統中的目標特徵提取、態勢關聯規則挖掘等。
總之,DM可廣泛應用於銀行金融、零售與批發、製造、保險、公共設施、政府、教育、遠程通訊、軟體開發、運輸等各個企事業單位及國防科研上。據報導,DM的投資回報率有達400%甚至10倍的事例。