什麼是資料探勘(zt)

tonykorn97發表於2007-07-31
當今資料庫的容量已經達到上萬億的水平(T)--- 1,000,000,000,000個位元組。在這些大量資料的背後隱藏了很多具有決策意義的資訊,那麼怎麼得到這些“知識”呢?也就是怎樣透過一顆顆的樹木瞭解到整個森林的情況?

電腦科學對這個問題給出的最新回答就是:資料探勘,在“資料礦山”中找到蘊藏的“知識金塊”,幫助企業減少不必要投資的同時提高資金回報。資料探勘給企業帶來的潛在的投資回報幾乎是無止境的。世界範圍內具有創新性的公司都開始採用資料探勘技術來判斷哪些是他們的最有價值客戶、重新制定他們的產品推廣策略(把產品推廣給最需要他們的人),以用最小的花費得到最好的銷售。

資料探勘是一個利用各種分析工具在海量資料中發現模型和資料間關係的過程,這些模型和關係可以用來做出預測。

資料探勘的第一步是描述資料 --- 計算統計變數(比如平均值、均方差等),再用圖表或圖片直觀的表示出來,進而可以看出一些變數之間的相關性(比如有一些值經常同時出現)。選擇正確的資料來源對整個資料探勘專案的成敗至關重要,在後面資料探勘的步驟中我們會著重強調這一點。

單單是資料描述並不能為人們制訂行動計劃提供足夠的依據,你必須用你的這些歷史資料建立一個預言模型,然後再用另外一些資料對這個模型進行測試。一個好的模型沒必要與資料庫中的資料100%的相符(城市交通圖也不是完全的實際交通線路的等比縮小),但他在你做決策時是一個很好的指南和依據。

最後一步是驗證你的模型。比如你用所有對你的產品推廣計劃做出回應的人的資料庫做了一個模型,來預測什麼樣的人會對你的產品感興趣。你能在得到這個模型後就直接利用這個模型做出決策或採取行動嗎?還是更穩妥一點先對一小部分客戶做一個實際的測試,然後再決定?

資料探勘:不能幹什麼

資料探勘是一個工具,而不是有魔力的權杖。它不會坐在你的資料庫上一直監視著資料庫,然後當他發現有意義的模型時給你發一封電子郵件。他仍然需要了解你的業務,理解你的資料,弄清分析方法。資料探勘只是幫助商業人士更深入、更容易的分析資料 --- 他無法告訴你某個模型對你的企業的實際價值。而且資料探勘中得到的模型必須要在現實生活中進行驗證。

注意資料探勘中得到的預言模型並不會告訴你一個人為什麼會做一件事、採取某個行動,他只會告訴你他會這樣做,為什麼要人去考慮。比如,資料探勘可能會告訴你,如果這個人是男的、年收入在5萬到6萬之間,那麼他可能會買你的商品/服務。你可能會利用這條規則,集中向這類人推銷你的商品而從中獲益,但是資料探勘工具不會告訴你他們為什麼會買你的東西,也不能保證所有符合這條規則的人都會買。

為了保證資料探勘結果的價值,你自己必須瞭解你的資料,這一點至關重要。輸入資料庫中的異常資料、不相關的欄位或互相沖突的欄位(比如年齡和生日不一致)、資料的編碼方式等都會對資料探勘輸出結果的質量產生影響。雖然一些演算法自身會對上面提到的這些問題做一些考慮,但讓演算法自己做所有這些決定是不明智的。

資料探勘不會在缺乏指導的情況下自動的發現模型。你不能這樣對資料探勘工具說,“幫我提高直接郵件推銷的響應率”,你應該讓資料探勘工具找(1)對你的推銷回應的人,或(2)即回應又做了大量訂單的人的特徵。在資料探勘中尋找這兩種模型是很不相同的。

雖然資料探勘工具使你不必再掌握艱深的統計分析技術,但你仍然需要知道你所選用的資料探勘工具是如何工作的,他所採用的演算法的原理是什麼。你所選用的技術和最佳化方法會對你的模型的準確度和生成速度產生很大影響。

