1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        在做算法工程師的道路上,你掌握了什么概念或技術(shù)使你感覺自我提升突飛猛進(jìn)?

        共 8430字,需瀏覽 17分鐘

         ·

        2022-03-10 12:07

        點(diǎn)擊上方視學(xué)算法”,選擇加"星標(biāo)"或“置頂

        重磅干貨,第一時(shí)間送達(dá)


        作者丨金瀛若愚、桔了個(gè)仔、DLing(已授權(quán))
        來源丨h(huán)ttps://www.zhihu.com/question/436874654
        編輯丨極市平臺(tái)
        禁止二次轉(zhuǎn)載,轉(zhuǎn)載須經(jīng)原作授權(quán)

        導(dǎo)讀

        ?

        算法工程師作為近幾年非?;馃岬膷徫?,近幾年校招也開放了大量的算法崗位。作為想要在這個(gè)崗位上不斷前進(jìn)不斷深入的人,有哪些tips或者經(jīng)驗(yàn)可以傳授給這條賽道上的各位呢?本文匯總了知乎上三個(gè)優(yōu)質(zhì)的回答,希望能給各位一點(diǎn)啟發(fā)。


        #?回答一

        作者:金瀛若愚

        來源鏈接:https://www.zhihu.com/question/436874654/answer/1808192248

        在科研中訓(xùn)練到的思維方式,是我最寶貴的成長。

        一. 反饋的閉環(huán)

        在一個(gè)研究任務(wù)中,我首先嘗試了方法A,沒搞定,于是改用方法B。組里大哥問:為什么改方法B。我說A沒效果,或許B能work。大哥繼續(xù)問:為什么A不work。我說或許A不適合這個(gè)問題?大哥說:當(dāng)你有一個(gè)嘗試,你一定要知道它為什么work以及為什么不work。每次不work了你就換另一個(gè)方法,那另一個(gè)方法就能work嗎?這不是科研,是賭博,是瞎試。你只有知道為什么一個(gè)方法有效或不有效,何時(shí)有效何時(shí)無效,你才能增進(jìn)對(duì)這個(gè)問題的理解,然后基于此提出有價(jià)值的策略。

        我的思考是,既然做了一件事,就一定要得到反饋,要搞清楚哪里做得好哪里不好,這樣這個(gè)嘗試所投入的時(shí)間才是有效的。不然就是在碰運(yùn)氣,如同做題不對(duì)答案,如同訓(xùn)練模型不算loss不做backprop。

        二. 把煉丹技術(shù)推廣到生活中

        機(jī)器學(xué)習(xí)的很多技術(shù)都與現(xiàn)實(shí)世界的概念相互呼應(yīng)。

        在深度學(xué)習(xí)里,模型掉入局部最優(yōu),就是生活中的內(nèi)卷,就是在狹窄的賽道上追求極致。擺脫內(nèi)卷就是跳出局部尋求全局最優(yōu)的過程。破局之道是嘗試新事物,或增加訓(xùn)練數(shù)據(jù)。

        與人交流、觀察和學(xué)習(xí)他人可以避免閉門造車。與他人交流就是深度學(xué)習(xí)里的增加訓(xùn)練數(shù)據(jù)。進(jìn)入好的學(xué)校好的公司就是提高訓(xùn)練樣本的質(zhì)量:在label準(zhǔn)確時(shí),學(xué)得輕松。

        前面講的“構(gòu)建閉環(huán)”,就是關(guān)注backprop時(shí)的梯度。你不能攢了特別多事情后再去反思或?qū)で蠓答?,這個(gè)反饋鏈太長,要么梯度消失,要么梯度爆炸,無法有效學(xué)習(xí)。類似對(duì)loss的求導(dǎo)過程:你必須清晰地看到因果鏈條,才能做到從結(jié)果倒推原因,進(jìn)而優(yōu)化自己。

        已經(jīng)做得很好的事情沒必要重復(fù)。此時(shí)應(yīng)該挑戰(zhàn)新的項(xiàng)目,保持自己在學(xué)習(xí)的狀態(tài)。這就是hard data mining. 遇到壞人后就認(rèn)為全人類沒救了,是overfitting。對(duì)應(yīng)在機(jī)器學(xué)習(xí)里,在unbalanced dataset上學(xué)習(xí),要想到用weighted loss。

        挫折易使人變得復(fù)雜、內(nèi)心沖突多。如果能用簡單的形態(tài)存在,我們或許應(yīng)警惕過分復(fù)雜。機(jī)器學(xué)習(xí)里,解決小問題硬上大模型是一種粗暴且沒技術(shù)含量的辦法。用不必要大的模型是對(duì)探求事物本質(zhì)的逃避,科研如此,生活亦然。你以為模型練成了,其實(shí)它學(xué)的是shortcut,因此有泛化能力差的問題:variance大,不robust(內(nèi)心不穩(wěn))。同時(shí),模型太復(fù)雜就不容易理解,遇到bug不容易診斷病因(內(nèi)心不易平穩(wěn)和愉悅)。但避免復(fù)雜不是要當(dāng)巨嬰,不是抗拒成長。當(dāng)任務(wù)復(fù)雜、訓(xùn)練數(shù)據(jù)也大的時(shí)候,就必須要上大模型。核心是模型復(fù)雜度(心智復(fù)雜度)要與任務(wù)復(fù)雜度和數(shù)據(jù)量(閱歷)匹配,才是健康的。

        三. 交流,交流,再交流

        組里的女神姐姐教導(dǎo)我:“做research要多和人交流,多去聽別人的paper reading,也把你讀到的論文和想法講給別人聽。因?yàn)樵谟懻摰倪^程里你會(huì)意識(shí)到未曾發(fā)現(xiàn)的問題。嘗試給人講明白的過程里,你的思路也會(huì)越發(fā)清晰。” 道理我都懂,每次我頭點(diǎn)得像敲鼓一樣,但也沒堅(jiān)持做到。

        為什么做不到?大概是心理包袱,總想著搞出一個(gè)牛X閃閃的東西后再展示給別人,不然覺得丟臉?;蛘呖傆幸环N再試一下就能搞定的錯(cuò)覺。這種錯(cuò)覺和我炒股票的風(fēng)格如出一轍。

        直到后來我看到越來越多平淡無奇的項(xiàng)目都逆襲了,我理解到,事物的發(fā)展都有必然的過程,要尊重其發(fā)展規(guī)律,不要總想直接搞個(gè)大新聞。高效的科研要主動(dòng)的尋求身邊的資源,爭取讓良師益友把時(shí)間花在自己身上,如果自己不主動(dòng)爭取,再照顧你的人也不能像親媽一樣耳提面命,他們畢竟不好逼迫你。具體的,應(yīng)該多把自己讀懂的論文講給別人,在你給他人創(chuàng)造價(jià)值的同時(shí),你也使他們幫助你這件事更容易了:他們只有懂了你懂的,才能給你最有效的建議,你才能借用他們的頭腦思考。

        我發(fā)現(xiàn)當(dāng)我積極主動(dòng)之后,身邊的人都默默支持起我來。稻盛和夫說:“心不喚物,物不至”。

        四. 「焦慮動(dòng)力」模型

        勤奮上進(jìn)、自我驅(qū)動(dòng)、有行動(dòng)力,本質(zhì)是內(nèi)心動(dòng)力充沛的精神狀態(tài)。動(dòng)力不足時(shí),我們懶惰、拖延、自控力差。用向量分解的思維模型,我們可以看清「動(dòng)力」的本質(zhì)。

        Willpower=動(dòng)力; Anxiety=焦慮;Pressure=壓力;Passion=熱情
        • 動(dòng)力的分量是 1.焦慮/壓力 和 2.熱情。動(dòng)力是二者的合力

        帶著上面這句話,我們可以舉出奮斗者的兩種極端狀況。一種由焦慮主導(dǎo),被績效和deadline催促,常處于不安和壓力之中。希望獲得他人的認(rèn)可,如果有了過失,會(huì)感到煎熬;另一種是熱情主導(dǎo)的。專注、投入,不易為外界干擾和誘惑所動(dòng)。在做事的過程中,能收獲成就感和喜悅,認(rèn)為工作與個(gè)人追求比較重合。

        警惕“動(dòng)力”過分依賴“焦慮和壓力”的狀況。這個(gè)動(dòng)力來源并不持久和可靠。隨著年齡增加,體力和心力會(huì)下降,且隨著閱歷增加,閾值變高,很多事會(huì)不再覺得重要。那時(shí)就會(huì)失去動(dòng)力。

        分量之間存在代償。盲人的耳朵往往很敏銳。如果動(dòng)力過多依賴焦慮和壓力,則留意到熱情和樂趣就更難??赡懿⒉皇悄悴粺釔?,你只是太緊張了而已。

        五. 獨(dú)立思考

        我對(duì)獨(dú)立思考這件事體會(huì)最深的就是決定要不要讀PhD時(shí)。拿到UW的錄取后,因?yàn)槲④浗M里就很多博士、教授,我自然就去請(qǐng)教他們問要不要讀博,畢竟五年是一筆不小的投入。當(dāng)時(shí)有一部分人說值得一讀,另一些人說專心做事業(yè)可能有更大回報(bào)。

        有趣的是,當(dāng)我簽下offer后,所有的人,不論之前給了什么建議,都由衷恭喜和認(rèn)可我的決定,并和我暢想畢業(yè)后Dr. Jin走向人生(996)巔峰的畫面。

        那之前他們的建議是真心的嗎?當(dāng)然是真心的。簽offer后的認(rèn)可也是真心的。于是我理解到,很多事情,做與不做都能找出道理。他人給建議時(shí),也會(huì)考慮到我們的情緒,讓我們不論怎樣選擇都有臺(tái)階下。因此,我們要保持獨(dú)立思考,要對(duì)自己的決定負(fù)全責(zé)。

        建議的推導(dǎo)邏輯比結(jié)論重要。他人建議的正確用法是讓自己看問題多個(gè)角度,減少信息差,而不是直接取其結(jié)論,讓他人代為做選擇。

        六. 把工作當(dāng)做一個(gè)二階優(yōu)化過程

        不管title是算法工程師還是應(yīng)用科學(xué)家,產(chǎn)出都是代碼及其體現(xiàn)的知識(shí)產(chǎn)權(quán)。我們工作的過程就是優(yōu)化這個(gè)代碼及知識(shí)產(chǎn)權(quán)的過程。但這太basic。

        我們不僅要優(yōu)化產(chǎn)品,也要優(yōu)化產(chǎn)出產(chǎn)品的過程:一階優(yōu)化,是優(yōu)化代碼質(zhì)量。二階的優(yōu)化,是優(yōu)化工作過程,這個(gè)工作過程是代碼質(zhì)量更上一層的原因,是原因的原因,是二階導(dǎo)數(shù)。

        類比一下:為了走得遠(yuǎn),你可以優(yōu)化速度(路程的原因是速度),更進(jìn)一步你可以優(yōu)化加速度(速度的原因是加速度)。不斷向上溯源,能解決根本問題、通用問題。

        回到優(yōu)化工作流程上,我們不斷問自己:在我工作的過程中,有哪些是重復(fù)工作?有哪些可以更高效的完成?有哪些可以被拎出來整理出可以復(fù)用的,于是后面就不再需要花心思重做或者檢查其bug?經(jīng)過一兩年我攢出了一套自己的代碼庫,很多被重復(fù)使用的部分(如用matplotlib畫各種圖,各種數(shù)據(jù)預(yù)處理)就都可以直接copy paste。這就形成了復(fù)利效應(yīng)——時(shí)間越長,這些整理出來的代碼片段就創(chuàng)造越高的價(jià)值。

        七. 學(xué)習(xí)些銷售意識(shí)

        銷售是一門大學(xué)問,值得廣大猿類學(xué)習(xí)。

        • 像設(shè)計(jì)產(chǎn)品外包裝一樣設(shè)計(jì)履歷

        一個(gè)暢銷的產(chǎn)品必須有個(gè)特色,這個(gè)特色與其他競(jìng)品形成了差異化競(jìng)爭,才能有自己的市場(chǎng),賣上個(gè)好價(jià)格。比如始祖鳥這個(gè)牌子的衣服顏值很一般,但它的防水面料好,就拿下了戶外市場(chǎng)。一個(gè)中庸的什么都不差也什么都不突出的產(chǎn)品就很難被你記住。同時(shí),產(chǎn)品的優(yōu)秀比不上品牌的優(yōu)秀,如果產(chǎn)品的價(jià)值凝練成了品牌,那這個(gè)品牌本身就值高價(jià)。比如我們會(huì)為了logo付費(fèi)。

        我們的職業(yè)發(fā)展,說得現(xiàn)實(shí)些,也是希望自己在市場(chǎng)上有個(gè)好價(jià)格。為此,我們不需樣樣精通,但必須有一個(gè)具有代表性的,能拿得出手的技能。比如,我就是要和所有人不同,去學(xué)遠(yuǎn)古技術(shù)匯編語言。那只要市場(chǎng)出現(xiàn)了對(duì)這個(gè)技能的需求,你就能有極大的定價(jià)權(quán)。當(dāng)我們深耕一個(gè)領(lǐng)域很久,又寫了很多優(yōu)質(zhì)的博客,那你的名字就成為了品牌,可以幫助公司招賢納士,等等。

        我的老板兼導(dǎo)師也曾說:你做paper要想怎樣把你的paper賣出去。你要站在消費(fèi)者角度想,他們?yōu)槭裁匆〞r(shí)間去讀你的文章?你的論文有沒有創(chuàng)意,能給他們帶來什么價(jià)值?寫作語言,圖表美觀程度,就是賣相。這和銷售很像。

        我們的簡歷就是商品的成分表——在決定選擇什么項(xiàng)目時(shí),不妨想想這會(huì)在簡歷里留下一行什么樣的記錄,會(huì)不會(huì)幫你抬高自己的職業(yè)價(jià)值。

        • 用產(chǎn)品思維規(guī)劃項(xiàng)目

        科研項(xiàng)目的立項(xiàng)過程和產(chǎn)品策劃非常像。第一步都是要做survey,了解清楚目前技術(shù)有哪些分支,是什么歷史契機(jī)促成了某個(gè)技術(shù)的出現(xiàn)(比如有了新的數(shù)據(jù)集),不同的技術(shù)優(yōu)點(diǎn)缺點(diǎn)在哪(A更準(zhǔn)確,B速度更快,C不需要很多訓(xùn)練數(shù)據(jù),等等)。然后了解這個(gè)任務(wù)的定義,metric(關(guān)鍵指標(biāo))是什么,也就是搞清楚游戲規(guī)則,知道大家在比些什么,頭部的玩家都是誰等等。不了解清楚,后面的一切都是錯(cuò)的。

        導(dǎo)師們經(jīng)常問我的一個(gè)問題就是“這個(gè)task的upper bound是什么”。我說我知道state-of-the-art是什么,還要知道upper bound嗎?導(dǎo)師說你在開始一個(gè)嘗試前,要知道還有多少空間留給你去做。如果SOTA(目前最好的)已經(jīng)比較接近upper bound了,你就很難再往上去攻了,你可能找個(gè)別的任務(wù)更有成就感。你跳進(jìn)一個(gè)賽道前,要對(duì)其發(fā)展到了什么階段有些概念。

        八. 關(guān)于忙碌

        在上面各種催人上進(jìn)的內(nèi)容之后,我再來分享一個(gè)故事來結(jié)尾。

        一次公司的一位高層前輩見面,臨走前我問他能不能給我個(gè)過來人的建議。

        我以為他會(huì)給我講一些勤奮工作的態(tài)度、人生規(guī)劃的經(jīng)驗(yàn)、或者給我打打雞血這種內(nèi)容。

        而前輩只是指了指辦公室書架上的一排沒拆封的樂高跟我說,我給你一個(gè)建議,就是年輕時(shí)多花點(diǎn)時(shí)間在自己的嗜好上。我年輕時(shí)喜歡樂高,但因?yàn)橐恢泵τ诠ぷ?,并沒有花很多時(shí)間在我這個(gè)小小的嗜好上。現(xiàn)在我時(shí)間多了,但對(duì)樂高也不再有那種熱情了,現(xiàn)在只把他們擺起來,包裝都沒拆。所以年輕的時(shí)候,你可以花點(diǎn)時(shí)間在自己的愛好上。不能只有忙碌的工作。

        很片面,歡迎指正。


        #?回答二

        作者:桔了個(gè)仔

        來源鏈接:https://www.zhihu.com/question/436874654/answer/1846044111

        很片面,歡迎指正。
        謝邀。這道題我猶豫了很久,三個(gè)月前就放草稿箱里了,一直沒答的原因是,感覺這些年好像沒有什么瞬間讓我感覺自己水平突飛猛進(jìn),感覺這些年的進(jìn)步都是慢慢進(jìn)步的,好像沒有「突飛猛進(jìn)」的時(shí)候。昨天帶我入行的同事離職了,在部門的送別儀式上,我們回憶起我第一天入職時(shí)我有么的「小白」,后來怎么獨(dú)擋一面。于是我在想,如果要總結(jié)一個(gè)讓我的水平提升的關(guān)鍵「概念」或者「技術(shù)」,那會(huì)是什么。
        于是我回顧這些年的技術(shù)歷程。說實(shí)話,在我開始搞算法后,我日均代碼量遠(yuǎn)遠(yuǎn)低于我之前做游戲時(shí),甚至有的時(shí)候,幾天都不寫一行代碼。當(dāng)然,我并不能代表所有算法工程師,我雖然也是做數(shù)據(jù)科學(xué)工作,但我需要和客戶保持聯(lián)系,理解需求。但無可否認(rèn),代碼量少的這些日子,我反而做的事情更靠譜,讓我更有成就感。
        我于是總結(jié)出一句話:
        解決問題不要于拘泥于技術(shù)。
        當(dāng)然,僅僅一句話的話,大家可能看得一頭霧水,我展開說說吧。
        不要拘泥于技術(shù)分為三層:

        1. 不要執(zhí)著于使用最新的技術(shù)。

        有的人想走技術(shù)專家的路線,那非常好。每天看看arxiv,看看最新的SOTA,那是一個(gè)好習(xí)慣。但不要太頻繁的變更技術(shù)方案。你那種想把產(chǎn)品做到極致的思維,我能理解,我也有過,但你真正做產(chǎn)品落地了,會(huì)發(fā)現(xiàn),產(chǎn)品是一個(gè)系統(tǒng),你的技術(shù)方案變更可能會(huì)對(duì)其他模塊造成影響。
        舉個(gè)例子,我們的模型是XGBoost,不算很復(fù)雜吧?由于我們給多個(gè)客戶部署過系統(tǒng),我們知道在什么樣的硬件條件下運(yùn)行時(shí)間是多少。例如在每日1萬條數(shù)據(jù)的情況下,我們用AWS的t2.xlarge實(shí)例,運(yùn)行時(shí)間是1~2小時(shí),符合客戶要求。但如果你看到最新的paper提出了一個(gè)新模型,決定要采用的話,除了你的技術(shù)方案可行性要得到驗(yàn)證,你的技術(shù)方案對(duì)系統(tǒng)運(yùn)行時(shí)間的影響也要重新評(píng)估。如果你的方案確實(shí)效果更好,但服務(wù)器成本高出幾倍,我們?cè)撊绾握f服客戶?這都是是一環(huán)扣一環(huán)的,實(shí)際可能遇到的情況可能比我說的要復(fù)雜得多。這,就是系統(tǒng)的世界。
        統(tǒng)計(jì)建模并不是為了獲得完美的預(yù)測(cè)能力,而是用最小的必要的模型來實(shí)現(xiàn)最大的預(yù)測(cè)能力。
        更何況,很多情況下,使用更復(fù)雜的方案未必是最合適的方案。我之前寫過一個(gè)回答,講了哪些深度學(xué)習(xí)效果不如傳統(tǒng)方法。
        有哪些深度學(xué)習(xí)效果不如傳統(tǒng)方法的經(jīng)典案例?:https://www.zhihu.com/question/451498156/answer/1802577845
        在這個(gè)回答里,我引用了那個(gè)著名的「電風(fēng)扇吹香皂盒」的段子。
        某大企業(yè)引進(jìn)了一條香皂包裝生產(chǎn)線,結(jié)果發(fā)現(xiàn)這條生產(chǎn)線有個(gè)缺陷:常常會(huì)有盒子里沒裝入香皂。總不能把空盒子賣給顧客啊,他們只得請(qǐng)了一個(gè)學(xué)自動(dòng)化的博士后設(shè)計(jì)一個(gè)方案來分揀空的香皂盒。博士后拉起了一個(gè)十幾人的科研攻關(guān)小組,綜合采用了機(jī)械、微電子、自動(dòng)化、X射線探測(cè)等技術(shù),花了90萬,成功解決了問題。每當(dāng)生產(chǎn)線上有空香皂盒通過,兩旁的探測(cè)器會(huì)檢測(cè)到,并且驅(qū)動(dòng)一只機(jī)械手把空皂盒推走。中國南方有個(gè)鄉(xiāng)鎮(zhèn)企業(yè)也買了同樣的生產(chǎn)線,老板發(fā)現(xiàn)這個(gè)問題后大為發(fā)火,找了個(gè)小工來說“你他媽給老子把這個(gè)搞定,不然你給老子爬走?!毙」ず芸煜氤隽宿k法他花了190塊錢在生產(chǎn)線旁邊放了一臺(tái)大功率電風(fēng)扇猛吹,于是空皂盒都被吹走了。
        但這里需要說明的是,不執(zhí)著于使用最新技術(shù),不代表不關(guān)注最新技術(shù)。有的時(shí)候,公司的需求是一回事,但我們的技術(shù)進(jìn)步又是一回事,如果我們不care最新技術(shù),那么當(dāng)我們跳槽時(shí),就會(huì)很吃虧。

        2. 不要只用技術(shù)

        技術(shù)不是職業(yè)生涯的全部,尤其是對(duì)于做商業(yè)產(chǎn)品的算法工程師。作為算法工程師,尤其是做商業(yè)產(chǎn)品的,其實(shí)有很多時(shí)候,技術(shù)并不能解決所有問題;有的時(shí)候,技術(shù)雖然能解決,但是中策,甚至下策,而上策不一定需要使用技術(shù)。代替技術(shù)的方法有下面四種,一種比一種境界高。
        用金錢代替技術(shù)。?例如你的產(chǎn)品上線了,發(fā)現(xiàn)在線上模型訓(xùn)練總是不成功,發(fā)現(xiàn)是服務(wù)器性能不夠,那么你第一件事是優(yōu)化你的算法還是花錢擴(kuò)充服務(wù)器?如果對(duì)于商業(yè)價(jià)值很高的項(xiàng)目,宕機(jī)一天損失可能遠(yuǎn)遠(yuǎn)超過服務(wù)器開支,這時(shí)候,你第一件事買服務(wù)器,優(yōu)化的工作放到日后。
        用溝通代替技術(shù)。?很多人經(jīng)常方案進(jìn)展到一半推到重來的情況(設(shè)計(jì)師尤甚)。對(duì)于算法工程師,如果溝通不充分就直接開工,那么很容易做無用功。舉個(gè)大家都能理解的例子,例如有個(gè)銀行讓你開發(fā)個(gè)算法識(shí)別哪些客戶可能逾期,但由于銀行數(shù)據(jù)敏感,不能直接給你,只給了你data schema讓你自己模擬數(shù)據(jù),你說沒問題,回去花了一周寫了個(gè)模型,準(zhǔn)確率(accuracy)是90%,很不錯(cuò),結(jié)果在客戶那一上線,準(zhǔn)確率99%,你更高興了,但很快你發(fā)現(xiàn),客戶的數(shù)據(jù)label 0:1的比例是1:99,你準(zhǔn)確率99%和瞎猜沒區(qū)別。事實(shí)上,如果你和客戶溝通得當(dāng),早點(diǎn)理解清楚數(shù)據(jù)情況,你就不會(huì)采用accuracy這個(gè)評(píng)價(jià)指標(biāo)。
        用管理代替技術(shù)。?這是區(qū)別高階工程師和普通工程師的重要能力。一個(gè)項(xiàng)目,如果管理得當(dāng),那么可以讓一線開發(fā)人員輕松點(diǎn)的同時(shí)完成更多工作。
        • 有的工作是另一個(gè)工作的基礎(chǔ),完成A再完成B的總時(shí)間可能小于先完成B再完成A。
        • 工作是永遠(yuǎn)做不完的,即使都是技術(shù)工作,也有價(jià)值不同。好的技術(shù)管理人員應(yīng)該讓大家先做價(jià)值高的。
        用眼光代替技術(shù)。?做到這個(gè)級(jí)別,基本就是CTO級(jí)別了,充分了解現(xiàn)有技術(shù)優(yōu)缺點(diǎn),知道什么地方應(yīng)該投入新技術(shù),什么地方應(yīng)該采用舊技術(shù),什么地方甚至不需要技術(shù)。但畢竟我還沒做到這層,這里就沒什么經(jīng)驗(yàn)可以分享了。
        更何況,對(duì)于算法工程師,除了技術(shù)能力,還有很多能力是必須的,如下圖,這些能力,組成了算法工程師的「落地能力」
        圖來自我之前寫的一個(gè)被知乎日?qǐng)?bào)收錄了的回答。這里就不再重復(fù)其內(nèi)容了。
        算法工程師的落地能力具體指的是什么?:https://www.zhihu.com/question/304695682/answer/1720475610

        3.不要只關(guān)注自己領(lǐng)域的技術(shù)

        拋開非技術(shù)的能力,來集中講講技術(shù)。對(duì)于技術(shù)能力,你是否以為你關(guān)注最新論文,會(huì)調(diào)參,就完事了。沒這么簡單。我每次講算法工程師工作內(nèi)容時(shí),都會(huì)貼這張圖
        中間那個(gè)小小的幾乎都快看不見的黑塊,你放大圖片,會(huì)發(fā)現(xiàn)里面寫著ML Code,這就是「算法」的部分。當(dāng)然,別被這個(gè)圖嚇到,這不一定全是你的工作,這里是一個(gè)團(tuán)隊(duì)的任務(wù),這個(gè)團(tuán)隊(duì)可能是兩人的團(tuán)隊(duì),也可能是幾十人的團(tuán)隊(duì),但可以肯定的是,無論你在哪個(gè)公司,一個(gè)算法工程師都不太可能只做純「算法」,不要忘了「工程師」三個(gè)字。
        我作為一個(gè)算法工程師,你以為我只寫python,偶爾加點(diǎn)scala?不,你可能想不到,我還寫vba。我們客戶是銀行,他們有內(nèi)部的模型驗(yàn)證團(tuán)隊(duì),我們需要根據(jù)他們提供的模板來生成模型性能報(bào)表,而且這個(gè)報(bào)表模板還不能往外網(wǎng)傳,那怎么辦?只能用VBA寫個(gè)Excel宏腳本自動(dòng)生成報(bào)表唄唄。畢竟他們提供的可編程環(huán)境就只剩excel了,至于python什么的,由于沒聯(lián)網(wǎng),pip install啥都不行。
        所以我建議,作為算法工程師,多學(xué)習(xí)下周邊技術(shù),不要僅僅只會(huì)調(diào)參,看論文。周邊技術(shù)是指能為你快速實(shí)現(xiàn)驗(yàn)證與部署的技術(shù),并非所有技術(shù)都要學(xué)習(xí)。你作為一個(gè)算法工程師,學(xué)習(xí)linux,可以方便你部署模型;學(xué)習(xí)spark,能方便你快速處理大數(shù)據(jù);這樣你有什么新的idea都可以快速驗(yàn)證而不用再求數(shù)據(jù)工程師幫你反復(fù)做ETL。
        但,吾生也有涯,而知也無涯。以有涯隨無涯,殆已!?但你作為算法工程師,去學(xué)習(xí)安卓app開發(fā),似乎就有點(diǎn)不必要了,除非你確定用得上,或者你是你們公司唯一的程序員(這種情況建議跳槽)。
        這就是我在自我提升路上的一點(diǎn)小總結(jié)。



        #?回答三

        作者:DLing

        來源鏈接:https://www.zhihu.com/question/436874654/answer/1744174731

        突飛猛進(jìn)不敢當(dāng),但是從事深度學(xué)習(xí)圖像算法這幾年來,卻是也有一些感慨。


        1. 數(shù)據(jù)放在第一位,成也數(shù)據(jù),敗也數(shù)據(jù)。深刻認(rèn)識(shí)數(shù)據(jù)的重要性,把數(shù)據(jù)集維護(hù)好,數(shù)據(jù)量夠了,再談后面的模型優(yōu)化,數(shù)據(jù)都不干凈,用再好的模型,也不會(huì)出好的結(jié)果。


        2. 啟動(dòng)開發(fā)前,多問問自己有沒有了解這個(gè)業(yè)務(wù),目前定的方案還有沒有盲點(diǎn)沒有考慮到,畢竟啟動(dòng)開發(fā)需要準(zhǔn)備各種數(shù)據(jù)集,耗時(shí)長且需要一定的人員和經(jīng)濟(jì)投入,如果開發(fā)過程中或者測(cè)試階段發(fā)現(xiàn)方案不合適,這時(shí)候推倒重來的話,就DT了。


        3. 算法工程師并不只是調(diào)包俠,煉丹師,而是一個(gè)綜合要求很高的崗位。要訓(xùn)的了模型;寫的了邏輯;優(yōu)化的了算法性能,時(shí)刻把運(yùn)行速度,準(zhǔn)確率,召回率,顯存利用率,顯存占用,cpu利用率,內(nèi)存占用,并發(fā)路數(shù)等等記在心里;還得深刻了解業(yè)務(wù),目前的方案合不合適?產(chǎn)品定的指標(biāo),給的需求有沒有坑?完成這些需求,要選什么樣的硬件最劃算,可不可以少幾個(gè)模型,畢竟看數(shù)據(jù)也很費(fèi)眼;


        4. 多實(shí)驗(yàn),多記錄,多對(duì)比,勤討論,勤匯報(bào),勤迭代。這一行多少還是有點(diǎn)玄學(xué)的,很多問題沒有很強(qiáng)的理論可以支撐,靠經(jīng)驗(yàn)的地方很多,這個(gè)模型效果好,很多情況也不是推導(dǎo)出來的,而是實(shí)驗(yàn)出來的,有時(shí)候想破腦袋,也沒有動(dòng)手起幾個(gè)模型效果來的快。平時(shí)多跟同事同行討論討論,搞不好費(fèi)了你好幾根頭發(fā)的問題,就被別人解決過呢?


        5. 多看行業(yè)頂會(huì)論文,多追追大牛的博客,思路打開了,落地也就簡單很多。


        以上是我從事算法行業(yè)幾年來的一點(diǎn)點(diǎn)體會(huì),不是具體到看了某一篇論文,學(xué)了某一個(gè)框架,熟悉了某一個(gè)語言給自己帶來的提升。但就我而言,這些對(duì)崗位認(rèn)知的更新,做事套路的更新對(duì)自己的提升有時(shí)候要強(qiáng)于某一項(xiàng)具體的技術(shù)。今天把這些體會(huì)分享出來,希望能符合題主預(yù)期。


        點(diǎn)個(gè)在看 paper不斷!

        瀏覽 14
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            双乳奶水饱满少妇呻吟电影 | 黄色国产在线 | 大 香 蕉 久 久 | 欧美性猛交XXX | 国产亚洲色婷婷久久99 | 亚洲国产成人无码影院 | 国模杨依粉嫩蝴蝶150p | 欧美在线视频网站 | 精品国产乱码一区二区三区小黄书 | 婷婷激情四射 |