泡沫魚頭
1、負責云安全產(chǎn)品后臺研發(fā);
2、負責將機器學習、圖計算平臺、圖數(shù)據(jù)庫技術(shù)在網(wǎng)絡安全、金融安全等方面的落地產(chǎn)品研發(fā)。
3、2年以上工作經(jīng)驗,擁有豐富后臺業(yè)務系統(tǒng)開發(fā)經(jīng)驗;
4、熟悉Linux平臺上的C/C++開發(fā),熟悉python/shell/scala等;
5、熟悉多線程及網(wǎng)絡編程;
6、熟悉SQL和NoSQL類型數(shù)據(jù)庫;
7、熟悉hadoop,hive,spark,hbase,kafka等大數(shù)據(jù)平臺組件優(yōu)先;
8、有機器學習經(jīng)驗者優(yōu)先。
崗位要求:
1、圖像處理、模式識別等相關(guān)專業(yè)碩士學歷,1年以上相關(guān)工作經(jīng)驗;
2、熟悉cnn,rcnn,svm其中至少一種,并且有實戰(zhàn)經(jīng)驗;
3、動手能力強,熟練掌握C/C++/Python語言,有較強的算法分析和實現(xiàn)能力;
4、有基于深度學習的目標檢測、人臉識別算法經(jīng)驗者優(yōu)先;
5、熟悉Caffe、Tensorflow、Torch等任一種深度學習開源框架者優(yōu)先。
崗位要求:
1、計算機,通信,自動化方向的本科及以上,2年工作經(jīng)驗;
2、熟悉圖像處理基本理論,圖像識別、機器學習等相關(guān)算法,有機器學習或深度學習研究背景。
3、掌握一門語言的開發(fā),包括但不局限于:C/C++,Java/Scala,Python/R;
4、熟悉至少一種常用深度學習計算框架,包括但不局限Caffe,TensorFlow,Torch等;
5、有深度學習模型框架(如cnn、rnn、lstm、fcn、VGG16、resnet等)使用經(jīng)驗。
6、學習能力強,善于與人溝通,強烈的`責任心,具有團隊精神和創(chuàng)新精神。
1、運用深度學習和機器學習算法、圖像識別等算法以及軟件實現(xiàn);
2、從具體的場景和問題出發(fā),研發(fā)算法系統(tǒng),產(chǎn)出解決方案;
3、從事人工智能領(lǐng)域前沿算法的研發(fā),技術(shù)驅(qū)動,探索人工智能的創(chuàng)新應用。
4、撰寫研發(fā)技術(shù)相關(guān)文檔。
工作職責:
1、負責公司棋牌類人工智能數(shù)據(jù)和算法的技術(shù)積累,開發(fā)改進公司現(xiàn)有產(chǎn)品斗地主、德州等機器人;
2、根據(jù)部門內(nèi)部研發(fā)需求搭建機器學習相關(guān)框架,提供機器學習相關(guān)支持;
3、負責機器學習相關(guān)數(shù)據(jù)的處理,特征的提取,模型的訓練;
4、根據(jù)研發(fā)需求負責相關(guān)棋牌機器人算法的改進和優(yōu)化;
5、完成上級交代的人工智能相關(guān)的其它研發(fā)工作;
任職要求:
1、本科及以上計算機/數(shù)學相關(guān)學歷,具備相關(guān)領(lǐng)域前沿知識研究學習經(jīng)歷;
2、熟練使用分類、聚類、回歸、無監(jiān)督學習、PCA等機器學習算法和統(tǒng)計學
3、至少精通C/C++/Python語言中的一門;精通數(shù)據(jù)結(jié)構(gòu)和算法。
4、有人工智能和機器學習領(lǐng)域工作經(jīng)驗;熟悉神經(jīng)網(wǎng)絡、遺傳算法、決策樹、SVM等算法。
5、有游戲開發(fā)經(jīng)驗者優(yōu)先;熟悉深度學習算法者優(yōu)先。
乖乖黑寶寶
0x00 前言
首先,《AI研發(fā)工程師成長指南》這個題目其實有些標題黨了,準確地來說,本文內(nèi)容應該是:“要想成為一名AI研發(fā)工程師,需要具備哪些技能”。
其次,本文對“AI研發(fā)工程師”這個title的定義,也并不是大家第一印象中的“算法工程師”、“數(shù)據(jù)科學家”。
再次,本文實際上作者結(jié)合現(xiàn)階段行業(yè)發(fā)展、技術(shù)趨勢以及自身工作性質(zhì)做出的關(guān)于自身定位、職業(yè)技能、發(fā)展方向的思考。就像魔獸世界中的“職業(yè)攻略”,當我們在游戲中新建一個角色時,會先去了解這個職業(yè)的特點、天賦、技能樹等信息,這樣才會在“練級”的過程中少走些彎路。
最后,作者不是從一個很高的角度來對整個成長體系進行一個全面地闡述。而是站在道路的地點,不斷摸索、不斷前進、不斷地調(diào)整自己的規(guī)劃。因此本文不算是Best Practices,勉強算是Beta version,也希望能和大家不斷交流,不斷“發(fā)版”。
算法工程師的門檻
在網(wǎng)絡上充斥著各種類似上面那樣的吸引眼球的文章標題,向你訴說著人工智能這一火的不能再火的領(lǐng)域美好的前景。仿佛我們看了兩遍西瓜書、處理了MNIST和幾朵鳶尾花、在自己的筆記本電腦上掉了幾個包、得到了和教程上一樣的結(jié)果,打了幾場比賽,我們就已經(jīng)拿到了AI領(lǐng)域的通行證、成功轉(zhuǎn)型算法工程師、接大廠offer到手軟了一樣。
但實際,現(xiàn)在AI算法工程師的就業(yè)難度和準入門檻,遠比我們想象的要高。
上一張網(wǎng)絡上流傳的“諸神黃昏”吧
可以說一點不夸張,現(xiàn)在很多大廠的校招算法崗,門檻就是海外名校/985工科院校的博士/碩士。除了擁有與學歷匹配的學術(shù)能力以外,工程基礎也要非常扎實。
有人說:“我看網(wǎng)上說,AI人才缺口非常大,我不去大廠不就行了?其他的公司要求沒那么高吧?”
要求高不高我不知道,但是有一下兩點:
此間競爭之激烈,諸如此類,雖未得其皮毛,也略見一斑。
AI企業(yè)痛點
當然,我說這些不是為了打擊大家的信心,而是要指出現(xiàn)在行業(yè)內(nèi)的痛點:AI工程化。
人工智能發(fā)展到現(xiàn)階段,已經(jīng)從實驗室中的算法走向了工程化應用的階段。但是算法落地并沒有想象中的順利,開始有越來越多諸如場景碎片化、應用成本高、實驗室場景到實際應用場景效果差距較大等問題被暴露出來,而這些也成為當前階段AI落地應用過程中新的痛點。
領(lǐng)域內(nèi)高水平的paper都是公開發(fā)表的,除了少數(shù)的核心算法,人才濟濟的AI企業(yè)很難在算法性能上與友商拉開距離。那么AI企業(yè)想要商業(yè)化,想要創(chuàng)收,行業(yè)細分領(lǐng)域縱深成了決定成敗的重要因素。需要下沉到業(yè)務領(lǐng)域,真刀真槍地進行拼殺。
在技術(shù)突破-商業(yè)化-產(chǎn)品化-工程化的階段路線中,除了技術(shù)強,接下來還有很多路要走。誰能夠更好更快地把算法從實驗室中拿出來、賣出去;更好更快地將模型交付到業(yè)務場景,真正產(chǎn)生實際的價值,讓客戶滿意,誰才能活得更久。
對于Scientist/Researcher而言,技術(shù)可以是一篇論文、一項 ImageNet 競賽的冠軍、也可以是一個重要數(shù)值(比如人臉識別準確率)的突破;但在商務側(cè)來說,論文與冠軍并不實用,如果技術(shù)無法融進安防、汽車、金融等行業(yè),變成切切實實的產(chǎn)品,客戶與合作伙伴就會拒絕買單。
對于AI企業(yè)來說,能否深入了解各行業(yè)的業(yè)務流程、業(yè)務規(guī)則、知識經(jīng)驗,進而將技術(shù)能力轉(zhuǎn)化為業(yè)務解決方案創(chuàng)造價值,是發(fā)展的保障。
那么對于我們個人來說,應該如何發(fā)展呢?
AI工程化
在《ML/DL科普向:從sklearn到tensorflow》一文中,我們談到:
還是基于這個觀點,我決定將自身的技能樹偏向企業(yè)需要的第二種人,也就是標題所提出的“AI研發(fā)工程師”。從實際的工程應用角度出來,focus人工智能項目落地的全流程以及解決方法,提高自己的AI工程化能力,以此作為個人核心競爭力。
AI項目全流程
網(wǎng)絡上很多文章描述的所謂“機器學習項目全流程”,例如:數(shù)據(jù)收集處理、特征工程、訓練模型、模型測試等等。這套流程對不對?對。但是遠遠不能滿足企業(yè)的需求。
AI項目是團隊創(chuàng)造出的具有商業(yè)價值的產(chǎn)品、服務以及交付產(chǎn)物。有著明確的需求、計劃、周期、成本、交付流程以及驗收標準。
以下以toB業(yè)務為例,對AI項目全流程進行簡單梳理。toC業(yè)務大體如此,只是將客戶替換成公司業(yè)務方即可。
核心競爭力
通過對AI項目全流程的介紹,我們將目光瞄準到“建模開發(fā)階段”的“系統(tǒng)研發(fā)”部分。雖然在上面只是一句話帶過,但是其中的工作量和技術(shù)含量不小。
提起機器學習,尤其是深度學習,大家可能會對諸如Tensorflow,Pytorch,Caffee的工具耳熟能詳。但其實在實際的機器學習的生命周期中,訓練模型(上述工具主要解決的問題)只是整個機器學習生命周期的很小一部分。
數(shù)據(jù)如何準備?如何保證線上線下一致性?模型訓練好了如何分布式部署?如何構(gòu)建HA?需要批量處理還是實時處理?實時數(shù)據(jù)如何拼接?如何對模型服務進行監(jiān)控、告警?做成PaaS還是MLaaS?
機器學習具有天然的Pipline特性,在企業(yè)需求中,大大小小的業(yè)務場景有眾多的模型,這些模型如何進行打包、處理、發(fā)布?離線訓練、批量預估、實施預估、自學習等任務類型交錯,不同建模工具Sklearn、Tensorflow,Pytorch構(gòu)造的模型如何進行整合?開發(fā)框架Spark ML、Flink ML等如何協(xié)同、對接。生產(chǎn)環(huán)境如何進行擴展和伸縮?如何支持AB Test?
為了解決這些問題,新生的開源框架層出不窮:Google自研的對接Kubernets和Tensorflow的開源平臺Kubeflow;Spark團隊打造的ML pipelines輔助工具MLflow;雅虎提供的機器學習及服務平臺BigML;阿里巴巴推出的分布式機器學習平臺SQLflow等等。眾多廠商紛紛發(fā)力,目的就是解決AI工程化應用的痛點。
這些工作都是需要一大批工程師去完成。因此,我認為了解AI工程化場景、解決方案;熟悉AI項目流程、機器學習Pipline;掌握AI系統(tǒng)研發(fā)、服務部署上線能力的工程師將會逐漸成為AI團隊的中堅力量。
技能樹
之前鋪墊了那么多,既是梳理思路,也是為接下來的系列做一個開篇。按照我的初步計劃,技能樹大概包括(不分先后):
其實這種類型的文章,比單純的學習筆記、技術(shù)文章難寫多了。一方面,拖延癥迫使我把難寫的文章放在后面寫,另一方面,強迫癥又迫使我一定要在系列前出一個開篇。其實寫到最后,總覺得核心部分還差點兒意思,沒有搔到癢處,這是因為目前我還沒有能力站在一個全局的角度對職業(yè)技術(shù)體系進行劃分,只能梳理出目前的規(guī)劃和看法。后續(xù)要還需和朋友們進行交流。
有些事情是一定要做的,縱觀一些大牛前輩,無一不是在正確的時候做了正確的事。明確自己的目標,在前進的道路上不斷微調(diào)自己的方向,這樣才能在這個競爭激烈的職業(yè)中生存下去。
接下來會有系列的技術(shù)學習筆記,考慮到學習的連貫性,前期可能是一些基礎的docker/k8s等系列,后期會研究一些開源框架。技術(shù)文章可能會枯燥乏味,知識點也缺乏新意,但是經(jīng)過自己的整理和實踐,再加上自身的理解感悟,相信會不斷完善自己的知識體系。
優(yōu)質(zhì)工程師考試問答知識庫