在2016年的美國,數據科學家已經被冠以“最佳工作”的頭銜,數據科學家的定義以及成為一名出色數據科學家所需的技能一直處于不斷的變化之中。科技和商業需求方面的進步驅使著數據科學家隨著行業的不斷變化而不停的進化。在這片文章中,我們將會近距離的看一看在2016年當中,作為一名數據科學家應該扮演何種角色。
Dave Holtz寫道,小小的“數據科學家”這樣的崗位頭銜,經常被充當一個空白頭銜來用,其作用就是說明數據科學家這樣的崗位所涉及到一系列工作,其實與其他工作有著天壤之別的差異。他把其中的原因歸咎于數據科學領域仍然處于嬰兒期并且人們對數據科學家的定義也并不是如此明確。采用了這樣一個屬于跨學科領域的包羅萬象的頭銜,數據科學家的工作就是從海量的數據當中以各種形式提取出人們所需要的知識或者是對于事物的洞察力。
大數據時代的年齡取決于我們自身,而且此刻它就停留在我們面前。現在我們收集到的數據量比以往任何時期都要龐大,而且伴隨著時間的流逝,從數據中提取有價值的信息將會變得越來越錯綜復雜,并且需要更高超的技術。大數據經濟背后的邏輯正在以難以想象和預測的方式影響著我們每個人的生活。我們日常生活中造就的每一個電子信息化的行為所產生的數據,最后都將會被用于數據統計,我們也可以借此洞察產業的發展。
作為消費者經濟的參與者,當我們與任何一個網站或者電子化服務有所接觸的時候,我們每個人都會被當成 數據挖掘 的對象,而且數據科學家就在那里使用計算機科學、統計分析學以及錯綜復雜的商業知識相結合的方式對我們提供的數據進行收集、清洗、分析以及預測。
下面這張圖為我們展示了一名數據科學家所需要具備的技能組合。我們可以發現,和典型的大數據開發者或者商業分析專員相比,他的職責是多種技能和經驗的有效組合。
圖1:數據科學家的技能組合
是什么讓數據科學家有別于他人,是看起來比較類似的數據工作嗎?Rivera和Haverson提示我們說,以前的數據專家總是把工作的精力集中到數據的演示和遷移,而數據科學家更趨向于從數學角度出發,主要精力在于從過去和目前的數據中鑒別出各種模式,并從中得到啟發。如果從字面意思進行理解的話,“科學”表示通過系統性的學習而得到的知識;“數據”則意味著定性或定量變量的信息庫——因此,從字面上看,一名數據科學家可以被定義為一個對組織和信息的屬性進行系統性研究的人士。
盡管統計學家和其他研究數據分析的人士扮演著至關重要的角色,但是數據科學家的角色,就像Anjul Bhambari先生描述的那樣,一部分是分析師,一部分是藝術家,并且必定會為傳統數據的分析和使用方式帶來全新的變革。
社會對數據科學家的需求與日俱增商務人際網絡LinkedIn的成功,就是一個數據科學家通過數據為商業智能帶去好處和利益的鮮活案例。當一家企業主要依靠他擁有的三億八千萬用戶之間互聯的數據轉換來盈利時,LinkedIn正在利用這些專業人才的好奇心來探尋大數據當中的新大陸。
LinkedIn和其他類似Facebook以及Google這樣的知識產業正在利用數據科學家的角色將體量龐大且抽象的數據進行結構化建設,從數據值和變量之間的系統性關聯當中界定其自身所蘊含的機密。
最近,由KPMG發起的一份調查報告顯示,99%的被調查對象認為大數據分析對他們下一年的戰略規劃有著舉足輕重的作用。等到了2020年,企業發展過程中每天產生的數據量將會超過240艾字節,到了那個時候,企業會發現,對于可以從龐大數據庫中提取有價值信息的數據科學家的需求,將會比以前更重要。然而,一篇由Travis Wright撰寫的文章說,對于數據科學家的需求將會遠遠超過目前社會能夠提供的水平,并且單單在美國的那些公司就需要雇傭14萬至19萬名數據科學家,前提是這些公司會繼續跟隨數據經濟帶來的效益。
但是出乎我們意料的是,數據科學家的平均工資卻存在著很多的矛盾,然而,我們清楚的是,該職位的平均工資確實會隨著對數據科學家需求的增長迎來更高的工資待遇。如果雇主期待候選人可以擁有數據挖掘算法經驗;能夠完全使用像R和Python這樣的語言開展工作;在大型數據庫(類似SQL)方面有工作經驗;可以執行Java應用;可以執行NoSQL數據庫——并且候選人還可以和非專業技術人員交流以上所有工作方面的事宜,那么想得到約為12萬美金的年薪看起來并非如此遙遠的事情。
數據科學家的作用盡管一名數據科學家的職能超越很多傳統的數據分析師的職務,其中也有很多顯而易見的區別。
一名數據分析師或建筑師能夠從龐大的數據庫當中提取信息。然而他們卻被SQL查詢和用于切割數據庫的軟件分析包所限制。通過使用機器學習的高級知識和編程/工程,數據科學家可以按照他們自己的意愿操作數據從而揭露出更深層次的發現。他們卻不會因這些程序而受到約束。
典型的數據分析專員的做法就是回顧過去產生的數據以及所發生的事件,但是一名數據科學家的做法必須超越于此并著眼于未來。通過使用高級統計方式和復雜的數據建模,數據科學家必須發現其中的模式,還得對未來做出預測。
數據科學家需要具備的技能成功的數據分析依賴于數據的清理、整合以及轉換——關鍵的是,這需要所有數據科學家必須擁有所有技能的整合能力。如果將你自己的科學背景與計算和分析技巧相結合的話,完全可以讓自己更上一層樓。
但還是讓我們更深入的挖掘一下,成為一名數據科學家所需具備的實際技能吧。Data Floq公司的CEO,Mark van Rijmenam先生向我們推薦說,數據科學家應該具備以下的技能:統計、數學和倫理,當然也得包括相當高的預測建模經驗,以便于為了找出正確的問題和相應正確的答案而構建出必要的算法。
盡管一位數據科學家可能執行的技能和不同的崗位職能很多,但來自LinkedIn的Ferris Jumah又進一步為我們整潔地歸納出所需的技能。
一名數據科學家必須:
用數學的思維方式看待數據。了解一些像機器學習、數據挖掘、數據分析以及統計方面的知識非常重要。一名數據科學家需要從數學的角度對數據進行詮釋和演示。使用通用語言進行數據的獲取、開采以及建模。掌握統計編程語言也很重要。類似R,Python或者 MATLAB這樣的語言,還有SQL這樣的數據庫查詢語言也是當下最受歡迎且比較搶手的語言。數據提取、研究和假設測試是數據科學實踐的核心。培養強大的計算機科學和軟件工程背景。這個要求數據科學家培養包括Java、C++或者算法和Hadoop方面的知識。這些技能可以用來建設數據系統。圖2:數據科學所關注的領域
數據科學家用到的工具與典型的程序員不同的的是,程序員使用標準化的工具,而數據科學家趨向于使用大量的總是不斷改進的工具。這是因為數據科學家的世界正在快速的進化,很多新的工具還不夠成熟和完善。下面我們來列舉一些所必要的工具:
數據分析工具:
這里所指的工具實際上僅僅是數據科學家使用的用于數據提取和分析的編程語言。較為典型的工具就是Python、R和 SQL。
數據倉庫工具:
數據科學可以選擇擁有自己的數據庫,他們可以在這里進行數據的提取與分析。MySQL就是一款最受歡迎的處理體量較為合理的數據庫的軟件。當話題轉到大數據領域時,他們通常會使用Hive或者Redshift這樣的程序。也許你會吃驚的問,使用CSV文件的數據科學家還會支撐多久。
數據 可視化 工具:
我們經常提到的最普通的數據可視化工具是D3.js和Tableau。對于D3.js而言,如果你能想象出數據可視化的樣子,那么你就可以利用這個軟件達到你想要的結果。目前Tableau是最受歡迎的數據可視化軟件,它可以使來自于數百條輸入的編譯數據輕而易舉的轉換為清晰可見的可視化效果。
機器學習工具:
機器學習領域內的剛出現的工具也許每天正處于不斷變化之中。廣泛使用的工具也許就非 Scikit-learn莫屬了,該工具利用Python進行機器學習。之后當然還有SparkMLlib,這是Apache為自己的Spark 和Hadoop使用的機器學習資料館。