在 Google、Amazon、Facebook、Uber、Airbnb等公司成功的背后,有這樣一批人:他們可以將大量的數據變為有價值的金礦,例如,搜索結果、定向廣告、準確的商品推薦、可能認識的好友列表等。沒錯,他們就是被譽為「今后10年IT行業最重要的人才」—— Data Scientist(數據科學家)。
現在的互聯網行業,越來越多的企業對數據科學家求賢若渴。
雖然數據科學家的需求一直在快速增長,但事實是在業內還沒有對數據科學家的準確定義。有人開玩笑說,「數據科學家就是住在硅谷的數據分析師」,甚至有人畫了這樣的漫畫:
沒錯,找到一位優秀的數據科學家和找到一個理解數據科學家是做什么的人一樣難。
要理解數據科學家是做什么,首先要理解人盡皆知卻總被誤讀的大數據:大數據不是大量的數據,而是復雜的數據。
這些解決復雜數據帶來的問題的人,就是數據科學家。
那么,數據科學家在工作中是怎樣解決問題的呢?
分享兩個共享經濟的典范:Airbnb和Uber——在運用大數據方面的經驗。
1、Airbnb
在Airbnb,工程師要解決這樣一個問題:如何讓用戶了解一個自己從來沒去過的地方?如何知道哪個地方最適合自己的旅行?
Airbnb擁有海量的獨有數據,包括旅游地、用戶評論、房源描述、社區信息等,Airbnb還有一支隊伍去各地和當地人交流,搜集所有的相關歷史數據。Airbnb的數據科學家是這樣運用數據的:
(Airbnb accommodations (red) and traditional accommodations (blue) in San Francisco)
當用戶在搜尋一個住宿的地方時,Airbnb的「location relevance model」會通過Airbnb社區告訴未來的客人哪里是更好的住宿地。
當用戶在尋找想體驗的新地方時,「Airbnb Neighborhoods」會將當地的內容編輯親手整理的必備資料和專業的照片呈獻給用戶。
Airbnb的「discovery team」通過自然語言處理和機器學習來為用戶搜索關鍵詞提供更準確的推薦。
Airbnb甚至造了一個叫做「AT-AT」的復雜工具,幫助用戶更深入地了解某個地點,包括地理信息無法描述的文化或宗教上的區分。
2、Uber
縮短開著空車去接下一位乘客的時間和乘客等待的時間是Uber的車主和乘客的共同需求,他們希望這些時間越短越好。為此,Uber的數據科學家建立了「Location-based demand models」。
(Uber heatmap in San Francisco)
每天實時更新的熱點地圖(Heatmaps)可以有效幫助車主縮短空載時間,同時幫乘客減少等待時長。下一步,這張圖甚至可以預測,這樣車主會知道提前去哪里等待可以載到更多的乘客。
數據科學家的由來和定義
雖然數據科學三十年前就誕生了,但是數據科學家卻是幾年前剛出現的一個新詞。在《數據之美》一書中,我們可以看到Facebook的數據科學家的起源:
在Facebook,我們發現傳統的頭銜如商業分析師、統計學家、工程師和研究科學家都不能確切地定義我們團隊的角色。該角色的工作是變化多樣的:在任意給定的一天,團隊的一個成員可以用Python實現一個多階段的處理管道流、設計假設檢驗、用工具R在數據樣本上執行回歸測試、在Hadoop上為數據密集型產品或服務設計和實現算法,或者把我們分析的結果以清晰簡潔的方式展示給企業的其他成員。為了掌握完成這多方面任務需要的技術,我們創造了「數據科學家」這種角色。
所以,用一句話總結「數據科學家」的定義:
運用統計分析、機器學習、分布式處理等技術,從大量數據中提取出對業務有意義的信息,以易懂的形式傳達給決策者,并創造出新的數據運用服務的人才。
數據科學家有哪幾種類別?
為了更好地闡釋數據科學家,我們將它分為三類:
理論數據科學家致力于數據科學的理論研究,為其他的數據科學家創造框架和工具。本質上是將統計數據、數據存儲和計算機科學在理論層面應用于大數據的學者。
應用數據科學家對于如何運用大數據有更好的理解。科學需要嚴謹,我認為數據應用植根于學術嚴謹,但是在應用層面工作。應用數據科學家的工作是先進行架設,再用大數據進行驗證。每個人都會受惠于他們的研究發現和工具。
行業數據科學家用應用數據科學地解決某個具體的市場問題、行業、生意,實現利益最大化的單一目的。行業數據科學家得擅長溝通,能夠讓他們的發現應用于商業。將工商、經濟和會計方面的經驗應用在商業領域是他的價值所在。與商業分析師和商業顧問的角色有點相似。
要成為一名數據科學家,需要掌握哪些核心技能?
作為一名數據科學家,一般需要編程和數據庫、數學&統計、交流和可視化、領導力和軟技能:四個方面的技能。
1、編程和數據庫
一般來說,數據科學家大多要求具備編程、計算機科學相關的專業背景,掌握對處理大數據所必需的Hadoop、Mahout等大規模并行處理技術與機器學習相關的技能。一般能利用python熟練的獲取數據,整理數據,并會使用matplotlib展現數據。
2、數學、統計和數據挖掘
除了數學、統計方面的素養之外,還需要具備使用SPSS、SAS等主流統計分析軟件的技能。其中,面向統計分析的開源編程語言及其運行環境「R」最近備受矚目。R的強項不僅在于其包含了豐富的統計分析庫,而且具備將結果進行可視化的高品質圖表生成功能,并可以通過簡單的命令來運行。此外,它還具備稱為CRAN(The Comprehensive R Archive Network)的包擴展機制,通過導入擴展包就可以使用標準狀態下所不支持的函數和數據集。
3、數據可視化
信息的質量很大程度上依賴于其表達方式。對數字羅列所組成的數據中所包含的意義進行分析,開發Web原型,使用外部API將圖表、地圖、Dashboard等其他服務統一起來,從而使分析結果可視化,這是對于數據科學家來說十分重要的技能之一。
4、領導力和軟技能
數據科學家不僅要具有黑客的頭腦,對數據有好奇心,還要對商業有熱情,是有影響力、有創造力,能解決問題的人。
總之,數據科學家之所以被稱為「科學家」,而區別于「數據工程師」和「數據分析師」,其根本在于對數據有極端敏銳的直覺和本質的認知,對問題和業務有深入的洞察和理解,因而能夠解決復雜數據帶來的問題。