資料科學

資料科學 Linkedin Learning (1)

教學目標

初步了解如何透過 Linkedin Learning 網站有系統學習資料科學的基本概念。

重點概念

首先 Linkedin 履歷網站提供線上影片學習網站「Linkedin Learning」,其中有個主題為「Become a Data Scientist」主要是一系列有關如何成為資料科學家的教學影片課程,總共有七大類型的課程,分別為:

  1. 資料科學和分析職涯路徑和證照
  2. 資料科學基礎概念
  3. 統計基礎概念
  4. 學習資料治理
  5. 資料探勘
  6. 管理和分析資料
  7. 資料視覺化

接著資料科學的關鍵技能主要有五個,分別為:

  1. 資料探勘
  2. 機器學習
  3. 自然語言
  4. 統計分析
  5. 視覺化

再來學習資料科學的職涯角色主要有五個,分別為:

  1. 資料科學家和工程師
  2. 商業智慧架構師
  3. 機器學習科學家
  4. 商業分析專家
  5. 資料視覺化開發者

最後「Linkedin Learning」所提供教學影片皆僅有短短的幾分鐘,透過高質感的動畫由淺入深的教學,同時每個單元皆有測驗習題,並且再完成所有單元的課程與測驗習題之後就能夠取得證書,以及加入至 Linkedin 網站中的個人頁面中。若初學者想要透過手機隨時學習資料科學,則「Linkedin Learning」就非常適合,因為影片皆僅有短短的幾分鐘,具備高質感的動畫,最重要的是由淺入深的教學,讓我們更有效學習資料科學的基本概念。

總結若對資料科學有興趣的初學者,則建議先申請免費試用一個月的「Linkedin Learning」線上影片學習網站,只要花費三天的時間,總共 16 小時 20 分,就能夠大致了解資料科學的基本概念。

相關資源

資料科學 DataCamp (1)

教學目標

初步了解如何透過 DataCamp 網站有系統的學習資料科學。

重點概念

首先 DataCamp 最近年終大回饋,一年只要 90 美金非常便宜,換算一個月只要 7.5 美金,也就是 240 元台幣,平均一天不到 10 元台幣,非常值得投資學習。我們可以透過 DataCamp 學習 Python 和 R 語言,並且當上完課程就能夠獲得證書。

接著若我們想要針對完成的課程持續複習,則 DataCamp 有提供每日練習專區,讓我們持續保持 Python 或 R 程式語言的手感。此外 DataCamp 也有提供行動裝置 App, 以利我們直接透過手機或平版電腦隨時進行練習。

再來若我們想在特定技術、方法或領域成為專家,像是程式語言、機器學習、統計建模、… 等,則 DataCamp 有提供技能導向的課程規劃 (Skill Track) 讓我們選擇有興趣的技能領域進行學習,目前相關技能領域主要有十三個,分別為:

  1. Python 程式語言
  2. Python 資料匯入和清理
  3. Python 資料操作
  4. Python 機器學習
  5. R 程式語言
  6. R 資料匯入和清理
  7. R 資料操作
  8. R 統計
  9. R 資料視覺化
  10. R 時間序列
  11. R 金融基礎
  12. R 金融應用
  13. R 機器學習

最後若我們想在資料科學領域發展職涯,則 DataCamp 有提供求職導向的課程規劃 (Career Track) 讓我們選擇有興趣的職涯發展進行學習,目前相關職涯發展主要有七個,分別為:

  1. Python 程式設計師
  2. Python 資料分析師
  3. Python 資料科學家
  4. R 程式設計師
  5. R 資料分析師
  6. R 量化分析師
  7. R 資料科學家

總結我們能夠透過 DataCamp 網站有系統的學習資料科學所需要的 Python 或 R 程式語言的技能,並且在完成所有相關的特定課程之後,我們就能夠獲得證書

相關資源

資料科學 Cognitive Class (1)

教學目標

初步了解決 Cognitive Class 網站所提供一系列免費的資料科學相關課程。

重點概念

首先 Cognitive Class 網站主要提供一系列免費的資料科學相關課程,同時每上完任何一門課程皆可以獲得結業証書,並且由 IBM 頒發不同等級的徽章 (Badge),請注意徽章必須滿足多項課程的要求才能夠取得不同等級的徽章。

