<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          科普:算法崗是什么?我適不適合算法崗?選什么方向的算法崗?

          共 3317字,需瀏覽 7分鐘

           ·

          2022-02-26 18:09

          大家好,我是千與千尋,一名專注于后端研發(fā)與算法工程領(lǐng)域的程序員,最近我的作息快趕上yp哥的作息了,不過習慣就好。

          昨天晚上深夜回家發(fā)了個pyq,我大致表達的意思:誰說算法崗不加班的?活沒干完的前提下,你不得瘋狂加班的,跟似的干?



          然后有粉絲說:什么,算法崗也要加班嗎?不是說算法崗相對開發(fā)崗來說,可以輕松一些嗎?加班沒開發(fā)崗那么恐怖嗎?


          先直接說結(jié)論:你們可能是對算法崗有什么誤解了...


          千尋目前是大廠一名研發(fā)工程師,雖然是研發(fā),但是工作內(nèi)容,后端研發(fā),算法工程應(yīng)用都有所涉及,我就自身的經(jīng)歷給大家介紹一下算法崗的工作內(nèi)容,算法崗的種類,以及什么樣的人適合做算法崗,對于想轉(zhuǎn)行算法崗的朋友一些建議。


          算法崗是什么?

          算法崗是大中型企業(yè)在已經(jīng)有完整的盈利閉環(huán)系統(tǒng)的基礎(chǔ)上,需要對其盈利模式進行深度的優(yōu)化,使得系統(tǒng)可以更加具有針對性的服務(wù)用戶目的的工程人員。


          算法崗什么工作內(nèi)容?


          之前的文章中我曾經(jīng)列舉過算法崗與開發(fā)崗位的具體工作內(nèi)容差別,算法崗為包含算法工程師,算法研究員。


          算法研究員:算法研究員的hc相對較少,一般僅僅在特大廠的AI lab以及AI四小龍以及獨角獸的公司會有一定的需求,當然這僅僅是針對互聯(lián)網(wǎng)公司的情況進行描述的,如果是進入國企或者研究所,對前沿的技術(shù)研究需求還是很多的。


          算法研究員主要的是進行傳統(tǒng)模型準確率以及性能的深度打破,在目前的SOTA之下,SSD在COCO數(shù)據(jù)集上的檢測MAP準確率目前是75.8%,那么研究員就會想盡各種tricks來提高模型的準確性,改進網(wǎng)絡(luò)結(jié)構(gòu),或者特征提取方式,達到打破目前的最高準確率,從而發(fā)表頂會論文。


          算法工程師:算法工程師相對研究員來說,更加接近實際的業(yè)務(wù),將算法實際的用到工程中,從而發(fā)揮算法的效果,一般來說在實際的業(yè)務(wù)生產(chǎn)中,我們所使用的算法模型也都是穩(wěn)定的模型,進行遷移學習,從而可以達到速度與準確率的完美結(jié)合。算法工程師相對研究員崗位來說,并不需要實際的模型突破,很對時候達到80%-90%基本就可以使用了,與研發(fā)進行配合聯(lián)調(diào),將算法模型的調(diào)用接口化,用于工程需求中。


          算法崗位的方向


          算法崗位的方向還是很多的,最大的范圍之下,可以劃分為計算視覺,自然語言處理,搜索廣告推薦算法,語音算法,方向太多,很難做到所有的都面面俱到。我對我所研究兩個方向,進行一下我的心得的分享,推薦派單算法,以及計算視覺算法(CV)



          計算機視覺:




          其實在之前作為的計算機視覺的算法工程師,我在計算機視覺方面還是有自己的一些見解,具體可以說明為計算機視覺的算法工程師,我自己的一個感覺,為了防止杠精,我說明僅僅代表我自己的觀點,我個人其實不太看好CV方向,原因如下:


          1.看似方向廣,就業(yè)崗位多,事實上市場比較飽和,toC的大模型相對來說有些已經(jīng)投入使用,然而對于toB的業(yè)務(wù),AI四小龍獨角獸公司,相對來說,已經(jīng)做得十分完善,市場沒那么龐大。


          2.技術(shù)相對來說比較完善,同時技術(shù)的重要性并不是很舉足輕重,對于互聯(lián)網(wǎng)的核心盈利方式——平臺+廣告的模式之下,圖像的地位其實并不是很重要,“說白了,不是能增加資本家資產(chǎn)的東西


          3.圖像識別,目標檢測,商湯和曠視做的很強,一般應(yīng)用于工業(yè)界,生成對抗,圖像分割等相對來說用于互聯(lián)網(wǎng)的短視頻中,抖音快手中的魔法表情使用就是用GAN完成的


          計算機視覺是算法崗中人很多的方向,因為很多本科生的專業(yè)是自動化,機械電子,通信工程的同學都會多多少少接觸到數(shù)字圖像,所以在研究生期間也會繼續(xù)研究圖像,也就作為CV算法崗。


          推薦系統(tǒng)算法:


          說到算法崗的大頭,也就是最為出名的"搜廣推",先說一個結(jié)論:如果現(xiàn)在想轉(zhuǎn)行做算法崗,或者是高年級的本科生以及碩士生還沒用找到算法崗的方向,那我建議你轉(zhuǎn)推薦算法。


          剛剛我們說了互聯(lián)網(wǎng)公司的兩大盈利方式:


          1.建立中間平臺,收取中介費,例如滴滴出行,以及美團點評等。通過建立電商的平臺,進行商家與用戶之間的匹配,促進消費。


          2.掌握一定的流量,進行精準的廣告投放。

          以推薦算法的結(jié)構(gòu)來給大家進行一下詳細講解:




          在以上我繪制了一個很簡單的電商推薦系統(tǒng)的架構(gòu)圖,其中包括每一種流程層的算法邏輯流向。


          召回層:召回預計算目標,從海量數(shù)據(jù)中多路召回預排序目標,簡單來說,選擇進入推薦模型的種子號選手,例如購買牙膏需求,牙膏的品牌以及商店有上千萬家,肯定不能所有的進行遍歷,因此會通過人群畫像獲取數(shù)據(jù)的預計算目標,模型計算量有百萬降低到百級。


          過濾層:召回層進行召回的預計算目標一定會比最終推薦的目標數(shù)量要高,原因需要進行"過濾",比如存在重復推薦,或者無效推薦(商家關(guān)門,或者斷貨)


          精排層:經(jīng)過過濾層的過濾,進入推薦算法模型,進行推薦得分計算,以傳統(tǒng)的機器學習算法為例,在實際的業(yè)務(wù)系統(tǒng)中會存在多種復雜業(yè)務(wù)情形,簡單的機器學習模型根本無法滿足復雜的業(yè)務(wù)需求,常用的機器學習的模型是集成模型例如xgboot模型,通過采取多種關(guān)鍵特征進行決策回歸



          以上就是精排層的推薦系統(tǒng)的算法整體框架圖,將數(shù)據(jù)集放入模型進行模型訓練,算法工程的主要職責就是上下的兩個方框:改進模型結(jié)構(gòu)與優(yōu)化特征工程。


          改進網(wǎng)絡(luò)模型結(jié)構(gòu): 以xgboost為例,其內(nèi)部包括多個決策樹,決策樹的數(shù)量,以及學習率的大小都可以改進特征的學習率,從而在同等數(shù)量的特征之下可以達到更高的效果


          優(yōu)化特征工程:相比于改進網(wǎng)絡(luò)結(jié)構(gòu),特征工程則是通過增加特征的種類,特征的數(shù)量,比如從原來年齡+性別來推薦商品,到最后使用年齡+性別+愛好數(shù)碼進行商品的推薦,顯然在增加了愛好的特征后可以進行更加精準的推薦,以此類推,優(yōu)化模型的性能。


          混排層:相比于精排層,混排層的不是單單注重準確率,而是有意去放出"負樣本",也就是用精準推薦去帶動其他的推薦,比如推薦買大米的商品,順帶推薦豆油,從而獲得更多的收益。


          強規(guī)則:根據(jù)運行嗎,比如有一些需要進行強制的置頂,是進行人機交互的主要窗口。


          算法崗的性能提高驗證測試


          1.對于算法的模型測試來說,線下使用可以使用測試數(shù)據(jù)集進行測試,測試改進模型的準確率。


          2.但是實際的工業(yè)生產(chǎn)環(huán)境中更多所使用是線上AB測試,其具體的架構(gòu)圖:



          線上AB測試,其原理是將算法模型的不同改進版本,進行的對照,畢竟這實踐才是檢驗真理的唯一標準,只有線下模型準確率再好,一到線上就崩也是涼涼啊,因此需要模擬100%的線上業(yè)務(wù)情形,所以進行”控制變量法"進行算法模型的性能對比。


          采用流量分流閥,將全部的流量進行等分為4份,基礎(chǔ)桶為最基本模型,等于模型的basekline,其他的幾個版本的對照桶中放入改進的模型,在同樣的流量之下,對比模型的優(yōu)劣。具體的對比指標有些復雜,總之采用控制變量法進行模型的對照。


          算法崗適合什么樣的人?選擇什么樣的算法崗比較好?


          算法崗位相對于來說,競爭力比較強,因為算法崗的薪資是互聯(lián)網(wǎng)食物鏈的頂端,對標金融領(lǐng)域的券商投資銀行崗位,所以算法崗的競爭壓力會大一些,不過薪資與競爭壓力是成正比的,也是值得的。


          算法崗適合喜歡做研究實驗的高年級本科生或者碩士研究生,算法崗需要不短的追最新的論文,努力將學術(shù)界或者工業(yè)界的最新成功轉(zhuǎn)化為實際的業(yè)務(wù)系統(tǒng)中去。


          算法崗的性能提高驗證測試

          對于技術(shù)有執(zhí)著熱愛的比較適合算法崗,其實程序員這個領(lǐng)域都差不多,都是需要終生學習的打工人。


          針對以上我提到的兩種算法崗位,可以說目前計算機視覺算法崗的需求迭代更類似開發(fā)崗位,而推薦系統(tǒng)的”搜索廣告推薦“可能更加有研究的價值。


          最后無論算法崗也好,研發(fā)崗也很好,好好做哪行都行的,程序員領(lǐng)域各司其職,不存在鄙視鏈,一起沖!


          我是千與千尋,我們下期見!


          ???



          END




          往期精彩回顧




          瀏覽 97
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  91人妻人人澡人人爽人人精品乱 | 视频站欧美日韩 | 操淫视频 | 中国操逼网 | 成人黄片免费网站 |