AI 崛起,科學家的天下,程序員的謝幕
來源:原創(chuàng) 時間:2017-11-16 瀏覽:0 次一邊,在移動互聯(lián)網時代掉隊的微軟迅速組織起來了一個萬人的 AI 團隊。
另一邊,F(xiàn)acebook、Google 在對各個技術公司進行買買買,為了在 AI 時代的探索中鋪好路。
多年前「深藍」下國際象棋時,所有人都覺得人工智能還是遙不可及的學問。
直到 AlphaGo 的出現(xiàn),才警醒了世人,刺激了市場。
AI 終究是個要以學術為根本的學科,AI 時代下程序員的下一步該如何走?
回顧一下移動互聯(lián)網所帶來的機遇,不難想象掌握人工智能、深度學習等學科技能,將為一線工作帶來怎樣的優(yōu)勢。
可是, AI 人才的培養(yǎng)要求嚴苛的數(shù)學門檻、成本高昂的實戰(zhàn)訓練,讓很多一線的程序員望而生畏:
一線互聯(lián)網公司對 AI 工程師的要求是什么樣的?
我應當掌握哪些 AI 技能樹?
從事 AI 工作一定要有碩士、博士的知識儲備嗎?
從零學習人工智能真的需要5年以上時間嗎?
系統(tǒng)化學習和實戰(zhàn)中總結哪個更高效?
于是,我們請來了一些大廠的 AI 技術專家來給那些迷失在「AI 道路門口」的程序員們,講講 AI 工程師細分職業(yè)的區(qū)別,趨勢等等等...
如何成為一名數(shù)據科學家?
在回答這個問題之前,希望你先想想另外一個問題:為什么要成為數(shù)據科學家?
當然,如果你是為了10萬美元的年薪也無可厚非,但是我衷心希望你能將這個職業(yè)和自己的價值感掛鉤。
因為成為數(shù)據科學家的路途會很辛苦,但如果你將其看成是實現(xiàn)個人價值的一種方式,那么追尋目標才能帶來長久的成就感,在這個過程中會感到快樂并且動力十足。
一、數(shù)據科學家應掌握的技能包
要回答“如何成為……”這樣的問題,首先當然需要知道想要成為的對象是個什么樣子。圖1 是一個數(shù)據科學家的技能表。
首先編程能力是數(shù)據科學家需要的基本技能。數(shù)據讀取、整合、建模分析和可視化的整個環(huán)節(jié)都需要用到這些工具。
在業(yè)界環(huán)境中,整個數(shù)據鏈大概分為5塊:
1. 云端數(shù)據存儲系統(tǒng)。比如亞馬遜的云服務 AWS,大數(shù)據可以用分布式存儲在 S3中。
AWS 更像是一個生態(tài)系統(tǒng),里面有數(shù)據庫,也可以在上面運行一些代碼,比如實時從社交網站上爬取數(shù)據儲存在云端數(shù)據庫中。
2. 安全門。讀寫數(shù)據都需要經過這道安全門,這個部分主要是由公司的 IT 部門建立。
安全門有3種限制訪問權限的方式: IP 地址:只接受從特定 IP 地址的訪問;職能:比如只有頭銜是數(shù)據科學家和數(shù)據工程師的人有權限;用戶名密碼。
公司常常會同時使用上面3種方法,也就是有特定職能,從特定 IP 地址,通過用戶名和密碼訪問。
數(shù)據工程師會訓練數(shù)據科學家穿越這重重安全門。這里對數(shù)據科學家的計算機要求并不高,只需要知道一些基本的 Linux 就可以,苦活累活都讓工程師們包攬了。
3. SQL 客戶端。數(shù)據科學家需要通過 SQL 從數(shù)據庫中讀取相應數(shù)據。
根據數(shù)據庫的不同,使用 SQL 的類型和語法也略有不同,但大體上非常相似。掌握基本的數(shù)據庫讀取操作是非常必要的。
4. 數(shù)據分析?,F(xiàn)在使用最廣的數(shù)據分析語言是 R 和 Python,熟練使用至少其中一門語言幾乎成為數(shù)據科學家的標配。
只會 SAS 行不?不行。當然,這些都只是工具,工具是解決問題的手段,而非目的。
你必須要有一個能用來進行數(shù)據分析的工具,偏好因人而異,但選擇工具的時候最好考慮工具的靈活和可擴展性。
5. 結果報告。這里會用到基于 D3.js 的交互可視化,Rmarkdown 自動化報告以及 Shiny 應用。
數(shù)據科學家需要另外掌握的一個重要的技能是分析建模。圖2 是數(shù)據流程構架圖,這個模塊可以進一步細分成下面幾個:
數(shù)據科學家應該具備基本的概率統(tǒng)計知識,能夠熟練進行 t 檢驗,開方檢驗,擬合優(yōu)度檢驗,方差分析。
能夠清楚地解釋 Spearman 秩相關和 Pearson 相關之間的區(qū)別。熟悉抽樣、概率分布、實驗設計相關概念。
了解貝葉斯統(tǒng)計(很快就能在白板上寫下貝葉斯定理)。
不是所有的應用數(shù)據科學領域都需要用到貝葉斯,即使你所處的行業(yè)用得很少,了解貝葉斯的基本概念也是很有必要的。
使用“貝葉斯”這個詞的方式有很多。但其主要代表了一種解釋概率的特別方式。
用流行的術語表達,貝葉斯推斷不外乎計算在某假設下事情可能發(fā)生的方式的數(shù)目。事情發(fā)生方式多的假設成立的可能性更高。
一旦我們定義了假設,貝葉斯推斷強制施行一種通過已經觀測到的信息進行純邏輯的推理過程。
所以,在很多應用場景中,貝葉斯也更加合適。
機器學習相關技能。知道什么是有監(jiān)督學習,什么是無監(jiān)督學習。知道重要的聚類、判別和回歸方法。
知道基于罰函數(shù)的模型,關聯(lián)法則分析。常用的黑箱模型:隨機森林、自適性助推、神經網絡模型。
如果從事心理相關的應用的話(如消費者認知調查),還需要知道基本的潛變量模型,如探索性因子分析、驗證性因子分析、結構方程模型。
在應用過程中還需要加強對模型中誤差的來源分類的理解,知道相應誤差的應對方法。
當前存在的機器模型太多,理解模型誤差可以幫助你有效地通過嘗試少量模型找到足夠好的那個。
除了技術能力以外,還需要其他一些非技術的能力。這些包括將實際問題轉化成數(shù)據問題的能力,這一過程需要交流,也就要求良好的交流溝通能力。
關注細節(jié),分析是一個需要細心和耐心的職業(yè)。還有就是展示結果的能力,如何讓沒有分析背景的客戶理解模型的結果,并且最終在實踐中應用模型的結論。
這個單子還可以一直列下去??雌饋硎遣皇遣恢灰稽c嚇人?
其實這個技能單是動態(tài)的,你一開始不必具有上面列出的所有技能,但在工作過程中,需要不斷的學習成長。
一個優(yōu)秀的數(shù)據科學家不是通過數(shù)據找到標準答案的人,而是那個接受和適應這個充滿不確定性的世界,給出有用方案的人。
一個成熟的數(shù)據科學家面對分析項目時會看到多種可能性和多種分析方法,給出結果后依舊時刻關注這個結果,不停地保持小幅度頻繁更新。
再次強調自學能力和成為一個終生學習者是優(yōu)秀的數(shù)據科學家的必要條件。
二、如何獲取上述技能?
現(xiàn)在你對數(shù)據科學家需要具備的技能應該有個大致的概念了。接下來的問題是如何獲取這些技能。這個問題的答案部分取決于你的專業(yè)背景。
當前數(shù)據科學家的背景其實很雜,這里主要著眼于數(shù)學、統(tǒng)計、計算機或其它定量分析學科(電子工程、運籌學等)本科以上學歷的情況。
數(shù)學統(tǒng)計背景的學生,需要加強計算機方面能力的培養(yǎng)。而計算機背景的學生需要更多地了解統(tǒng)計理論。
如果是其他定量分析學科,可能需要同時加強這兩者。其他專業(yè)的學生成為數(shù)據科學家有兩種情況:
從事和自己專業(yè)相關行業(yè)公司的數(shù)據分析。比如在一些精準農業(yè)應用的公司,會常常看到數(shù)據科學家是生態(tài)學博士,或者土壤學博士。
其實這些人不能算是廣義上的數(shù)據科學家。
因為他們處理的問題局限于非常特定的領域,對生態(tài)和土壤的了解的要求高于對數(shù)據分析的要求。
雖然是其他專業(yè),但是本身有著很強的計算機技能,比如物理學專業(yè)的學生會成為數(shù)據科學家或者量化交易員,這因為他們通常具有很好的編程能力。
關于數(shù)據科學家的學位背景,根據2017年的統(tǒng)計數(shù)據,美國的數(shù)據科學家41%有博士學位,49%有碩士學位,只有10%是本科。
研究生博士期間的課題最好偏向機器學習、數(shù)據挖掘或預測模型。其次需要的是數(shù)據庫操作技能。
在工作中通常需要用 SQL 從數(shù)據庫讀取數(shù)據。對于統(tǒng)計或者數(shù)學專業(yè)的學生,在校期間可能不需要使用 SQL,因此不太熟悉。
這沒有關系,我也是工作以后才開始使用 SQL 的。但你要確保自己至少精通一種程序語言,之后遇到需要用到的新語言可以迅速學習。
現(xiàn)在有大量的 MOOC 課程,以及一些在線的數(shù)據科學視頻,都是提升自己的很好方法。
三、在數(shù)據科學的應用中有哪些常見誤區(qū)?
會用函數(shù)跑模型就可以了?
會開車的只是司機,要當汽車工程師,僅靠會開車是不行的。這點放在數(shù)據科學領域也是一樣。
不需要你背下模型背后的所有數(shù)學公式,但是至少需要學過一遍,讓你可以翻著書解釋模型機理。
模型精確度越高越好?
在實際應用中需要同時考慮收益和成本。如果模型精確度是90%,但是提高到95%需要復雜得多的模型。
因此需要大量的計算設備投入,同時帶來的邊際收益很小的話,滿足于精確度小的模型就好了。模型選擇和評估可能是數(shù)據分析流程中最難的環(huán)節(jié)。
技術過硬就是尚方寶劍?
人常常是不理性的,我們的行為和對周遭的態(tài)度受感情的影響。我們總是會對所有的事情加上自己的主觀判斷。
當然,你公司的同事,領導看待你的方式也受到主觀的影響。很遺憾,這個主觀的感受通常更多的來自于你作為人的部分,而不是機器的部分。
你覺得自己技術好是一件事情,領導覺得你技術好是另一件事情,領導覺得你的技術是有用的那又是新的一件事情了。
所以“做技術”不等于“情商低點沒關系”。
技術不斷更新,被泡沫裹挾著失去方向?
不斷升級將會是一種常態(tài),這不僅僅是數(shù)據科學,你必須這么做,因為所有的東西都在升級,就像軍備競賽一樣,升級已經成為事物本身的存在方式。
面對不懂的技術,要么就說不懂,要么就去學。其實你真正鼓起勇氣,開始認真去學習這門技術的時候,會發(fā)現(xiàn)其實沒有那么神秘。
當然,馬上又會有新的神秘的東西出現(xiàn),這個過程又會重復。但你就是在這樣循環(huán)反復中成長的,產品是這樣,人也是這樣。
四、數(shù)據科學領域現(xiàn)狀
我們從數(shù)據上看看數(shù)據科學的現(xiàn)狀吧。從最大的職業(yè)社交網站領英( LinkedIn )的數(shù)據看來,數(shù)據科學家職位的年薪在7.5萬~17萬美元之間,中位數(shù)是11.3萬美元。
其中雇傭數(shù)據科學家的公司主要集中在微軟、IBM、Fackbook、亞馬遜、Google這些計算機互聯(lián)網公司,圖3 為前10名雇傭數(shù)據科學家最多的公司。
數(shù)據科學家所處的行業(yè)也集中在科技或者研究性組織,圖4是排名前10的行業(yè)。
不同公司的數(shù)據科學團隊架構不一樣。主要有如下2種:
1. 獨立式。獨立的數(shù)據科學部門,會有一個數(shù)據科學總監(jiān)這樣的領導角色領導。這通常在研究所或者公司科研型的部門。
對于數(shù)據科學家而言,在這樣部門的優(yōu)點是能夠和很多其他數(shù)據科學家有技術上的交流,也有明確的職業(yè)軌道。
缺點是,很難脫穎而出,需要和很多其他科學家競爭一些資源(比如培訓會議的機會)。
2. 嵌入式。數(shù)據科學家各自嵌入到不同的職能部門中。常見的是市場部的數(shù)據科學家。
領導者就是傳統(tǒng)的市場總監(jiān)。在這樣的團隊優(yōu)勢在于直接和公司高層接觸,影響商業(yè)決策。
因為獨特很容易脫穎而出獲取很多行業(yè)內培訓和會議的機會,而且市場部是核心部門,如果你想在這個公司發(fā)展,這是很好的地方。
缺點就是,無法和其他數(shù)據科學家交流,很多東西需要自己決策,周圍人只能選擇相信或者不相信你,但不能給出特別的幫助。
久了會有在專業(yè)上落后的危險,所以需要充分利用在市場部的培訓會議資源,積極參與數(shù)據科學家社區(qū)。
最大的缺點是沒有清晰的職業(yè)軌跡,因為在市場內部的分析團隊不會太大。
如果你的職業(yè)目標是最后管理一個大團隊或者職能的話,這可能不能滿足你的目標。但其職位本身從初級到高級的跨度可以很大。
數(shù)據科學家這個職位還比較新,所以從團隊建設和職業(yè)軌跡上都還在發(fā)展,具有很好的前景。
希望你能成為一個不斷思考,終生學習的數(shù)據科學家!