iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 6
0
Google Developers Machine Learning

透視Google Machine Learning的奧秘系列 第 6

[Day06] 你了解你在做機器學習時的資料嗎?資料前處理之ETL概念介紹(1/6)

前一天我們介紹了如何定義機器學習的問題和思考如何解決,今天要來介紹資料清理與數據前處理

資料清理與數據前處理

確認好問題和目標之後接下來就是要做資料前處理的部分,這個部分是機器學習流程中非常重要的部分,我們可以說機器學習流程的各個步驟都是環環相扣,如果前面沒有處理好就會影響到最終模型的結果和目標,資料清理的流程圖可以用下圖表示:
資料前處理

ETL

其實在資料讀取的前面有個步驟是做ETL,這個步驟介於原始資料來源整理好的資料倉儲之間,ETL可以說是處理機器學習資料最早的步驟。

ETL是Extract、Transformation、Load的縮寫, 資料倉儲的概念是由Kimball所提出的,模型是由下往上,即從維度模型→資料倉庫→各類型資料來源,主要有三點:

  • Kimball模型的資料來源需要從OLTP系統抽取出需要的資料出來。Kimball 是以最終任務為導向,將資料按照目標拆分出不同的事實表,再透過ETL放入維度模型。
  • Kimball模型將各類型資料來源經由ETL轉化為事實表和維度表放入維度模型中,維度模型由數個事實表和維度表組成。
  • 在維度模型將事實表和維度表根據分析的類型組合後導入資料倉庫中,用於機器學習或是商業智慧決策。

ETL-1
ETL-2
ETL-3

維度模型為Kimball最先提出這概念,其最簡單的描述就是,按照事實表、維度表來建構資料倉儲,這種方法的最被人廣泛知曉的名字就是星狀綱要(Star-schema)。維度模型將資料整理到結構中,這些結構通常對應於分析者希望對資料倉儲資料使用的查詢方法。維度模型常使用的星狀綱要,在於針對各個維度作了大量的預先處理,如按照維度進行預先的統計、分類、排序等。通過這些預先處理,能夠極大的提升資料倉儲的處理能力。

星狀綱要

星狀綱要

今天先介紹到這,明天我們來深入探討資料倉儲的應用。

參考資料與圖片來源


上一篇
[Day05] 適合初學者的機器學習流程入門!
下一篇
[Day07] 你了解你在做機器學習時的資料嗎?談資料庫與資料倉儲的差別(2/6)
系列文
透視Google Machine Learning的奧秘30

尚未有邦友留言

立即登入留言