【資料科學】 - 資料預先處理

資料預先處理:資料的來源與品質管理

推薦讀物:How CDO Get Their Companies to Collect Clean Data (中文版 ) 

-  Harvard Business Review, February, 2017

進行資料分析的流程中,資料取得與資料儲存皆相當重要,於資料科學家及分析師的工作內容來說,屬於較為前段的作業流程,一般而言,又能分化出「前端資料工程師」負責資料的蒐集、儲存與相關報表的產出等,也就是傳統企業中的 IT / MIS 部門,同時也是資訊管理的範疇之一 (資料庫、資料倉儲等屬之)。

因此於分工較為細化的企業中,資料科學家及分析師較少機會能接觸到此塊,導致這部分領域知識較為薄弱;但在進行資料分析的專案中,若沒有優秀的資料前端工程師協助,分析師們便須身兼數職,扛起資料蒐集、儲存及維護資料品質的重責大任!本文將淺談資料的種類及入門知識。


data source.png



資料的來源大致上分為三類:


1.      Structured Data (結構化資料):

此類資料通常在資料蒐集的時候,已經過有邏輯性地資料整理,通常呈現給使用者「表格」的型態,比較常見的資料檔名有:xls、xlsx、csv…;而資料的來源,如果本文章最上面的圖,大致分類為公司內部與外部,內部的資料有ERP、CRM、SCM、應用程式的資料、生產線的資料、產品測試、品質管理等,而公司外部的資料有市場的資料、政府的統計資料、企業夥伴的營運資料等。



data source_other.png


2.      Semi-Structured Data(半結構化資料):

半結構化的資料,比較類似有固定的格式,但資料的格式無法直接透過程式語言或軟體進行分析,會需要一些資料處理的步驟,例如:將文字檔案處理過,進行分類或是出現頻率的統整,再藉由key in這些資料與結構化資料結合,便可進行分析;而半結構化的資料有:網路郵件、公司文件與表格、訊息的資料、搜尋的資料等。


3.      Unstructured Data(非結構化資料):

一般來說,非結構化的資料是比較難以進行分析的,因為在進行的分析過程中,往往分析師較難看到分析的過程,相較於一般資料探勘的演算法,進行非結構化資料分析的演算法,往往比較複雜且高深,也因此非結構化資料分析這一塊,將會是一部分競爭激烈卻又人數較少的領域;而非結構化的資料包括:圖像、音樂檔、影音等;那麼如何進行分析呢?舉例:透過Neural Network(類神經網絡)來進行圖像的分析,進而判斷出圖片的內容。



在資料的品質管理的部分,資料常見的問題有三種:


1.      Signals (雜訊):

            資料蒐集的過程中,可能產生偏誤或資料輸入錯誤,因此在檢視資料時,可能會有一些波動或是雜訊的存在,當資料的分析過程中,雜訊的出現,可能就必須忽略雜訊的存在,而關注於大方向的Pattern(圖型走向),但是,有時候從雜訊中,又可以發現到某些原本沒注意到的資訊,因此該如何取捨,是資料分析的一大難題。


2.      Outlier (離群值):

            在處理離群值時,離群值的判定,往往是相對具有挑戰性的,因為如果誤刪看起來似乎是離群值,但卻又是關鍵影響因素的值,那麼可能就會影響分析的準確性,因此在進行離群值的處理前,必須先對於所要進行的分析內容有充分的了解,以進行定義離群值,進而進行離群值的處理。而離群值的處理有很多種方式,有單純刪除離群值,或是刪除值後再加入平均數、眾數等處理方式。


3.      Missing Value (遺漏值):

            遺漏值通常出現於,Key-in資料的錯誤,或是蒐集資料時的遺漏,也有可能是分析過程中,誤刪的資料等;對於Missing Value 的處理方式,大致上有:直接忽略整筆資料、在遺漏值加入平均數、眾數或是中位數等,各種方式皆各有利弊,完全取決於分析的情況以及分析師的判斷。


4.      Duplicate Data (重複資料):

            對於重複資料的出現,通常為key-in資料時所發生的錯誤,處理的方式大多為直接刪去,不過還是建議在重複資料的處理之前,進行確認資料是否為重複資料,或是資料的值為誤填,否則少了一筆資料,將會影響分析的結果。



以上簡單地對資料的種類以及資料的品質管理做介紹,有了這兩個議題的了解後,將會更有利於數據分析的準確性。若有任何疑問或建議,我們相當歡迎讀者們,針對此議題來信與自由團隊做進一步探討喔!(Email: AI.Free.Team@gmail.com)