算法工程師的危機

9月20號訊飛AI同傳語音造假的新聞刷爆科技圈,科大訊飛股價應聲下跌3.89%(不是65.3%,標題黨文章害死人)。 吃瓜羣衆紛紛感慨,有多少人工,就有多少智能。程序員

AI概念在2015年起就紅得發紫,不管是送外賣,搞團購,賣車,或是推薦莆田醫院的,是個公司都會標榜本身是搞人工智能的。在21世紀的第二個十年,計算機專業相關的學生不說本身是搞AI算法的,同窗聚會都擡不起頭,相親機會都變少了。隨便從一摞簡歷裏抽出一份,必定會有AI,調參,CNN,LSTM這些關鍵詞。將來最賺錢的職業,必定不是天橋貼膜,而是天橋調參,50塊錢一次,一調就靈:算法

天橋調參

NIPS會議,人滿爲患,改改網絡結構,弄個激活函數就想水一篇paper; 處處都是AI算法的培訓廣告,三個月,讓你年薪45萬!在西二旗或望京的地鐵車箱裏打個噴嚏,就能讓10個算法工程師次日由於感冒請假。數據庫

某程序網站的頁面廣告

誰也不知道這波熱潮還能持續多久,但筆者做爲一線算法工程師,已經能明顯感覺到危機的味道: 以大紅大紫的圖像爲例,圖像方向簡歷堆滿了HR的辦公檯,連小學生都在搞單片機和計算機視覺。在筆者所在的公司,人工智能部門正在從早前研究院性質的組織架構分別向前臺和後臺遷移:前者進入業務部門,背上繁重的KPI,與外部競爭者貼身肉搏;後者則徹底融入基礎架構,像數據庫同樣普通和平凡。以前安逸的偏研究生活被打破, AI早已走下神壇。編程

以筆者愚見,對於通常的算法工程師,這種危機包含兩部分:一方面是來自人的競爭,大量便宜的畢業生和培訓生涌入這個行業,人才缺口被迅速填滿甚至飽和,將來的競爭會更激烈;另外一方面則是來自機器的競爭,大量算法工程師會很快被他們天天研究的算法所代替。 這二者互相惡化,AI人才市場終會變成一片紅海。微信

連小學生都會寫模型

工具和框架自己的發展,讓設計模型所需的代碼寫得愈來愈簡潔。10年前從頭用C++和矩陣庫實現梯度降低仍是有不小的門檻的,動輒上千行。而當今幾十行Keras甚至圖形化的模型構建工具,讓小學生都能設計出可用的二分類模型。強大的類庫吞噬了知識,掩蓋了內部的複雜性,但也給從業者帶來了不小的惰性。從業者的技術水平,和使用模型的複雜程度關係不大,越是大牛,用的技術更底層更make sense。網絡

不只如此,深度學習自己的性質,形成了明顯的數學鴻溝。與SVM, 決策樹不一樣,因爲模型存在大量的非線性和複雜的層次關係,且輸入信號(例如圖像,文本)也很複雜,所以嚴格的數學論證是須要極高的抽象技巧的。該方法爲何好,在什麼類型的數據上好,有時連做者都在拍腦殼,不少state of arts的方法,成了口口相傳的經驗和trick,而非嚴謹的theory。 連batch normlization(批規範化,只包含四個初中數學級別的簡單公式)爲什麼有效,都被爭論了好幾年。只有鳳毛棱角的專家,能深刻到模型最深處,用數值分析和理論證實給出嚴謹的答案。 大部分人在入門後便進入漫長的平臺期,美其名曰參數調優,實際就像太上老君煉丹同樣。架構

image.png

咱們把這種現象繪製成下面的AI學習曲線,左側是稍顯陡峭的入門期,須要學習基本的矩陣論,微積分和編程,以後即是漫長的平臺期。 隨着複雜性愈來愈高,其學習曲線也愈來愈陡峭,大部分人也就止步於此。 愈來愈易用的工具,讓曲線左側變得平坦,入門期變短,卻並不能改變右側的陡峭程度。框架

AI學習曲線

入門容易深刻難,這條曲線同時也能描述AI人才的收入水平。而真正處於危機的,莫過於夾在中間的芸芸衆人:對理論只知其一;不知其二,對工具很是依賴。可替代性很強,一旦AI浪潮過去,就知道誰是在裸泳函數

市場和業務變化愈來愈快,能有哪些核心業務,是能讓工程師靜心調個一年半載的呢?當一個從培訓學校裏出來的人都能作模型時,有多少業務能讓公司多花兩三倍的人力成本,而僅帶來1%的性能提高呢?工具

機器都能調參,要你幹嘛?

