資料工程專案運作總覽

Chao-Wei Peng
IT Stuff
Published in
Oct 22, 2020
資料中心

近幾年,資料科學的工程應用越來越被重視:從基本的資料整理、視覺化,到大數據分析、機器學習領域等等都是可能的應用呈現。各家企業無不使出渾身解數,希望透過洞察資料取得市場上的競爭優勢。

本文將說明資料工程專案中的每一個工作階段,希望對於落實資料科學應用有興趣的朋友,有些幫助。

一、界定問題範圍

我們無法在一個專案中,解決所有事情。所以,在初期最重要的工作,就是將想要解決的問題清楚的定義出來!

根據公司的最終目標,找出關鍵問題,做出假設,並建立以資料為核心的研究策略來驗證假設,回答問題。大略勾勒出整套流程的運作方式、所需投入的資源和可能的有效產出,是我們的標準起手式。

例如:經營電商的公司,試圖預測每個客戶的購買偏好,以便將相關的優惠訊息精準的推薦出去。

在這案例中,我們首先需要收集各種不同面向的資料:包括客戶的年齡、性別、在網站上的行為模式、以及歷史購買紀錄等等。再進一步利用分群、分類的機器學習方法,標記每個客戶的購買偏好,進而提升推薦系統的精準度,滿足最終的商業需求。

找出能滿足企業需求的專案問題範圍

二、收集、清理資料

在資料專案中,經常存在兩種角色:其一是資料工程師 (Data Engineer),另一個則是資料科學家 (Data Scientist)。

對於不是軟體工程背景的人來說,非常容易低估收集、清理資料這個程序的重要性和所需的時間,也就是資料工程師的專業領域。

多數的原始資料是零散的,有多種的來源,以及不一致的資料格式。這些原生的資料在適當的處理之前,無法被資料科學家有效的運用。

因此,資料工程師必須負責建立資料處理通道 (Data Pipeline),這個通道將收集資料、清理資料、以及建立資料模型等工作自動化串接起來,最終能輸出符合資料科學家進一步分析需求的乾淨數據。

資料處理通道 (Data Pipeline)

三、探索、分析資料

機器學習的軟體工程方法,固然是近幾年最火紅的技巧。但在探索、分析資料的過程中,傳統的統計學方法,有時候更能有效快速的達成目標。

無論是當代的機器學習、還是傳統的統計方法,並沒有客觀上的優劣之分。是由對於這些領域都有所涉獵的資料科學家,來負責判斷,哪一種分析方法最適合用來回答企業真正在意的關鍵問題。

例如:在影像辨識或自然語言處理上,顯然透過包括 CNN、RNN 等類神經網路強化模型,能達到比較高的準確率。反之,若是想要了解影響客戶購買商品意願的因素,使用傳統的迴歸分析、多變量分析、因素分析等統計方法很可能更為直接。

基本類神經網路模型示意 (ANN)

四、溝通分析結果

在資料的世界中沉浸了一陣子之後,資料科學家們經常不知不覺的就忘記了初衷:要找到對企業的競爭力真正有價值的資訊!這也是數據部門的主管必須持續提醒和溝通的重點之一。

然而,儘管找到了有價值的資訊,卻很可能無法讓其他領域的人信服,老闆或是同儕都可能會質疑數據分析的方法和可靠度。

因此,除了在專案中,確實秉持著科學的精神來執行之外,還需要資料科學家不厭其煩的和其他領域的人互動、溝通。最終,才能讓專案成果真正的被企業或組織所接受並採取行動。

資料科學家的核心能力

關於資料工程專案的整體規劃方式和思考架構,就先在這裡告一段落。希望簡單的一段圖文,能多少幫助台灣的年輕人了解職場的需求和運作方式,在有價值的方向上建立專業,找到面對未來的自信和勇氣。

--

--