Loading...

在與資料密不可分的時代,如何善用資料來解決問題,培養數據思維、進而建立數據分析的能力?

ALPHA Camp 為加強內部團隊的數據力舉辦了內訓工作坊,由校長 Bernard 與資料工程師維元,帶領團隊透過一系列案例實作,認識資料分析流程,並針對其中兩大重要環節「定義問題」與「提出假設」進行深度討論,以下為工作坊內容精華紀錄。

資料分析怎麼做?Python 網路爬蟲的學習地圖與策略

數據思維是什麼?利用資料解決問題的六大流程 

數據思維是利用資料解決問題的流程,分為六個環節:從「定義問題」、「整理數據」、「分析數據」、「提出假設」、「模型驗證」到「溝通結果」。

資料工程師維元指出,資料科學與程式開發不同,資料科學、資料分析是一個循序迭代的過程,需要無止盡的做實驗跟研究。

維元以自身為例,說明資料工程師收到業務需求後的工作流程:

  1. 定義問題
  • 確認使用者的需求跟問題是什麼?思考需求能否轉成「資料可回答的問題」?
  • 檢查並回答該情境需要「哪些資料」及判斷「資料可用性」;
  • 試著把「資料問題」近一步定義出「可量化的指標」。
  1. 提出假設:從「資料問題」提出需要被驗證的「假設」。
  2. 整理數據、分析數據:最後開始拉出資料、整理資料,利用資料驗證「假設」。

在本次工作坊,維元與校長 Bernard 將帶大家理解資料分析流程中,兩個常被忽視的重要環節:「定義問題」與「提出假設」。

資料科學五大 Q&A:如何成為資料科學家?資料科學產業的未來?

建立數據思維最重要的一步:定義問題

為什麼懂得如何「定義問題」很重要?

Bernard 與一些企業訪談後發現,企業在應用數據時最大的卡關點就是「定義問題」。在整個資料分析流程中,Tableau、Excel、Python 這些工具應用教學相對容易,但定義問題需要從思考層面著手,是最難傳授的部分。

「當問題定義錯了,後面的步驟就全錯了。」Bernard 表示,因此在定義問題階段,值得花時間思考到底要解決什麼問題。

1. 定義問題的目標

什麼是定義問題?更嚴謹的說法是,定義一個「資料可解決的問題」,需滿足以下兩個條件:

  • 問題中有「可量化的指標」;
  • 量化指標可透過驗證來證明能重複實現,即 「可驗證的判斷」。

當資料工程師接到一個業務需求時,首先要定義問題,將業務需求轉換成一個資料可解答的問題,並試圖用資料回答問題。

2. 定義問題的方法


正確的定義問題步驟應為:

  1. 定義問題時,首先要釐清背後的目的:目的決定該解決的問題。不要直接想解決方法,而是先釐清要解決的問題是什麼;
  2. 針對問題進行前置研究,並拆解下一層的問題:透過前置研究,能掌握整個問題的脈絡及背景,並更精準拆解出下一層的問題;
  3. 將抽象的問題轉換為可量化的指標:透過量化指標讓問題可以被資料驗證重現。

以上圖為例,針對「怎麼減 10 公斤?」這個問題,再往下拆解減重的方式有:「怎麼多運動?」、「怎麼控制飲食?」,而透過對減重議題的前置研究、查找相關資料,可能會發現到「怎麼讓自己每天睡 8 小時」也會影響到減重成效。往下不斷拆解問題後,最後則是將問題轉換為具體可量化的指標。

學程式能做什麼?資料分析師與 PM 的經驗分享

3. 定義問題的案例

下表為 ALPHA Camp 團隊透過分組練習,其中一組經討論後分享的定義問題案例。

問題關注點:我們推出的解決方案(課程)成效如何?