接著建議先取得下述資料科學相關的徽章,我個人在去年和今年陸續完成下述資料科學相關的徽章,真心推薦初學者學習,分別為:

  1. 大數據基礎概念:Big Data Foundations - Level 2
  2. Hadoop 基礎概念:Hadoop Foundations - Level 2
  3. 資料科學基礎概念:Data Science Foundations - Level 2
  4. 資料科學商業應用:Data Science for Business - Level 2

再來每個徽章皆有許多對應的課程需要完成,以上述四個個徽章為例我們將簡單說明相關的課程重點。

大數據基礎概念

所謂 Big Data Foundations - Level 2 徽章的課程重點在於了解 Big Data、Hadoop 和 Spark 的基礎概念。

Hadoop 基礎概念

所謂 Hadoop Foundations - Level 2 徽章的課程重點在於 MapReduce 和 YARN 的基礎概念、如何將資料轉移至 Hadoop 中以及如何透過 Hive 存取 Hadoop 上的資料。

資料科學基礎概念

所謂 Data Science Foundations - Level 2 徽章的課程重點在於資料科學方法論、R 語言基本介紹以及利用開放源碼工具進行資料科學動手實作。

資料科學商業應用

所謂 Data Science for Business - Level 2 徽章的課程重點在於資料隱私、數位分析和預測建模的基礎概念。

最後在上述課程內容中提到執行資料科學的方法主要有五個階段,分別為:

  1. 從問題到方法
  2. 從需求到收集
  3. 從理解到預測
  4. 從模型到評估
  5. 從部署到反饋

至於資料科學家若要執行資料科學的方法,並且協同合作,則建議使用 Jupyter Notebooks (前身為 iPython Notebooks) 免費工作平台執行 Python 或 R 的程式語言。

總結 Cognitive Class 網站提供許多資料科學相關的免費系列課程之外,更有提供深度學習課程,完成全部課程專屬的 IBM 深度學習徽章,若是上述課程太過簡單,則建議可以花些時間學習深度學習相關課程。

相關資源

資料科學 Microsoft Azure (1)

教學目標

初步了解如何透過 Microsoft Azure 雲端服務相關的資料科學之概念與應用。

重點概念

分析類別

首先在「Predictive Analytics with Microsoft Azure Machine Learning」書籍中提到 Gartner 針對所有分析分為四個類別,分別為:

  1. 描述性分析:主要回答發生了什麼事?應用於描述統計、資料分群和商業智慧。
  2. 診斷性分析:主要回答為什麼發生?應用於商業智慧、內容分析和實驗設計。
  3. 預測性分析:主要回答將來會發生什麼?應用於邏輯回歸和機器學習。
  4. 規範性分析:主要回答我們該做些什麼?應用於蒙地卡羅模擬法和線性程式優化。

其中規範性分析主要會推薦最佳的方法優化業務結果,一般來說規範性分析主要會結合預測性分析和業務規則,像是詐欺可能性超過門檻值就拒絕交易、最佳的投資組合、最佳的貨品運送路徑、…等情境應用皆是屬於規範性分析。然而從描述性分析到規定性分析,分析的複雜性逐漸增加,同時針對客戶進行分析時,我們會建立許多不同的客戶模型,像是客戶流失模型預測客戶流失的可能性、客戶區隔模型根據市場行銷目的將客戶放至不同的行為細分類別、客戶傾向模型預測客戶消費傾向對應適當的行銷方案。

接著現今熱門的聊天機器人技術應用是否也能夠應用上述四種分析方式進行實作,像是 Microsoft Azure Bot Service 機器人服務搭配辨識、知識、語言、語音和搜尋的 Microsoft Azure Cognitive Services 認知服務,應該要能夠解決企業問題,此外聊天機器人若是回答發生了什麼事就是描述式分析,若是回答為什麼發生就是診斷性分析,若是回答將來會發生什麼就是預測性分析,若是回答我們該做些什麼就是規範性分析。若不採用機器學習的技術則僅是進行描述式分析和診斷性分析,但若採用機器學習的技術則就會是進和規範性分析。
行預測性分析

