算法工程師

作者:王昭
鏈接:https://www.zhihu.com/question/47557150/answer/106917321出處。

算法工程師方向也各有不同吧,說下信號處理主要是調研也就是看paper,算法仿真和驗證,也就是寫代碼,最後還有調試了。

發佈於 2016-06-20​ 

王守崑有意 NLP/對話機器人方向的朋友請聯繫我編輯推薦270 人贊同了該回答

所謂算法工程師,大致的工作範圍是算法研究+工程實現兩部分,不同的人在不同的環境下各有側重。

第一部分,在目前國內互聯網公司的環境裏,說算法研究,其實更多的工作是調研、比較、挑選、適配、評估和決策等等,與其他技術領域的技術選型和規劃並無本質差別。
從學術意義上來看,很難說是創新或設計新算法;但從實際的效果來看,這種做法是經濟而高效的,一切圍繞場景需求和實際的使用效果出發,利用有限的資源取得最大收益。並且,雖然每一個環節的創新性不強,但綜合各個環節的效果,未必就不是真正的創新。專利領域還有發明專利和實用新型兩種呢,恰到好處的解決實際問題,可以稱得上是創新。
另外,如果你發現面臨的問題沒有先例可循,現有的算法都不合適,並且,你覺得這是個真正的有意義的問題,你也有能力取得突破,那麼恭喜你,你站在巨大機會的邊緣。具體例子請參見二十年前 PageRank 算法誕生的過程--- --- 當然,也有人覺得 PageRank 算法算不得創新,你覺得呢...

第二部分,工程化的部分其實是絕大部分算法工程師每天的日常工作,收集數據、清洗、結構化、模型實現、debug、模型訓練、觀察 bad case、調整參數、重來一遍、再重來一遍... 
沒有經歷過手工清洗數據肉眼觀察參數被低級 bug 折磨得寢食難安的算法工程師不足以言人生。
和開發工程師稍有不同的是,算法工程師的產出週期更長,節奏更慢,尤其是在接觸到一個全新問題的時候,所需的前置準備時間更多。但無論如何,工程師就是工程師,要對自己的產出負責。

以上是普通的算法工程師在一般場景下的工作狀態,除此之外還可能有各種例外的情況,比如有偏底層算法研究和探索的,當然更合適的稱呼是科學家或研究員;比如有偏計算平臺架構設計和工程實現的,他們和系統工程師走得更近一些;還有偏數據和分析方向的,等等。

無論如何,有一點可以確定:不看 paper,不寫代碼,算不上合格的算法工程師。

發佈於 2016-06-18

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章