閱讀400 返回首頁    go 技術社區[雲棲]


一文總覽數據科學全景:定律、算法、問題類型...

2016年,英國數學家,樂購俱樂部構架師Clive Humbly提出“數據是新能源”這樣一個說法。他說:


“數據是新能源。它擁有極高的價值,卻需要經過提煉才能使用。就像石油一樣,必須被轉化為氣體、塑料或者化學品等,才能發揮出其實際的作用; 因此,數據隻有被分解和分析之後才具備價值。”


iPhone革命,移動經濟的增長,為大數據技術的發展創造了一個完美的契機。在2012年,HBR(Harvard Bussiness Review)發表過一篇文章,將數據科學家推到了風口浪尖上。這篇名為《數據科學家: 21世紀最性感的職業》(Data Scientist: The Sexiest Job of the 21st Centry)  ( https://hbr.org/2012/10/data-scientist-the-sexiest-job-of-the-21st-century)  給這群“新人類”打上了標簽: 一個數據黑客、分析師、傳播者和信譽顧問的混合體。


每個公司目前都在嚐試變得更為“數據驅動(data-driven)”。機器學習技術在其中提供了很大的幫助。這其中很多的東西非常專業,很難理解。因此,本係列文章將會簡化數據科學。作者嚐試參照斯坦福大學的課程以及教科書統計學習導論(Introduction to Statistical Learning) (https://www-bcf.usc.edu /~gareth/ISL/ ),將數據科學以一種簡單容易理解的形式呈現給讀者。


數據科學是一個多學科領域,主要包括:


  • 商業知識 (Business Knowledge)

  • 統計學習又名機器學習 (Statistical Learning aka Machine Learning)

  • 電腦編程 (Computer Programming)


該係列的重點是簡化數據科學中機器學習方麵的知識。本文將首先介紹數據科學中的基本定律,常用算法以及問題類型。

 
核心定律


640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

(圖片轉載自 (Menon, 2017))
 

數據是一項戰略資源:這一概念是一種組織思維。問題是:“我們是否正使用我們所收集和存儲的全部數據信息?我們能否從中挖掘有意義的資源?”我非常確定,這些問題的答案都是“否”。以雲端為基礎的公司都依賴數據驅動。它們勢必將數據視為戰略性資源。但這一觀念並非適用於大多數機構。

 

知識攝取的係統化流程:挖掘數據需要一套有條理的流程,這其中包括明確的步驟,以及每一步清晰可實現的目標。就好比跨行業數據挖掘標準流程(CRISP-DM) (https://en.wikipedia.org/ wiki/ Cross_Industry_Standard_Process_for_Data_Mining)

 

與數據共眠:相關機構應當投資熱衷於數據的專業人士。將數據轉化為資源的不是煉金術。這個世界也沒有萬能的煉金術士。他們需要的是懂得數據價值,能識別和創造數據資源的信仰者。以及可以將數據,科技以及金融這些領域鏈接在一起的專業人才。

 

接受不確定性:數據科學不是一顆銀色子彈(特效武器)。它也不是水晶球,可以用來預言未來。像報告和關鍵績效指標一樣,它是一個決策推動者。數據科學是一個工具,而不是一種達到目的的手段。它不是絕對的,而是屬於概率的範疇。管理層和決策層需要接受這個事實。他們需要將被量化的不確定性加入到決策過程中。隻有當相關機構采取實驗的文化,並且能夠從失敗中迅速學習,才能立足於不確定性之上成長。

 

BAB定律(Business-Analytics-Business):我認為這是最重要的一條定律。多數數據科學的文獻都將重點放在模型和算法上。方程式本身缺乏商業背景。BAB則是突出其中的商業部分。把算法置於商業背景中是至關重要的。定義商業問題,用分析來求解,最後將答案集成到商業流程中。也就是所謂的BAB:商業-分析-商業,這麼一個過程。
 

流程


640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

(圖片轉載自 (Menon, 2017))


參考第二定律,這一段將會把重點放在介紹數據科學中的流程部分。以下是一個典型數據科學項目中的各個階段:


1. 定義商業問題 (Define Business Problem)


愛因斯坦曾說:“凡事保留其本質,力求最簡”。這個引用可以說是定義一個商業問題的關鍵。問題的描述需要精確的加工,必須明確定義出所需達成的目標。根據我的經驗,業務團隊過於忙於手頭的任務,卻忽略了需要應對的挑戰。頭腦風暴會議,研討會以及訪談都可以幫助發現這些挑戰,並且製定假設。舉個例子,我們假設一家電信公司由於客戶群的減少導致同比收入下降。在這種情況下,商業問題可以定義為:


  • 公司需要通過開發新客戶群,同時減少客戶流失,來擴大客戶基礎。


2. 分配機器學習任務 (Decompose To Machine Learning Tasks)


定義好的商業問題需要被分配為各項機器學習任務。就以上例子來說,如果公司需要通過開發新市場,減少客戶流失,來擴大客戶基礎,那麼我們如何將其分解為機器學習問題?以下是一個分解方案:


  • 減少客戶流失x%。

  • 確定目標營銷的新客戶群。


3. 數據準備工作 (Data Preparation)


製定了商業問題,並且將其分解為機器學習任務之後,我們需要深入了解其相關數據,以便製定適當的分析策略。需要注意數據的來源,數據的質量,以及數據的偏差等主要事項。


4. 探索性數據分析(Exploratory Data Analysis)


就像宇航員探索宇宙一樣,一位數據科學家需要探索數據模式中的未知,深入了解其隱藏的特征,並記錄新的發現。探索性數據分析(EDA)是一項扣人心弦的任務。我們能夠更好地了解數據,調查其細微的差別,發掘隱藏的模式,開發新的特征,並且製定建模策略。


5. 建模 (Modelling)


在探索性數據分析之後,我們將進行建模。在這個階段,我們針對具體的機器學習問題,選擇最適用的算法,比如常見的回歸(Regression)、決策樹(Decision Tree)、隨機森林(Random Forest)等算法。


6. 部署和評估 (Deployment and Evaluation)


最終,我們部署好建立的模型,並對它們進行不斷監測,觀察他們在現實中的表現,並進行有針對性的校準。


通常,建模和部署部分隻占全部工作的20%,剩餘的 80%的工作是對數據的研究以及深度的了解。

 

機器學習的問題類型


640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

(圖片轉載自 (Menon, 2017))


簡單來說,機器學習被分為兩大類:監督學習和無監督學習。

 

1. 監督學習(Supervised Learning)


監督學習任務擁有一個事先定義好的目標。建模者有針對性地觀察並且影響機器學習模型的生成的過程,以實現其特定的目標。監督學習可以進一步分為兩類:


  • 回歸 (Regression):


回歸模型在機器學習任務中非常常見,用於估計和預測一個數值變量。舉兩個例子:

  • 下個季度潛在收入的預估是多少?

  • 明年可以結交多少筆交易?


  • 分類 (Classification):


顧名思義,分類模型把目標分開並歸整為幾個特定的類型。它適用於所有類型的應用。舉幾個典型的例子:

  • 使用分類模型過濾垃圾郵件,將收到的電子郵件基於某些特征分類為垃圾郵件和可接收郵件。

  • 流失預測是分類模型的另一個重要應用。電話公司普遍使用流失模型(Churn Model)來預測用戶是否會流失(即停止使用服務)。

 

2. 無監督學習(Unsupervised Learning)


無監督學習沒有指定的目標,因此產生的結果有時候會難以解釋。無監督學習任務有很多種類型。最常見的幾個是:


聚類(Clustering):通過相似度把目標歸類在一起。比如客戶細分就是使用聚類算法。


關聯(Association):關聯算法用來尋找相互匹配的產品。購物籃分析(Market Basket Analysis)就是使用關聯算法將產品捆綁銷售。


鏈路預測(Link Prediction):鏈路預測用於查找數據項之間的連接。比如 Facebook,Amazon和Netflix這些網站大規模地使用鏈接預測算法來為我們推薦相關朋友,熱衷商品和的電影。


數據簡化(Data Reduction):數據簡化方法用於減少數據集中特征的數量。它將大量屬性的大型數據集用較少的屬性呈現出來。

 

機器學習任務到模型到算法


一旦將業務問題分解為機器學習任務,一個或多個算法可以解決給定的機器學習任務。通常,一個模型是使用多個算法進行訓練的。選擇提供最佳結果的算法或算法集合進行部署。


Microsoft Azure Machine Learning有30多種預先構建的算法,可用於訓練機器學習模型。


640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

(圖片轉載自 (Menon, 2017))


Azure Machine Learning cheat-sheet可以幫助你探索這些算法。
 

結論


數據科學是一個非常廣泛的領域。它扣人心弦,是一門科學,亦是一門藝術。在這篇文章中,我們僅僅探索了冰山的一角。如果在不懂得其原理“why”的情況下去探索它的方法“how”是沒有意義的。在隨後的文章中,我們將繼續探討機器學習的方法“how”。


原文發布時間為:2017-08-16 

本文作者:Pradeep Menon

最後更新:2017-10-11 11:34:40

  上一篇:go  雲棲大會第二天高性能計算,打call送禮
  下一篇:go  【雲棲大會】阿裏巴巴成立“達摩院” 引入頂尖科學家3年研發投入將超千億