會機器學習就夠了?下一代數(shù)據(jù)科學家群體走向“全?!?!
數(shù)據(jù)科學一直是個引人注目的領域,尤其是對于那些有計算機科學、統(tǒng)計、業(yè)務分析、工程管理、物理、數(shù)學等學科背景的年輕人。但霧里看花始終看不清晰,人們總是認為數(shù)據(jù)科學背后有許多神秘的地方,覺得它不僅僅是機器學習和統(tǒng)計。
多年來,我與許多專業(yè)人士討論過該如何進入數(shù)據(jù)科學領域。為什么總有關于數(shù)據(jù)科學的炒作?能夠幫助人們走進這一領域的仍然是統(tǒng)計數(shù)據(jù)和機器學習嗎?未來也仍是如此嗎?
兩個月前,我從研究生院畢業(yè)后直接作為數(shù)據(jù)科學家加入了媒體巨頭ViacomCBS。除了研究助理和實習之外,沒有任何全職行業(yè)經(jīng)驗。我的工作職責包括從構想、開發(fā)到生產(chǎn)ML產(chǎn)品,使用過文中列出的大部分工作方式。希望本文能幫到所有有志于進軍這一領域的數(shù)據(jù)科學家和機器學習工程師們。
為什么總有關于數(shù)據(jù)科學的炒作?
幾乎人人都想要進入數(shù)據(jù)科學領域。幾年前,數(shù)據(jù)科學領域存在供需問題:自從DJPatil博士和JeffHammerbacher創(chuàng)造了Data Science一詞后,對數(shù)據(jù)科學家的需求大大增加,相關人才顯得供不應求。
到了2020年,情況有所好轉。受到過正規(guī)或者MOOC教育的數(shù)據(jù)科學愛好者的數(shù)量有所增加,人才需求也有所增加,但沒達到前者的增長程度。這一術語所涵蓋的領域越來越廣泛,包含了人們進行數(shù)據(jù)科學工作所需的大多數(shù)功能。每個人都在談論數(shù)據(jù)科學,但大多數(shù)卻不得其法。
我認為數(shù)據(jù)科學總被炒作有以下幾個原因:
- 前沿發(fā)展
- 工作滿意度高
- 業(yè)務影響巨大
- 數(shù)據(jù)生成量增加
- 數(shù)據(jù)科學家頭銜背后的神秘感
- 數(shù)據(jù)很好看!(不是字面意思~)
- 大量學校和訓練營能提供數(shù)據(jù)科學學位
- 許多招聘網(wǎng)站將其評為最熱門的工作(最近3年被Glassdoor評為美國最熱門的工作)
自稱是數(shù)據(jù)科學家的人?
總有人會這么介紹自己,所以讓我就當前的行業(yè)狀況講一些真相。
由于職位需求的增加和數(shù)據(jù)科學家頭銜的光鮮,許多公司已開始將產(chǎn)品分析師、商業(yè)情報分析師、業(yè)務分析師、供應鏈分析師、數(shù)據(jù)分析師和統(tǒng)計學家的職位改為數(shù)據(jù)科學家,因為許多人離職的原因便是去應聘數(shù)據(jù)科學家的職位,但實際上這些公司提供的工作內容往往是一樣的。
許多人從職位頭銜微小的字詞變化中感到了被尊重。因此,公司們以相同的思路改變職位名稱,使他們的職位顯得更耀眼也更令人期待,例如數(shù)據(jù)科學家-分析方向、產(chǎn)品數(shù)據(jù)科學家、數(shù)據(jù)科學家-增長方向、數(shù)據(jù)科學家-供應鏈方向、數(shù)據(jù)科學家-可視化方向或數(shù)據(jù)科學家,還有什么不能加的方向?
大多數(shù)接受教育或者在線培訓的人都有一個誤區(qū),認為所有數(shù)據(jù)科學家都會建立精致的機器學習模型,但這種認知并不完全正確。我剛開始攻讀應用數(shù)據(jù)科學碩士時就是這樣想的,以為大多數(shù)數(shù)據(jù)科學家都是做機器學習。
但是當我開始在美國實習和就業(yè)時,才逐漸了解真相。推動人們走向數(shù)據(jù)科學的力量,其實源自對人工智能及其業(yè)務影響的炒作。
下一代數(shù)據(jù)科學家——機器學習
在2020年,對于想要以數(shù)據(jù)科學家-ML方向(這樣命名因為它不是數(shù)據(jù)科學家-分析方向)的身份進行應用機器學習,卻又沒有博士學位的人來說,除了人人都可做的將機器學習應用到數(shù)據(jù)集,可選的方法更多了。我將從自身經(jīng)驗出發(fā)分享一些關鍵點,或許有助于你的面試:
- 分布式數(shù)據(jù)處理/機器學習:掌握Apache Spark、ApacheHadoop、Dask等技術的實踐經(jīng)驗能夠證明你可以大規(guī)模創(chuàng)建Data / ML管道。有以上任何一種技術的應用經(jīng)驗都很加分,不過我還是建議使用Apache Spark(使用Python或Scala)。
- 生產(chǎn)環(huán)境機器學習/數(shù)據(jù)管道:如果可以親身體驗Apache Airflow就再好不過了。ApacheAirflow是用于創(chuàng)建數(shù)據(jù)和機器學習管道的標準開源作業(yè)編排工具。行業(yè)里已經(jīng)在使用它,因此建議你學習并圍繞它進行一些項目。
- DevOps/Cloud:數(shù)據(jù)科學領域,很多人都過分忽視了DevOps。如果沒有基礎架構的話,要如何構建ML管道?構建在本地計算機上運行的筆記本或代碼,并不像我們在課程中所做的那樣容易。你編寫的代碼應該可跨自己或其他人可能在團隊中創(chuàng)建的基礎結構進行擴展。
許多公司可能尚未布局ML基礎架構,正在尋找入門人員。即使在課程學習中,熟悉Docker,Kubernetes以及使用Flask之類的框架構建ML應用程序也應該是標準做法。我喜歡Docker,因為它具有可擴展性,可以構建基礎架構映像,并在Kubernetes集群上的服務器/云上復制相同的內容。
- 數(shù)據(jù)庫:必須了解數(shù)據(jù)庫和查詢語言。盡管SQL被嚴重忽略,但無論在任何云平臺或數(shù)據(jù)庫上,它仍然是行業(yè)標準。開始在leetcode上練習復雜的SQL將幫助到你應對在DS profiles中的某些編碼面試部分,因為你要負責在預處理進行時從倉庫中導入數(shù)據(jù),這將簡化你在運行ML模型前進行預處理。使用SQL將數(shù)據(jù)傳輸?shù)侥P椭袝r,大多數(shù)功能工程可以隨時隨地完成,然而很多人會忽略這點。
- 編程語言:推薦用于數(shù)據(jù)科學的編程語言是Python、R語言、Scala和Java,了解他們中的任何一個都可以幫助你解決問題。對于ML類型的工作,面試過程中都將進行現(xiàn)場編碼,因此你需要在自己覺得有效率的地方練習——Leetcode或者Hackerrank等。
如今,除非你足夠幸運,在行業(yè)中有一些重要的關系(建立人際關系網(wǎng)非常重要!)或擁有署名的出色研究記錄,否則只了解機器學習或統(tǒng)計學的話,你仍無法進入數(shù)據(jù)科學領域并學習ML。商業(yè)應用程序和領域知識往往需要工作經(jīng)驗,但是除了在相關行業(yè)進行實習之外,這些經(jīng)驗事先無從習得。
我也曾站在數(shù)據(jù)科學的路口徘徊,如今就要親歷下一代數(shù)據(jù)科學家進入領域的需求在當下成型。這個行業(yè)日新月異,需要你不斷調整自己跟上它的腳步。
本文轉載自微信公眾號「讀芯術」,可以通過以下二維碼關注。轉載本文請聯(lián)系讀芯術公眾號。