小編的世界 優質文選 生涯
字體大小:
2020年9月14日 -
:
《酷扯兒》官方帳號
如今,越來越多的人希望入行人工智能,而進入AI領域的直接途徑是從事機器學習職業。
但是,機器學習從業人員應該怎麼規劃職業?造就成功的機器學習職業生涯有哪些關鍵因素?
作為曾在多個著名企業和學術機構擔任實驗室負責人的“老司機”,吳恩達可謂經驗豐富,他就以上問題給出了出色的建議,帶你穩步上車。
他特別提到了編程技能、實踐應用、持續學習和深入某個領域
的重要性,此外,他認為團隊比公司更重要,要在職業生涯中“從事一份你不會厭倦的工作”,最後他還指出了在職業生涯中需要避免的幾個誤區。
計算機視覺工程師Richmond Alake曾經將吳恩達CS230深度學習課程中關於如何閱讀論文的建議整理成文章,發表在Medium上,非常受歡迎。本文是他從吳恩達的多個斯坦福大學講座取材寫成的文章,AI科技評論對文章進行了編譯。
本文包含四部分內容:
1、如何找到機器學習工作
2、成功的AI從業者模式
3、如何選擇工作
4、機器學習生涯需要避免的誤區
注:本文適用於大多數處於不同職業階段的機器學習從業者。
機器學習系的學生在完成學術研究後,通常會從事相關工作,或繼續讀博。我在獲得機器學習理學碩士學位後,幾乎立即找到了相關工作。
通常,有兩種類型的公司會招聘AI相關人才,大型科技公司(例如Facebook,Google)或創業公司。
吳恩達提到,無論朝哪個方向走,都必須確保自己從事的是重要且有意義的工作。
我們首先了解如何找到工作。
如何找到機器學習工作
機器學習工作競爭激烈,但是招聘公司心目中的理想候選人是什麼呢?
吳恩達擁有多年AI團隊工作的經驗,他曾經擔任谷歌大腦團隊的負責人,斯坦福人工智能實驗室的負責人,以及百度約1200人的AI團隊的總負責人。
他給公司就招聘AI人才提出了以下建議,這同時也是我們在求職前需要具備的能力。
1、編程技能
機器學習研究工作要求個人至少已經掌握平均水平的編程技能。
程序員平均需要了解兩到三種編程語言,並且都達到中級水平。
機器學習從業人員需要具備編程技能,並且能夠理解一系列常用的編程語言,例如Python、Java、JavaScript和R。
為什麼需要擁有多種語言的實踐經驗呢?
以我為例,我目前擔任計算機視覺工程師,需要使用三種不同的編程語言。我用Python實現模型(TensorFlow)和編寫腳本;也用javascript實現模型(tfjs);最後,為了將模型和計算機視覺技術集成到iOS應用程序中,還需要將Swift語言用於iOS應用程序開發。
2、技術問題理解能力
通過簡曆審查這一關後,接下來是面試。在兩個面試階段,都會涉及機器學習相關的問題。面試官可能會讓你解釋梯度下降變體之間的差異;或描述新型神經網絡架構的獨特特征。
3、實際應用理論知識的能力
在面試之前,你可能已經在學術機構中度過了幾年,並且習慣了大學的基於理論的考核方式。
而招聘公司想要的理想候選人,不僅要了解機器學習理論,而且可以實際應用概念、技術和思想。
例如,你首先需要在概念上理解批歸一化的好處,但要在競爭中脫穎而出,還得學會使用Jupyter notebook或GitHub repo,並有一定的作品量,附帶作品集是展示技術、創意和解決問題能力的好方法。
4、持續學習的能力
在機器學習領域,每天都會有新技術出現,新的工具和庫層出不窮,並且每月都會有大量研究論文發表。
入行機器學習,你需要擁有持續學習的能力。
在深度學習領域,經常會出現新的神經網絡,在特定計算機視覺任務上實現SOTA性能。
招聘公司希望員工不滿足當前的職位,不停追求成長。機器學習從業人員通常在AI行業中處於新興技術的最前沿。
成功的AI從業者模式
AI涵蓋了很多子領域,例如機器學習、自然語言處理、語音識別、神經網絡、計算機視覺、圖像處理等等。
根據吳恩達的說法,成功的AI從業者學習AI子領域時都采用“T”形方法。
也就是說,廣泛地學習AI的大部分子領域的基礎知識,然後深入學習某些領域的專業
知識。
以我自己為例,我通過學習獲得了AI主要子領域的基礎知識。然後我通過寫論文、做個人項目和發展職業道路,專注於三個主要領域,分別是計算機視覺、自然語言處理和深度學習。
學校會在機器學習的教學中介紹各個子領域的基礎知識,而學生要通過選修課程、論文和課程學習獲得深入理解。
在完成了機器學習、計算機視覺和機器人學的學位課程的所有必修課程後,我獲得了AI主要子領域的基礎知識。
完成大學之後的AI領域知識
以下是我完成大學課程之後,從事項目並開始工作的“T”形知識路徑的示例。我已經走在“T形”方法的學習之路上,我的專業是深度學習,這是計算機視覺的一個子領域。
由於子領域的重疊,你在深入學習的時候可以在神經網絡、機器學習、NLP和圖像處理等其它子領域獲得更多的知識。
就我個人而言,要想成為深度學習和計算機視覺方面的專家,還有很長的路要走,下圖是我目前成就的幾個“T形”。
完成學位論文並開始職業生涯後的AI領域知識
專業知識
吳恩達認為,專業知識的構成如下:
項目
開源貢獻
研究
合作
再提醒一次,在特定的領域從事個人項目會加深你的知識和專業技能,讓你成為成功的人工智能從業人員,甚至擔任更加實戰型的職位。
如何選擇工作
吳恩達說,具備機器學習專業知識的個人是被市場所需的。
這使得擁有機器學習知識技能的人在求職時有更多的選擇,但也難免做出錯誤的決定。
以下是吳恩達給出的關於如何選擇工作、如何擁有快樂而有意義職業的建議。
和好團隊一起工作
吳恩達認為,選擇一個卓越的團隊是非常重要的。
在選擇團隊時,需要考慮以下因素:
影響
交流
成長
吳恩達建議,應該在一個可以輕松與團隊成員互動的團隊中工作。一般來說,這樣的團隊包含10-30人。他建議關注團隊的努力程度,以及團隊成員的個性和職業道德是否能對你產生積極影響。
團隊中的個人往往是你大部分時間都會與之共度的人。根據行為科學研究,你的能力最終是與你相處時間最多的五個人中的平均值。
了解你的定位
在決定接受職位之前,請確保你了解這份工作。
通常情況下,招聘公告上職位描述並不反映實際工作所需的職能和責任的性質。
有時候,工作崗位上的責任被大大誇大了,這可能會導致失望。
有時候,招聘公司低估了新員工的預期工作量,這可能會導致職業生涯過早枯竭。
避免失望和精疲力盡的最好方法是和你的直接上司談談,了解對任務和交付時間的期望。
此外,與相似職位的團隊成員交談,並就他們的日常活動提出問題。
忽略公司本身
當吳恩達第一次提到這一點時,我有些困惑。但在他進一步澄清之後,我才明白過來。
公司具有外部聲譽和認可度,這通常被稱為公司的品牌。公司的品牌通常是公司將自己傳達給外部世界的形象。問題在於,公司通常只會向外界展示最好的一面,這使得你在選擇公司時有點偏頗。
正如吳恩達所說,從一般經驗來看,一家公司的品牌與你在公司的個人經曆之間的相關性很弱。
在選擇AI職位時,考慮團隊比選擇公司更重要
,這個結論幾乎對任何一個行業工作都適用。
例如,石油公司和醫療中心的圖像分類機器學習項目的區別僅僅是用於訓練機器學習模型的數據集及其應用不同。機器學習技能可以跨行業遷移。
對工作機會保持期待,考慮長期目標
人類是受內在和外在因素激勵的生物,當兩者都缺乏時,我們就會開始感到遺憾、擔憂,有時甚至會陷入抑鬱狀態。
吳恩達直截了當地說:“從事一份你不會厭倦的工作
”。
倉促行事不一定是最好的主意。
在找工作的過程中,我收到了幾份看起來很不錯的offer,但需要一定程度的個人犧牲,我不願意接受。
此外,我拒絕的一些職位在短期內可能聽起來很不錯,但考慮到我未來十年的職業生涯,它們並不是最好的選擇。
我渴望在一家成功的公司裏成為一名人工智能團隊領導,這需要我比平常更快更深地投入。因此,提升空間有限、沒有明顯影響力的大團隊不是最好的選擇。而能提供自主性和學習環境的初創公司工作可以讓我的職業發展和成長更快。
一般來說,你要選擇一個最適合個人目標和長遠發展的職位。
機器學習生涯需要避免的誤區
成為AI“萬事通”
從事AI行業不一定要成為“萬事通”,對AI的所有子領域都擁有淺薄的知識並不能確保在AI或機器學習的職業生涯上獲得成功。
從長遠來看,專注於某個領域是有回報的,尤其是在像AI這樣的領域,專業性是必須的。
缺乏耐心
在機器學習等快速發展的領域中,我們幾乎總會感覺到自己不能足夠快地吸收信息。
通過觀察那些擁有長期成功事業的人,我意識到:在任何一個AI子領域中,建立真正的技能和專業知識都是需要時間的。
沒有實質性項目
擁有項目經驗或作品集對發展機器學習事業有很多好處。然而,你的作品集必須有足夠的可複現性才能打動面試官。為了打造有足夠影響力的作品,需要大量的精力和時間。
10個平庸的項目比不上2-3個具有影響力的項目,質量勝過數量。
結論
吳恩達在演講結束時提到了幾個關鍵要素,這些要素有助於個人在機器學習領域取得長期成功的職業生涯,分別是:
在可促進學習的良好環境中工作;
做有實際意義的項目,也就是說,以提高他人生活質量為目的開展業務;
做出有助於個人目標的決定,這將為取得長期成功奠定基礎。