歡迎光臨
每天分享高質量文章

這是 ML 演演算法工程師最好的時代

對人工智慧而言,2017是不平凡的一年:


  • AlphaGo再勝人類

  • 騰訊宣佈進軍AI

  • 百度無人駕駛汽車上五環

  • AI教育要從娃娃抓起

  • 寒武紀成全球AI晶片首個獨角獸

  • 阿裡巴巴成立達摩院

  • 類人機器人Sophia首獲公民身份

  • 國家正式公佈人工智慧四大平臺

  • ……….


近年來,人工智慧技術在各行各業中的應用越來越普及,相關專業技術人才也是供不應求,各大公司或是創業公司不惜重金招募AI人才。


最近一項統計顯示,人工智慧相關職位平均年薪達到30萬元-60萬元,從業時間長的甚至能達到年薪百萬。下麵是來自一些招聘網站的資料統計,最高薪酬的56個崗位(60-100萬,100萬+兩檔),要求碩士以上學歷的30個,比例53%,比AI工程師中碩士學歷要求的平均比例28.6%,要高一倍。



現在可以說是機器學習演演算法工程師最好的時代,各行各業對這類人才的需求都非常旺盛。典型的包括以下一些細分行業:


推薦系統:解決的是海量資料場景下資訊高效匹配分發的問題,無論是候選集召回,還是結果排序,以及使用者畫像等等方面,機器學習都起著重要的作用。


廣告系統:和推薦系統有很多類似的地方,但也有著很顯著的差異,需要在考慮平臺和使用者之外同時考慮廣告主的利益,兩方變成了三方,使得一些問題變複雜了很多。


搜尋系統:搜尋系統的很多基礎建設和上層排序方面都大量使用了機器學習技術,而且在很多網站和 App 中,搜尋都是非常重要的流量入口,機器學習對搜尋系統的最佳化會直接影響到整個網站的效率。


風控系統:尤其是網際網路金融風控是近年來興起的機器學習的又一重要戰場。不誇張地說,運用機器學習的能力可以很大程度上決定一家網際網路金融企業的風控能力,而風控能力本身又是這些企業業務保障的核心競爭力。


所謂“工資越高,責任越大”,企業對於演演算法工程師的要求也在逐漸提高。因此,本文就來聊聊機器學習演演算法工程師的學習與成長路線,並給出一些學習的建議和資料。


機器學習演演算法工程師必備的能力項


成為一名合格的開發工程師不是一件簡單的事情,需要掌握從開發到除錯到最佳化等一系列能 力,這些能力中的每一項掌握起來都需要足夠的努力和經驗。而要成為一名合格的機器學習演演算法工程師(以下簡稱演演算法工程師)更是難上加難,因為在掌握工程師的通用技能以外,還需要掌握一張不算小的機器學習演演算法知識網路。

下麵我們就將成為一名合格的演演算法工程師所需的技能進行拆分,一起來看一下究竟需要掌握哪些技能才能算是一名合格的演演算法工程師。


01:基礎開發能力


所謂演演算法工程師,首先需要是一名工程師,那麼就要掌握所有開發工程師都需要掌握的一些能力。在大多數企業的大多數職位中,演演算法工程師需要負責從演演算法設計到演演算法實現再到演演算法上線這一個全流程的工作。


02:機率和統計基礎


機率和統計可以說是機器學習領域的基石之一,從某個角度來看,機器學習可以看做是建立在機率思維之上的一種對不確定世界的系統性思考和認知方式。學會用機率的視角看待問題,用機率的語言描述問題,是深入理解和熟練運用機器學習技術的最重要基礎之一。


在統計方面,一些常用的引數估計方法也需要掌握,典型的如最大似然估計、最大後驗估計、EM 演演算法等。這些理論和最最佳化理論一樣,都是可以應用於所有模型的理論,是基礎中的基礎。這些分佈貫穿著機器學習的各種模型之中,也存在於網際網路和真實世界的各種資料之中,理解了資料的分佈,才能知道該對它們做什麼樣的處理。