資料探勘永遠不會替代有經驗的商業分析師或管理人員所起的作用,他只是提供一個強大的工具。每個成熟的、瞭解市場的公司都已經具有一些重要的、能產生高回報的模型,這些模型可能是管理人員花了很長時間,作了很多調查,甚至是經過很多失誤之後得來的。資料探勘工具要做的就是使這些模型得到的更容易,更方便,而且有根據。

資料探勘和資料倉儲

大部分情況下,資料探勘都要先把資料從資料倉儲中拿到資料探勘庫或資料集市中。從資料倉儲中直接得到進行資料探勘的資料有許多好處。就如我們後面會講到的,資料倉儲的資料清理和資料探勘的資料清理差不多,如果資料在匯入資料倉儲時已經清理過,那很可能在做資料探勘時就沒必要在清理一次了,而且所有的資料不一致的問題都已經被你解決了。

資料探勘庫可能是你的資料倉儲的一個邏輯上的子集,而不一定非得是物理上單獨的資料庫。但如果你的資料倉儲的計算資源已經很緊張,那你最好還是建立一個單獨的資料探勘庫。

當然為了資料探勘你也不必非得建立一個資料倉儲,資料倉儲不是必需的。建立一個巨大的資料倉儲,把各個不同源的資料統一在一起,解決所有的資料衝突問題,然後把所有的資料導到一個資料倉儲內,是一項巨大的工程,可能要用幾年的時間花上百萬的錢才能完成。只是為了資料探勘,你可以把一個或幾個事務資料庫導到一個只讀的資料庫中,就把它當作資料集市,然後在他上面進行資料探勘。


資料探勘和線上分析處理(OLAP)

一個經常問的問題是,資料探勘和OLAP到底有何不同。下面將會解釋,他們是完全不同的工具,基於的技術也大相徑庭。

OLAP是決策支援領域的一部分。傳統的查詢和報表工具是告訴你資料庫中都有什麼(what happened),OLAP則更進一步告訴你下一步會怎麼樣(What next)、和如果我採取這樣的措施又會怎麼樣(What if)。使用者首先建立一個假設,然後用OLAP檢索資料庫來驗證這個假設是否正確。比如,一個分析師想找到什麼原因導致了貸款拖欠,他可能先做一個初始的假定,認為低收入的人信用度也低,然後用OLAP來驗證他這個假設。如果這個假設沒有被證實,他可能去察看那些高負債的賬戶,如果還不行,他也許要把收入和負債一起考慮,一直進行下去,直到找到他想要的結果或放棄。

也就是說,OLAP分析師是建立一系列的假設,然後透過OLAP來證實或推翻這些假設來最終得到自己的結論。OLAP分析過程在本質上是一個演繹推理的過程。但是如果分析的變數達到幾十或上百個,那麼再用OLAP手動分析驗證這些假設將是一件非常困難和痛苦的事情。

資料探勘與OLAP不同的地方是,資料探勘不是用於驗證某個假定的模式(模型)的正確性,而是在資料庫中自己尋找模型。他在本質上是一個歸納的過程。比如,一個用資料探勘工具的分析師想找到引起貸款拖欠的風險因素。資料探勘工具可能幫他找到高負債和低收入是引起這個問題的因素,甚至還可能發現一些分析師從來沒有想過或試過的其他因素,比如年齡。

資料探勘和OLAP具有一定的互補性。在利用資料探勘出來的結論採取行動之前,你也許要驗證一下如果採取這樣的行動會給公司帶來什麼樣的影響,那麼OLAP工具能回答你的這些問題。

而且在知識發現的早期階段,OLAP工具還有其他一些用途。可以幫你探索資料,找到哪些是對一個問題比較重要的變數,發現異常資料和互相影響的變數。這都能幫你更好的理解你的資料,加快知識發現的過程。

資料探勘,機器學習和統計

資料探勘利用了人工智慧(AI)和統計分析的進步所帶來的好處。這兩門學科都致力於模式發現和預測。