分析階段

再來資料科學專案進行分析的流程主要有五個階段,分別為:

  1. 定義業務問題。
  2. 獲取和準備資料。
  3. 開發模型。
  4. 部署模型。
  5. 監視模型成效。

所謂定義業務問題的階段對於我們執行資料科學專案非常重要,因為若沒有定義正確的業務問題,就有可能會耗費數週或數月建構複雜的模型解決錯誤的問題。有關資料科學的專案應該提供正確的洞察,以利進行更明智的商業決策,因此分析理應符合商業的目標,而不應該盲目的使用,此時我們可以透過一些咨詢技術與框架協助業務關係人確定商業目標和範圍。

所謂獲取和準備資料的階段我們主要會耗費 75% 至 80% 的時間, 但卻是後續建模把原始資料較成優質資源的重要步驟,避免垃圾進垃圾出的問題發生。在此階段將會從資料庫、客戶關係管理系統、日誌文件檔案、…等來源系統取得原始資料,接著透過 ETL 流程確保正確的資料以正確的格式轉換出來。一但我們取得正確的資料時,將會為了建模進行分析和準備,包括處理遺漏值、離群值和資料轉換,通常若一個變數超過 40% 的遺漏值就不適合使用,因為會導至統計資料存在很大偏差,除非遺漏值代表關鍵資訊,若要使用則我們可以採用平均值和中間值取代遺失值,但若應用於預測模型的建置將會影響預測的結果。此外針對變數我們會透過相關性分析、主成分分析和因素分析了解變數之間的關係,以及透過特徵選擇標識出模型使用的正確變數。

分析演算法

所謂開發模型的階段我們主要會根據業務問題和資料決定適用於建模的演算法,演算法主要可以分為:

  1. 分類:主要將人事物歸類至多個類別的群組中,同時二元分類也廣泛應用於預測,常用演算法為邏輯回歸。
  2. 分群:主要將資料歸類至多個未知的群組中,同時分群經常應用於行銷活動中找出目標群眾,常用演算法為 K 平均值。
  3. 回歸:主要將預測數值輸出的回應變數,其目標是從一組測變數預測結果,常用演算法為決策樹。
  4. 模擬:主要將現實世界中不同行業的流程進行建模和優化,常用演算法為蒙地卡羅模擬法。
  5. 內容分析:主要將文字、圖片和影片分析出洞察資訊,透過統計和語言分析理解文字所代表的意義,常用演算法為文字探勘。
  6. 推薦引擎:主要將根據客戶喜好推薦產品,主要有二大演算法,分別為協同過濾和購物籃分析。

所謂部署模型的階段我們主要會將模型部署至正式環境中,以利協助客戶推動真正的商業決策,在大多數情況下會根據客戶環境以多種不同方式進行部署和整合決策管理平台,因此部署模型需要實作資料轉換和預測演算法。

所謂監視模型成效的階段我們主要會監視在正式環境驗證好的模型,以利確保如期運作,這非常重要因為任何資料驅動的模型隨著各種不同的原因其模型的準確性將會下降,因此我們要能夠透過密切監視正式環境的模型,即時發現準確率下降,此時我們將會重建模型。至於模型要多久重建一次,主要會根據不同的業務領域會有不同的頻率,在穩定業務環境通常每年一次,而在動動業務環境通常每月、每周或每日一次。

機器學習服務

最後 Microsoft Azure Machine Learning Service 機器學習服務主要是讓資料科學家和開發者能夠使用預測分析將資料轉換成洞察,同時透過 Microsoft Mahine Learning Studio 工具能夠讓資料科學家和開發者快速構建、測試、開發和應用最新的機器學習演算法之預測模型,其中主要有五個步驟,分別為:

  1. 導入來源資料。
  2. 資料預先處理。
  3. 特徵工程和資料標籤。
  4. 訓練、評分和評估模型。
  5. 比較和選擇模型。
  6. 儲存訓練之後的模型。
  7. 建立預測實驗。
  8. 部署發佈 Web 服務。

