2012年8月31日 星期五

「資料探勘」幼幼班

請訪問 iCoding Blog 主站 

Mine Cart

儘管「資料探勘」已經被研究數十年了,到現在仍然被許多人所誤解,因此我決定整理一篇「資料探勘」的基礎簡介,希望能幫助大家對資料探勘這個領域有多一點的初步認識。過程會牽涉到一些專有名詞,已盡量附上連結,若仍無法理解還請多多包涵。如有錯誤,也歡迎不吝指正。

什麼是資料探勘

「資料探勘」是一個「嘗試從一大組資料當中找出一些特徵樣式(pattern)的過程」。

「資料探勘」結合了「資訊科學」和「統計學」等跨領知識,除了對原始資料的分析和資料的技術之外,統計模型與統計推論、結構化的後置處理、資料視覺化等技術都是資料探勘會牽涉到的領域。

「資料探勘」的英文原文是 Data Mining,源於1990年的資料庫社群,曾經成為 HNC 這間公司的註冊商標,在人工智慧和機器學習的領域中,Data Mining(資料探勘) 和 Knowledge Discovery(知識探索)經常互為同義詞。

為什麼要做資料探勘

人們希望能從一堆資料當中,萃取出一些有意義的資訊,並且把這些資訊轉換成比較容易理解的形式,以便對這些資訊再利用。而這也是「資料探勘」存在的目的與目標。

舉例來說,人們會想透過某種從地層資料當中去分析歸納出一些含礦量高的地形特徵樣式(pattern),並建出合乎真實的地底模型(model),再利用這些特徵或模型找出建造優異礦坑或油田的過程與方法。

常見的資料探勘方法

粗略來說,資料探勘可以分成底下三個步驟:
  1. 資料預先處理 (pre-processing)
  2. 資料探勘 (data mining)
  3. 結果的評估與驗證 (results validation)
資料預先處理(Pre-processing)是一個必要的步驟,不但要確保資料的數量足夠,讓探勘的結果具有意義,也要避免資料無法在合理的時間內可以被分析完畢,此外,也必須確保資料的乾淨(data cleaning),例如過濾掉一些雜訊或錯誤的資料,以免探勘出奇怪的結果。

資料處理完之後,就可以開始探勘了:
  • 異常偵測
    • 用來分辨一些看起來不尋常的資料,這些東西可能會是有意義的資訊或只是單純的錯誤。
  • 關聯規則的學習
    • 資料當中有許多變因或是變數之間可能會有關聯性(例如天氣和銷售量的關係),這個步驟的目的專門用來找尋這種關聯性。
  • 分群
    • 在面對一群未知類型的資料時,把看起來相似的資料聚集成同一個組別的方法。
  • 分類
    • 把新發現的資料歸類到預先定好的類別當中(例如把郵件分成重要、普通、和垃圾)。
  • 回歸分析
    • 用來找出資料之間是否有依賴或獨立的關係。
  • 結果摘要
    • 提供一組最具代表性(代表原始資料或某件知識或事情)的簡化資料,並且包括視覺化以及結果報告。
由於探勘完的結果或是找到的特徵樣式(pattern)很可能有不合理的結果(例如:過度最佳化 - overfitting),所以在做完資料探勘之後需要做驗證(Result validation),以免被錯誤的結果所誤導。一般來說,我們會在探勘前把資料分成訓練組(training set)和測試組(test set),我們會把訓練組餵給探勘演算法進行探勘,再用測試組檢測從訓練組當中找到的特徵樣式是否也存在於測試組。ROC 曲線是常拿來評估驗證結果的方式。

常見的誤解

資料探勘強調的是「探勘」或是「探索未知(detecting something new)」這件事。

很多人誤以為資料探勘包括任何形式的大規模(尤其是強調巨量,例如大資料 - big data)的資料或資訊的處理過程,例如一些資料收集、擷取、放置、分析與統計分析,甚至人工智慧、機器學習Business Intelligence電腦輔助決策系統等,都不是資料探勘。

市面上有些暢銷書用了行銷手段,在書名前面加上 Data Mining 幾個字來提高賣點,這也是不對的。

另外,資料探勘和「應用」資料探勘技術其實是兩件事情,一個是對未知模型的探索,另一個是拿已知的模型進行應用,一個是模型創造者,一個是模型使用者,如果沒有切割十分清楚很容易被誤解。

資料探勘的應用

前面提到「資料探勘」像是找礦脈、油田的過程,而在這過程下有許多的多輔助工具、已知特徵樣式或模型等技術因應而生,這些的資料探勘的「衍生應用」在許多領域都可以看見,例如:
  • 商業:
    • 客戶關係管理(利用分析結果來找出精準客群)、購物籃分析、決策系統等。
  • 科學與工程:
    • 生物資訊、醫學、基因、藥學、電力工程等,都是「資料探勘」的重度使用者。
  • 人權組織:
    • 可以透過探勘政府的資料,去探索迫害人權的政府機構或文獻的存在。
  • 時空資料探勘:
    • 資料探勘技術也被廣泛的應用在地理資訊系統(GIS)的研究上,這些資料量非常驚人龐大,存在著許多巨大挑戰以及潛在應用在商業的機會。
  • 視覺、音樂資料分析
  • 監控:
    • 分析防堵恐怖份子的應用也透過資料探勘歸納出來的結果作依據。
  • 樣式探勘(pattern mining)
    • 從資料中比對一些已知的樣式,像是所謂的「關聯規則」,可以用來幫助改善商業銷售狀況,例如買啤酒的人,80%的機會會買洋芋片。
提了這麼多相關應用,是不是有種眼花繚亂的感覺呢?
其實,這些廣大的資料探勘的相關應用正一點一滴地在改變你我的日常生活呢:)

希望這篇文章能讓您對「資料探勘」有多一點感覺。

Reference: http://en.wikipedia.org/wiki/Data_mining
Photo by Caitlin Childs, CC licensed

2 則留言:

  1. 很多人誤以為資料探勘包括任何形式的大規模(尤其是強調巨量,例如大資料 - big data)的資料或資訊的處理過程,例如一些資料收集、擷取、放置、分析與統計分析,甚至人工智慧、機器學習、Business Intelligence、電腦輔助決策系統等,都不是資料探勘。

    這段說明有點 confusing :p

    回覆刪除
  2. Scott Chen 要強調的是這些有關係但是不一樣?

    回覆刪除

Related Posts Plugin for WordPress, Blogger...