03:開發語言和開發工具


近年來 Python 可以說是資料科學和演演算法領域最火的語言,主要原因是它使用門檻低,上手容易,同時具有著完備的工具生態圈,同時各種平臺對其支援也比較好。但是在模型訓練方面,有一些更加專註的工具可以給出更好的訓練精度和效能,典型的如 LibSVM、Liblinear、XGBoost 等。大資料工具方面,目前離線計算的主流工具仍然是Hadoop和Spark,實時計算方面 Spark Streaming 和 Storm 也是比較主流的選擇。


04:機器學習理論(最重要)


雖然現在開箱即用的開源工具包越來越多,但並不意味著演演算法工程師就可以忽略機器學習基礎理論的學習和掌握。這樣做主要有兩方面的意義:


掌握理論才能對各種工具、技巧靈活應用,而不是隻會照搬套用。只有在這個基礎上才能夠真正具備搭建一套機器學習系統的能力,並對其進行持續最佳化。否則只能算是機器學習搬磚工人,算不得合格的工程師。出了問題也不會解決,更談不上對系統做最佳化。


學習機器學習的基礎理論的目的不僅僅是學會如何構建機器學習系統,更重要的是,這些基礎理論裡面體現的是一套思想和思維樣式,其內涵包括機率性思維、矩陣化思維、最最佳化思維等多個子領域,這一套思維樣式對於在當今這個大資料時代做資料的處理、分析和建模是非常有幫助的。如果你腦子裡沒有這套思維,面對大資料環境還在用老一套非機率的、標量式的思維去思考問題,那麼思考的效率和深度都會非常受限。


機器學習演演算法工程師學習資源推薦


統計學習,基礎理論方面,如VC維、正則化、bias-variance tradeoff、最最佳化方法、資訊理論等。推薦李航老師的《統計學習方法》,入門必讀。


有監督學習,如線性回歸、logistic、決策樹、knn、SVM、神經網路、樸素貝葉斯等。推薦周志華老師的西瓜書《機器學習》和《機器學習實戰》,經典中的經典。


無監督學習,如EM演演算法、聚類、競爭學習等,可以參考《機器學習》的部分章節


深度學習,如CNN、RNN、LSTM等,推薦Goodfellow的《深度學習》,DL的聖經。


強化學習,近年來比較火,AlphaGo的核心演演算法,推薦Richard Sutton的《強化學習》


從我個人的學習經驗來看,讀書最好和影片教程結合著看。其中重點給大家推薦4個:


  • Stanford Machine Learning by Andrew Ng

    經典中的經典(http://cs229.stanford.edu/)


  • NG在網易雲課堂的深度學習課程:https://mooc.study.163.com/smartSpec/detail/1001319001.htm


  • Neural Network for Machine Learning by Geoffrey Hinton:Hinton老先生開的唯一一門課,這門課程絕對是有紀念意義的:http://www.cs.toronto.edu/~tijmen/csc321/


  • Coursera上的各種課程,包括微積分、線性代數、程式語言等等,有興趣的同學前往可以自行學習。


如果覺得自個兒學習累,想找些引路人,可以聽一些免費的人工智慧入門直播課,比如網易雲課堂接下來的兩場免費公開課。


3月15日和21日,網易雲課堂準備了2場關於人工智慧入門的直播公開課(免費),從數學基礎和演演算法角度,帶你走近人工智慧。



如果你想要加入這次人工智慧直播課,可以掃描下方二維碼,獲取上課方式,還有人工智慧數學基礎預習資料和寒小陽老師的情人節詞雲原始碼哦~

為了保證學習體驗,

本次“人工智慧學習群”限時開放喲!

數量有限,欲報從速哦!


除了直播公開課外,網易雲課堂聯合稀牛學院共同打造的《人工智慧工程師免費體驗課》也在同步啟動中。感興趣的小夥伴請掃描上方二維碼,進群領取《人工智慧工程師》體驗課~

贊(0)

分享創造快樂