問題 量化指標 指標定義(公式) 可解決的資料問題
[web dev] 學生是否持續學習,成功培養網頁開發技能? - 學生 mastery rate(從學期一到學期三)
- 課程轉換率
- conversion rate:有多少人繼續學習,轉換到下一階段的課程
- mastery rate:是否完成課程中所有的指標作業
- 維持學生持續學習的行為
- 提升學生完成指標作業數
[web dev] 學期三學生是否有建立求職所需的能力,並順利完成轉職的目標? 指標:學生求職成功率多少?
- 開始有求職行為(投履歷)3 個月內是否有至少拿到 1 個目標職缺 offer
- 計算方式:(有回報拿到 offer 的學生)/(有回報&開始求職行為的學生)
- 提升學生求職成功率
[leetcode] 學生是否成功建立解題的習慣? - 學生一週投入解題的頻率有多少?
- 學生同樣難度的解題數量有多少?
- 解題次數/週
- 本週解題數量 - 上週解題數量
- 維持學生每週投入解題的次數
- 維持學生解新題目的數量
除了轉職,學生能否利用在 AC 所學的工具,解決自己想解決的問題? - 學生作品集(小品)
- 集體創作量
- 學習心得分享篇數即按讚及轉發數
- 學生轉介紹數
- 學生再購率
- 在 7 天內定義想法
- 在 1 個月內產出雛形
- 介紹獎金領取及詢問度
- 學生介紹
- 如果 AC 有課程,學生有需求,AC 是 No.1
- 可以說出問題,並知道如何利用程式及工具,或者找資源
- 知道什麼是數位化工具,沒有心理障礙

說明:小組針對問題關注點「我們推出的解決方案(課程)成效如何?」,往下拆分成四個不同面向的問題,並將問題轉換為量化指標。

以「學生是否持續學習,成功培養網頁開發技能」問題為例,衡量這個問題的量化指標有:「學生 mastery rate」及「課程轉換率」,接著說明各指標的定義與計算方式,最後則是根據量化指標提出改進方式來嘗試解決資料問題。

資料分析不能不懂的統計學:從情境開始認識統計

獲得可用數據的下一步:提出假設

當需求方提出問題,資料團隊獲取可用數據後,下一步該往哪個方向前進?這時候就需要「提出假設」,對資料進行判斷並加以驗證。

1. 提出假設的目標

什麼是假設?假設是對於某個問題答案的未經證實的猜測。

為什麼要提出假設?維元說明,不論是我們所使用的資料、或每個人對於資料的解讀,其實都是主觀的。為了讓主觀的「觀點」更接近「事實」,會需要從資料問題中提出假設,並使用資料來驗證假設,以支撐自己的觀點。

2. 提出假設的方法

如何提出一個好的假設?

一個好的假設應該具有「可被驗證的變數關係」,如: A 變數如何影響/導致/關聯 B 變數,同時應滿足三個條件:

  1. 變數間有關聯
  2. 變數間的關聯有方向
  3. 變數間的關聯是可以被重現的

維元舉例,「咖啡喝的越多,人越容易頭痛」、「 晴天的交通事故率小於陰天的交通事故率」,這些都屬於好的假設。

Bernard 進一步補充說明,「好」的假設不等於「正確」的假設;好的假設不代表它的答案是正確的,而是該假設可以被驗證,假設有可能成立也有可能不成立。

3. 提出假設的案例

下表為維元分享的提出假設案例。

資料問題:學習狀況跟完課率,會受到學習過程中的心情影響嗎?

假設 驗證 資料需求 資料定義/來源
觀察到負面情緒會有比較高的機會放棄,或成果不彰 負面情緒跟成果的關聯 學生情緒 ORID 中出現負面字的比例?
學習成果 完課率
情緒量跟參與度的關聯 學生情緒 ORID 中情緒用字的比例?
參與度 GA 中訪問 LH 的 Session 數

說明:「學習狀況跟完課率,會受到學習過程中的心情影響嗎?」是資料問題,接著則是需要運用資料來回答,並提出假設「當學生負面情緒比較高時,會有比較高的機會放棄或成果不彰」。再下一步則是驗證假設,驗證「情緒跟成果的關聯:是否學生情緒越正向,成果越好?」,再分別針對學生情緒、學習成果、參與度找出可衡量的量化指標。

最後,若假設成立,證明「情緒」與「成果」有關聯,則下一步可能是找出有哪些學生需要關心、負面情緒能不能再做分類;若假設不成立,則需要去檢驗是否有內部資源投入在錯誤方向,避免浪費人力與時間成本。

R、Python 與 Julia 三大程式語言怎麼選?來自資料科學家的觀點

結語

藉由維元與 Bernard 的分享,帶大家深入理解何謂數據思維。面對越來越複雜多元的資料,重要的是擁有一套清楚的邏輯思考跟習慣,首先要釐清問題、思考背後目的,有了正確方向並取得可用數據後,提出「對分析有意義的假設」並加以驗證,才能將想法落地。無論是否要成為資料科學家/工程師,這都是大數據時代不可或缺的思考方式。