總結 Microsoft Azure 提供了機器人服務、認知服務和機器學習服務,將有助於資料科學家與開發者能夠使用預測分析將資料轉換成洞察,同時以機器人服務搭配認知服務解決我們的日常生活中各式各樣的問題,試想目前邁手一支手機不離身,在未來幾年內每個人只需拿起手機對著機器人服務說出任何問題,就能夠透過認知服務識別問題代表的意義,再藉由機器學習服務提供客製最佳化的解決方案供我們進行參考,以利採取行動。

相關資源

資料科學 Data Scientist Associate (1)

教學目標

初步了解如何準備數據科學與大數據分析相關的國際證照。

重點概念

最近看了一本 2015 年出版的數據科學與大數據分析書籍,其內容主要有十二個章節,分別為:

  1. 大數據分析介紹。
  2. 資料分析生命週期。
  3. 使用 R 進行基本資料分析。
  4. 進階分析理論與方法 - 分群。
  5. 進階分析理論與方法 - 關聯規則。
  6. 進階分析理論與方法 - 回歸。
  7. 進階分析理論與方法 - 分類。
  8. 進階分析理論與方法 - 時間序列分析。
  9. 進階分析理論與方法 - 文字分析。
  10. 進階分析技術與工具 - 大數據分析。
  11. 進階分析技術與工具 - 資料庫分析。
  12. 結尾與整合應用。

首先大數據是具有大規模、分散式、多樣性和時效性的資料,這些特點決定了必須採用新的技術架構和方法才能有效的探勘新資源的商業價值。一般來說,在企業中會面臨許多業務問題可以透過資料驅動的分析能力進行解決,請參考下表。

業務問題 實務案例
優化業務操作 銷售、報價、利潤、…
識別業務風險 客戶流失、詐欺、違約、…
預測業務機會 增值銷售、追加銷售、找出最佳潛在客戶、…
遵守法律或法規要求 反洗錢、公平信貸、巴塞爾協議、…

接著資料分析生命週期主要定義了從專案開始至結束完整流程的最佳實務,以往會參考 Scientific Method、CRISP-DM、DELTA、AIE、MAD、… 等方法,然而在本書中則主要提出六個階段的資料分析生命週期,分別為:

  1. 發現問題。
  2. 資料準備。
  3. 規劃模型。
  4. 建立模型。
  5. 溝通結果。
  6. 實際應用。

其中發現問題同時適當的設定問題將會是專案成功的關鍵,所謂設定主要為敘述導解決問題的過程,最好是記下問題的述敘,然後與關鍵利原關係者進行溝通,此外理解問題的領域非常重要,資料科學家最好熟悉於運用各種業務和概念問題的理論、方法、技術和工具,當我們在專案早期明確定義問題將有助於團隊選擇後續階段使用的分析方法。

再來模型設計與建構階段常用的工具,分別為:

  1. SAS Enterprise Miner:主要允許使用者在大量企業資料上執行預測性和述性模型,同時也能夠與其它大型資料儲存進行連線,因此適合企業級運算和分析。
  2. R:主要提供完整設計和建模能力,透過 ODBC 與資料庫進行連線互動,同時透過套件針對大數據進行統計測試和分析。
  3. Python:主要是一種程式語言,提供機器學習和分析套件,像是scikit-learn、numby、pandas、…等套件。

最後隨著資料量不斷增加的情況下,有更多的商業工具可以用於創建清晰有力的可視化圖表,透過可視化圖表將能夠允許我們以更具吸引力的方式探索資料和評估模型,常見的可視化商業工具,主要有:

  1. Tableau。
  2. Microsoft Power BI。
  3. Qlik View。
  4. SAS Visual Analytics。
  5. IBM Cognos Analytics。

總結這本書十二章節將有助於考取 Data Science Associate (EMCDSA) 資料科學國際證照,考試主題對應章節內容如下表所示:

考試主題 章節內容
大數據分析和資料科學角色 大數據分析介紹
資料分析生命週期 資料分析生命週期
初始資料分析 使用 R 進行基本資料分析
進階大數據分析-理論和方法 進階分析理論與方法 - 分群、關聯規則、回歸和分類
進階大數據分析-技術和工具 進階分析技術與工具 - 大數據分析和資料庫分析
溝通和進行分析專案與資料視覺化技術 結尾與整合應用

相關資源