最近閒來無事,老潘以一名普通算法工程師的角度,結合自身以及周圍人的狀況,理性也感性地分析一下極市平臺前些天發佈的2020年度中國計算機視覺人才調研報告。git
如下的「計算機視覺人才」簡稱「人才」,感受說人才有點怪怪的感受?本身也算人才麼?老潘只不過是一個普普統統的算法工程師罷了(逃)。程序員
這個報告一共分爲幾個方面,用大白話講一下就是:github
..都是你想知道的。面試
再次聲明,該報告是由極市平臺、中國圖像圖形學學會以及Deloitte聯合發佈。如下圖片內容來源於報告,未作任何修改。一共34頁的報告PDF,感興趣的,公衆號回覆「000」便可。算法
哎呀,廢話很少說,開始分析(吐槽)吧。編程
第一節 人才現狀?先看下人才分佈?服務器
調研人才分佈中碩士和本科佔比80%挺正常,碩士作算法工程的更多,博士作算法研究的更多。通常在互聯網公司中,大部分都是碩士作算法工程師,來的實習生也都是碩士研究生,固然也有少量的本科生,特別優秀的本科生應該也是能夠作算法工程師這個崗位的。框架
研究生相比本科生的優點多是:機器學習
回想起當年本科生的時候,你們都是湊錢參加比賽,全部設備都是隊員們慘兮兮地從生活費中一點一點扣,買個主控板都要精打細算。拿不到好獎項(獎金)的時候也經常入不敷出。編程語言
不過那會你們都很開心,畢竟是真正的熱愛,當年熬夜通宵的日子如今也一去不復返了。
本科生與研究生作項目的區別還有一個:本科生沒有約束,做比賽更多的是憑着興趣,是主動;研究生有導師管着,大部分學生作項目是導師要求,是被動。態度決定一切,興趣纔是不斷學習的動力。
哦對了,報告中一句話值得推敲:"在具有相關經驗的羣體中,其算法經驗略多於工程經驗"。
好好打工程基礎吧!
來自北京的人才無需質疑數量確定是第一,緣由很簡單,北京相應的人工智能企業最多,互聯網氛圍最好,你們固然都來北京了。接下來是深圳,深圳是創業之都,機具創業熱情,硬件公司也多一些,機器人和AI結合的企業一抓一大把。最出名的算是大疆了。
好的企業都被一線二線城市瓜分了,那其餘地方呢..
老潘也面臨着殘酷的事實:我這個專業這個技術方向,回老家實在找不到工做啊。
再看一下專業分佈。
學計算機專業的就是好呀,計算機相關專業在找工做上是有必定的優點,畢竟人家底子好一些。可是你們不要灰心,如今是自學的時代,網上好資源一搜一大把,只要你肯下功夫學習,不必定比專業搞計算機的差。
專業(相差太大的專業,例如田園設計等,這個難度可能會大些)和你在上學階段學什麼關係並非很大,關鍵仍是看本身。
趁着在學校,多找些組織,找些資料,趕忙學習吧!
果真目標檢測的人最多。
目標檢測最好入門,資料最多,變種最多,代碼最多...特別適合充當畢業生的畢設項目選題。不過若是是找算法開發相關的工做,只會目標檢測是遠遠不夠的。
老潘在前年找工做的時候主打的也是目標檢測,當時在實習時候已經聊好了一個公司leader,答應說秋招的時候會再面試一下(就過)。可是秋招的時候那位leader很差意思地跟我說,他們公司目標檢測相關任務開發這一塊的人已經比較多了,他們更想要招有3D生成或者GAN項目經驗的求職者。總而言之就是一句話:
你很優秀,可是不適合咱們。
不過不一樣公司的需求是不同的,目標檢測這個方向對於大部分公司來講,仍然是需求量比較大的。
時代在發展,AI也在不停進步,你要問我如今CV領域哪兒還不卷?
我也不知道啊~
發論文最好發的是什麼話題?固然也是目標檢測了。
不得不吐槽一下,無論是anchor-base仍是anchor-free的檢測框架,改一下腦殼(head)改一下頸部(neck)改一下身體(backbone)就能夠水一篇論文了。什麼?不會改?那就改一下數據集吧~一樣的框架,換個場景,又是一條好漢。
仍是老潘以前說過的,AI行業最流行的語言就是Python和C++。
不管是最火的深度學習框架Pytorch和Tensorflow,仍是比較流行的模型加速推理框架TensorRT和TVM。都會提供Python接口來實現與用戶的交互,提供API供用戶使用,但實際內核代碼都是使用C++編寫的。緣由很簡單,爲了保證性能以及方便地使用各類加速庫(MKL、cuDNN)。另外,C++中的各類特性也比較適合團隊協做開發大型項目,感興趣的能夠閱讀相關源碼,親自感覺下其牛逼之處。
對Pytorch源碼感興趣的能夠看:
還有不少這裏暫時不介紹了,有興趣能夠關注老潘,時不時會分析一哈框架。
如下內容很真實..國產的深度學習框架使用率7%不到(今年應該超過7%了,paddlepaddle很好用),仍是Pytorch和Tensorflow的天下。
PS:感受Darknet應該是靠yolov3火起來的,並且後繼有人不斷更新...純C語言開箱即用對工業界簡直不要太好。Caffe2挺惋惜。MXNet小而美。
老潘理性分析一哈。對於學生來講,框架的易用性和社區完善度很重要(說白了就是遇到不會的問題,百度的時候資料多很少)。還有剛開始入門的小白,會聽別人說什麼什麼好什麼好,跟風使用;但對於公司來講,基本就是根據實際需求選擇使用框架,例如這個模型只有Tensorflow的開源版本,有咩有Pytorch的,滅有?復現太耗時間,直接上手Tensorflow吧~畢竟是以業務來驅動的,產出就是第一目標,反之亦然。
目前狀況來看,Pytorch不論在學生仍是公司佔有率優點很大。老潘3年前開始使用Pytorch進行深度學習研究,那會仍是0.2版本,對比當時的TensorFlow,簡直就像螞蟻和大象。但短短二、3年時間,螞蟻已經長大了。
公司更傾向於Pytorch的緣由也很簡單:
固然TensorFlow也是有優勢的,TensorFlow-server不少公司在使用,雖然也有一部分是歷史緣由,可是其穩定性和可靠性仍然比大部分的server要強。
PS:推薦一個能夠媲美TensorFlow-Server的服務器推理框架——triton-inference-server,前身是TensorRT-server,現已開源,能夠部署各類框架模型進去(TensorRT、Pytorch、TensorFlow、Onnxruntime等),老潘研究過一段時間,苦於沒有時間分享,感興趣的能夠交流一波~
什麼?上述框架知足不了你?你要手擼一個框架本身搞(嚴重懷疑你是來炫技的)?在學生時代是能夠花點時間,模仿其餘大型框架寫一個小的框架練練手,這裏推薦幾個項目來瞧一瞧學一學:
通常來講,框架同時具有訓練和推理功能。但訓練部分寫起來挺難,若是是隻寫推理功能的話,又簡單一些。不少框架只有推理功能,感興趣的能夠參考一哈,簡單列了一些(並不全):
若是是硬件公司(不少這樣的硬件創業公司)使用本身的芯片,也會有相應的AI底層算法工程師去搭建相似於TensorRT這樣的產品,寫op,操控內存接口,最終產出相似於TensorRT這樣的動態連接庫,暴露出API供上層調用。
總之,框架這東西仍是用的舒服比較好,我嘛,就喜歡用Pytorch!
大部分互聯網公司搞算法的薪資比搞開發的可能會高一些,但其實也相差不了多少(真的相差不了多少)。
大部分算法工程師也會幹開發的活,只是附帶算法這個屬性罷了。只有真正的算法研究員纔是真正研究算法理論退出新算法的。
對於硬件公司來講(vivo、oppo這類),算法工程師和開發工程師薪資並沒有區別(碩士校招)。都是有好幾檔,看各自水平定級。可是會有些研究性質的崗位只要求博士參與,這也就是博士與碩士的差距。
對於碩士研究生來講,算法和開發相差並無想象中那麼大,也不存在所謂的鄙視鏈。
行業分佈仍是比較中肯的,人工智能領域與深度學習密切相關。大部分互聯網公司也有不少深度學習的業務線存在,例如快手、抖音等各類AI玩法,都是與深度學習關係很深的項目。
還有電商的以圖搜圖、虛擬試妝;教育領域的視頻教學中的課程互動、拍照搜題、智能閱卷等等。都是如今很日常融入生活中的AI場景,也能夠說,AI無處不在了。
借一下報告中的內容:
自2018年起,全球計算機視覺技術不斷成熟,開源生態、技術社區、人工智能開放平臺的創建也使得算法的開發與應用門檻顯著降低。德勤在《全球人工智能發展白皮書》中指出,由深度學習驅動的計算機視覺在某些領域已經超越人類,特別是在人臉識別、圖像分類等任務中。同時,在我國,計算機視覺技術的應用擁有龐大的市場空間與豐富的場景數據,於是當技術成熟度達到產業要求時,很多垂直行業,尤爲是行業中的頭部企業,選擇了在組織內部搭建計算機視覺團隊,打造行業專屬的計算視視覺算法產品或相關功能。
第二節 人才的我的指望與規劃人才能有什麼規劃?無非就是想不斷提高本身的技術水平和薪資水平罷了。
仍是北上廣深,老潘做爲一名算法工程師,由於北京的互聯網機會多,就絕不猶豫去了北京。其實對於任何打工者來講,哪的工做機會多固然就去哪兒了,在老家空有一身本領,但找不到合適的工做是最無奈的。
固然也與城市發展以及公司薪資多少有關係,大城市發的錢比較多,可是房租貴,小城市發的錢比較少,可是房租便宜。究竟去哪兒好,仍是看本身。
不得不說,程序員這個職業爲什麼適合年輕人,有一點緣由就是新技術來的很快,咱們須要不停地根據業務需求學習新的知識,最好是可以快速上手。年輕人嘛,不會的東西學學就會了。
上圖已經表達的很清楚了,大部分的程序員都是靠自學。自學是個主動的過程,本身尋找資料本身決定下一步該學什麼。雖然有點累可是學習效率很驚人。
我的認爲網上的付費視頻能夠看,但不是必要的,視頻只是輔助做用。並且被動學習有時候會讓本身產生感受學習了很多的幻覺,老潘提醒一哈,若是隻是光看視頻不進行實戰(完成一些課後做業啥的),學了很少久就會忘得。
遇到問題就百度或者google一下就行了,大部分的技術文章出自如下這些平臺,這些平臺是很好交流技術的地方:
固然也有不少優秀的我的博客,這裏就不一一列舉了。不要臉地宣傳一下本身的博客(逃):
算法工程師仍是最香的,適合算法與工程兼備的童鞋。
高校老師和高效研究生適合喜歡搞研究、喜歡探索新方向的童鞋。
AI產品經理和AI項目經理據老潘所知門檻較高,大廠通常都會要求有實習經驗的童鞋。
報告指出:
在計算機視覺技術發展過程當中,隨着前沿理論的不斷突破、產業應用的趨勢變化,計算機視覺領域的人才 研究方向也在相應做出調整。本次報告對在職人員但願將來研究的領域進行了調研,結果發現:目標檢測、圖像分割、文本理解、目標跟蹤仍爲計算機視覺人才將來研究的重點方向,同時醫學影像處理識別的研究興趣排名由第 7 位上升到第 5 位,這可能與新冠疫情後醫療領域計算機視覺相關需求驟增有關。
目標檢測目前仍是很熱門的研究方向,畢竟剛需在那裏擺着。老潘建議,學生階段,最好仍是多方向、多嘗試嘗試不一樣方向的算法,不要把蘋果放一個籃子裏。
第三節 社會對人才的述求碩士級別是算法工程師的敲門磚,那是由於以前本科的時候不多有深度學習的項目,大部分只是ACM或者大學生電子設計大賽這樣子的。和人工智能關係不是很大。
如今條件好了,深度學習也普及了,大部分高校也開設了相關的課程。個人表弟他們在本科階段已經參與一些老師的項目,開始訓練yolov3模型部署在TX2上去參加一些比賽,和研究生作的並無本質上區別,這都是5年前想都不敢想的。
如今是全民普及AI的時代,AI已經無處不在了。
很真實,企業對人才的要求實際只有一個:
可是解決問題也沒有實際那麼簡單,須要很紮實的基礎和較強的學習能力才行。
在企業不一樣於在學校,企業要求的不多是demo級別的玩具,更多的是穩定可靠、精度達到要求且能夠上線,缺一不可,看似簡單,但實際困難重重。與高校場景徹底不一樣,因此建議你們在高校中儘可能多參加一些實際的項目,要有反饋,千萬不要自嗨。
PS:做爲算法工程師,每每都是有壓力的!拖你們的福,老潘的頭髮仍是很濃密...
只有一點要提醒的,不是隻有崗位名稱包含CV、圖像、AI等的才與深度學習有關係。隨着深度學習的不斷普及,上到算法層,中到軟件層,下到硬件層,每一個層都有與AI、與計算機視覺相關的崗位。
崗位名稱五花八門,這裏只說一句,名稱是一方面,點進去看崗位介紹最靠譜!
關於算法崗位分佈與特色老潘以後抽空會彙總一波。
第四節 人才的培養與發展雖說咱們大部分人是靠自學,感受有臺電腦就能夠。可是對於深度學習這個燒錢的方向來講,有設備有機器是最好的,這裏列一下咱們學習可能須要的設備:
關於部署落地,老潘有話想說:
實驗室沒有資源的可是又想參與的,能夠本身掏錢買顯卡(這裏簡單提一下,能夠買2月26日發佈的3060-12G顯卡,官方建議價2499,性能和以前的1080ti差很少,若是有條件能夠搶到,這款卡很適合作深度學習),也能夠白嫖一些GPU資源(例如kaggle):
放心吧,只要你真心想入坑深度學習,GPU資源什麼的不是大問題,能夠經過各類方式解決,關鍵仍是要有熱情和興趣。畢竟深度學習這條路,註定不會一路順風。
在學校的煩惱能有啥哦?老潘認爲在學校仍是很舒服的...想學什麼學什麼,想作什麼作什麼。
不過確定會有一些不知足於現狀的學弟學妹們,想要突破一下本身,找點事情作。這個時候若是導師不給力,仍是要靠本身的,主動找點事情作吧~
有疑問也能夠與我交流。
關於研究生導師和人工智能公司的發展瓶頸(煩惱),就不是咱們所考慮的了,看看就行啦!
基本高校的課程以下,課程基本是起到引導入門的做用。渴望學習的咱們,更多的是但願本身找本身感興趣喜歡的課程去學習。
課程資源限於篇幅,能夠看看這篇:
正如報告中所說:
短時間內在高校開設細分領域的課程仍有不小的挑戰:
因此大部分的高校課程都是以打基礎爲主,很是適合剛入門的童鞋,老潘只想說一句:好好珍惜在學校的美好時光,認真學習吧,不要浪費時間~
最後時間老是過的很快,還記得那會剛入門深度學習的時候,看吳恩達和李宏毅的課看的津津有味,雖然啥也不懂。轉眼間3年過去,如今已經全民AI了,雖然偶爾會迷茫,但已經踏入深度學習的老潘依然會堅持走下去,不管是以何種形式。
但願你們可以和我一塊兒堅持下去吧~
文中提到的一些分享資源在這裏。
撩我想知道老潘是如何學習踩坑的(PS:想與我交流問題)來公衆號找我~
撩我吧想知道老潘是如何學習踩坑的,想與我交流問題~請關注公衆號「oldpan博客」。