1.定義
機器學習算法,或者說“算法工程師”這個職位名稱里的“算法”,并不是計算機系本科課程《算法與數(shù)據(jù)結構》里那個算法。那門課里講的,是排序、查找這類”確定性算法”;而這里我們說的,是用統(tǒng)計方法對數(shù)據(jù)進行建模的”概率性算法”。
1.1分類
算法工程師分為兩類。其中一類是偏研究型的算法工程師,例如復現(xiàn)paper,改善模型,發(fā)paper,出專利,這一類人才大都是科研大佬。第二類則是更加貼近業(yè)務的算法工程師,不如稱為「算法應用工程師」。這一類同學主要是與業(yè)務同學進行搭檔,通過現(xiàn)有的一些成熟模型來幫助業(yè)務同學解決問題。
2.主要工作
理想中的算法工程師:提出假設-》收集數(shù)據(jù)-》訓練模型-》解釋結果。
實際中的算法工程師:提出假設-》收集數(shù)據(jù)-》預處理-》預處理-》訓練模型-》調試-》調試-》重新收集數(shù)據(jù)-》預處理-》收集更多數(shù)據(jù)-》調試-》調試-》調試-》…-》放棄。
每天最重要的就是跑數(shù)據(jù)!這不是段子,而是事實。為什么“高大上”的算法工程師實際上是個數(shù)據(jù)民工,要尋找這種理想與現(xiàn)實的差距的原因,首先要理解一個事實:只有人能夠理解數(shù)據(jù),機器不能。不管我們用什么機器學習算法——無論是LR,SVM,k-means,EM——對于它們來說,輸入數(shù)據(jù)都是一堆浮點數(shù)組成的矩陣而以(如果說的更本質一點,只是一堆01序列)。如果有一個特征是“小時”,而它出現(xiàn)了25,任何一個智商正常的人類都能明白,這是一個錯誤,然后在數(shù)據(jù)清洗的時候把這樣的數(shù)據(jù)排除。但是機器就無法理解這一點。要具備小時的概念,又要理解什么是時間,一天有多少個小時…機器怎么能自動化完成這樣的數(shù)據(jù)清洗工作?更進一步,如果人發(fā)現(xiàn)“小時”這個特征中大部分數(shù)據(jù)是0到12,而混入少量13(但13的數(shù)量又不是太少以至不能被當成離群點排除),人就會懷疑,是不是使用了12小時制而13是一個錯誤。機器目前是無法做到這一點的。
一位算法工程師對自己工作的反思,寫得挺實在的
3.進階之路
在機器學習領域,算法工程師腳下的進階之路是清晰的:當你掌握了工具、會改造模型,進而可以駕馭新問題的建模,就能成長為最優(yōu)秀的人才。
20萬、50萬、100萬的算法工程師,到底有什么區(qū)別?
4.傳統(tǒng)模型VS深度學習模型
優(yōu)秀的算法工程師都是不用深度學習的
講的是為什么有部分傳統(tǒng)的算法工程師不愿意使用深度學習算法,雖然題目有點嘩眾取寵,但是問題角度還是挺值得深思的。
-
工程師
+關注
關注
59文章
1590瀏覽量
69485
發(fā)布評論請先 登錄

硬件工程師看了只會找個角落默默哭泣#硬件工程師 #MDD #MDD辰達半導體 #產(chǎn)品經(jīng)理 #軟件工程師

如何成為一名合格的KaihongOS南向驅動開發(fā)工程師
如何成為一名合格的KaihongOS北向應用開發(fā)工程師
如何成為一名嵌入式軟件工程師?

如何成為嵌入式開發(fā)工程師?
AN-354: 應用工程師問答——1幾個問題

如何成為一名合格的南向驅動開發(fā)工程師
如何成為一名合格的北向應用開發(fā)工程師

為什么嵌入式驅動開發(fā)工程師可以拿高薪?

評論