資料探勘不是為了替代傳統的統計分析技術。相反,他是統計分析方法學的延伸和擴充套件。大多數的統計分析技術都基於完善的數學理論和高超的技巧,預測的準確度還是令人滿意的,但對使用者的要求很高。而隨著計算機計算能力的不斷增強,我們有可能利用計算機強大的計算能力只透過相對簡單和固定的方法完成同樣的功能。

一些新興的技術同樣在知識發現領域取得了很好的效果,如神經元網路和決策樹,在足夠多的資料和計算能力下,他們幾乎不用人的關照自動就能完成許多有價值的功能。

資料探勘就是利用了統計和人工智慧技術的應用程式,他把這些高深複雜的技術封裝起來,使人們不用自己掌握這些技術也能完成同樣的功能,並且更專注於自己所要解決的問題。

軟硬體發展對資料探勘的影響

使資料探勘這件事情成為可能的關鍵一點是計算機效能價格比的巨大進步。在過去的幾年裡磁碟儲存器的價格幾乎降低了99%,這在很大程度上改變了企業界對資料收集和儲存的態度。如果每兆的價格是¥10,那存放1TB的價格是¥10,000,000,但當每兆的價格降為1毛錢時,儲存同樣的資料只有¥100,000!

計算機計算能力價格的降低同樣非常顯著。每一代晶片的誕生都會把CPU的計算能力提高一大步。記憶體RAM也同樣降價迅速,幾年之內每兆記憶體的價格由幾百塊錢降到現在只要幾塊錢。通常PC都有64M記憶體,工作站達到了256M,擁有上G記憶體的伺服器已經不是什麼新鮮事了。

在單個CPU計算能力大幅提升的同時,基於多個CPU的並行系統也取得了很大的進步。目前幾乎所有的伺服器都支援多個CPU,這些SMP伺服器簇甚至能讓成百上千個CPU同時工作。

基於並行系統的資料庫管理系統也給資料探勘技術的應用帶來了便利。如果你有一個龐大而複雜的資料探勘問題要求透過訪問資料庫取得資料,那麼效率最高的辦法就是利用一個本地的並行資料庫。

所有這些都為資料探勘的實施掃清了道路,隨著時間的延續,我們相信這條道路會越來越平坦。

資料探勘應用

由於資料探勘帶來的顯著的經濟效益,使資料探勘越來越普及。他不僅能用於控制成本,也能給企業帶來效益。

很多企業都在利用資料探勘技術幫助管理客戶生命週期的各個階段,包括爭取新的客戶、在已有客戶的身上賺更多的錢、和保持住好的客戶。如果能夠確定好的客戶的特點,那麼就能提供為客戶提供針對性的服務。比如,已經發現了購買某一商品的客戶的特徵,那麼就可以向那些具有這些特徵但還沒有購買此商品的客戶推銷這個商品;找到流失的客戶的特徵就可以,在那些具有相似特徵的客戶還未流失之前進行針對性的彌補,因為保留一個客戶要比爭取一個客戶便宜的多。

資料探勘可以應用在各個不同的領域。電訊公司和信用卡公司是用資料探勘檢測欺詐行為的先行者。保險公司和證券公司也開始採用資料探勘來減少欺詐。醫療應用是另一個前景廣闊的產業:資料探勘可以用來預測外科手術、醫療試驗和藥物治療的效果。零銷商更多的使用資料探勘來決定每種商品在不同地點的庫存,透過資料探勘更靈活的使用促銷和優惠卷手段。製藥公司透過挖掘巨大的化學物質和基因對疾病的影響的資料庫來判斷哪些物質可能對治療某種疾病產生效果。

成功的資料探勘

有保證資料探勘成功的兩個關鍵要素。一是準確的定義你所要解決的問題,定位準確的問題通常會帶來最好的回報。二是使用正確的資料,選定了你所能得到的資料,也許還要從外部購買資料,你需要對這些資料做有效的資料整合和轉換。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/312079/viewspace-245737/,如需轉載,請註明出處,否則將追究法律責任。

相關文章