面向大衆AI科普節目,最常討論的即是「AI時代如何不被機器所取代」。很不幸,最容易且最快被取代的反而是算法工程師。

算法崗比工程崗更容易被取代。 在現有技術下,因爲業務需求的複雜性, 自動生成一套軟件App或服務幾乎不可能的(不然就已經進入強人工智能時代了),但模型太容易被形式化地定義了。根據數據性質,自動生成各個領域的端到端(end2end)的模型也逐漸在工業上可用了:圖像語音和廣告推薦的飛速發展,,直接套用便可。理論和經驗愈來愈完善,人變得愈來愈可替代。

之前須要大力氣搭建的數據迴流和預測的鏈路,已經成了公司的基礎組件,數據工程師沒事幹了; 特徵能夠自動生成和優選,特徵工程師失業了; 深度網絡採用經典結構即能知足通常業務需求,參數搜索在AutoML下變得愈來愈方便,調參工程師的飯碗也丟了 。 此處引用老闆常常說的一句話:機器都能幹了,要你幹嘛?

從目前AI熱門論文的狀況看,廣告推薦領域已經逐漸成熟,不少技巧沉澱爲一整套方法論,已進入平臺期;下一個即將被攻陷的領域應該是圖像;而文本因爲其內在的抽象性和模糊性,應該是算法工程師最後的一塊淨土,但這個門檻,五年內就會有爆發式的突破(本文發佈兩週後,谷歌BERT橫掃11項NLP任務記錄,麻蛋)。

如何最優化職業發展?

人工智能已經火了至少五年,它在將來五年是否火爆咱們不能肯定,但必定會更加兩極化:偏基礎的功能通常程序員就能搞定,像白開水同樣普通。而針對更復雜模型甚至強人工智能的研究會成爲少數人的專利。

在通常的技術公司,傳統意義的軟件開發和產品設計,遠比AI算法的需求來的多。算法永遠是錦上添花,而非雪中送炭,再好的算法也拯救不了落後的業務和商業模式。一旦經濟下行,企業首要幹掉的就是錦上添花且人力成本較高的部分。

若是你是頂級的算法專家,這樣的問題根本不需擔憂。可是,對大部分人來講,如何找到本身的梯度上升方向,實現最優的人生優化器呢?

//此處該插播廣告,報價最少1萬吧
//但沙漠之鷹就是有節操,不插,不插,就是不插。

筆者給出一些不成熟的小建議,供讀者拋磚引玉:

首先是深刻原理和底層,相似TensorFlow的核心代碼至少要讀一遍吧?就算沒有嚴格的理論基礎,最起碼也不能瞎搞啊。 切莫不能被工具帶來的易用性迷惑雙眼。要熟悉工具箱裏每種函數的品性,對流動在模型裏的數據有足夠的嗅覺,在調參初期就能對不靠譜的參數快速剪枝。

其次,工程能力不能丟,筆者見過太多作算法眼高手低的例子了(好比本身):一個文件寫全部,毫無架構和封裝;遍地是臨時方案和trick,前人挖坑後人栽;穩定性考慮不足,致使線上服務常常掛掉。 沒有工程和架構的積累,在團隊做戰時可能還不是太大問題,單兵打天下則到處碰壁。

按我的理解,作算法帶來的最大收穫是科學精神和實驗思惟,這是作工程很難培養出來的。之前看論文看了introduction和模型設計,草草地讀一下實驗結果就完事兒了。卻不知AB實驗設計極可能纔是論文的核心:實驗樣本是否無偏,實驗設計是否嚴謹,核心效果是否合理,是否能證實論文結論。也許一行代碼和一個參數的修改,背後是艱辛的思考和實驗,作算法太須要嚴謹和縝密的思惟了。即便將來不作算法,這些經驗都會是很是寶貴的財富。

再者是儘早面向領域,面向人和業務。AI自己只是工具,它的抽象性並不能讓其成爲各個領域的靈丹妙藥。 若是不能和AI專家在深度上競爭,就在業務領域專精深挖,擁有比業務人員更好的數據敏感度,成爲跨界專家。如今已經有大量AI+金融, AI+醫療,AI+體育的成功案例。 人能熟悉領域背後的數據,背後的人性,這是機器短期內沒法代替的,跨界帶來的組合爆炸,也許暗含着危機中的機會吧。

筆者一樣處在迷茫期,有想法和看法的朋友歡迎留言。最後感慨一下,一樣是80後,年齡相差無幾,有人已經是副總裁,有人帶了幾我的的小團隊,有人還在基層苦苦掙扎,軌跡在畢業時分叉,幾年後早已滄海桑田。

(歡迎關注筆者微信公衆號:沙漠之鷹)

相關文章
相關標籤/搜索