精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

20萬、50萬、100萬的算法工程師,到底有什么區(qū)別

t1PS_TechSugar ? 來源:工程師李察 ? 2019-01-26 10:44 ? 次閱讀

公元七世紀(jì),在車遲國國家氣象局組織的一次求雨活動(dòng)中,虎力、鹿力、羊力三位大仙成功地祈下甘霖,于水火中救了黎民。老國王雖然不明就里,卻從此尊他們?yōu)閲鴰煟畹澜虨楣玺?/p>

本世紀(jì),算法工程師們的境遇也差不多:早些年,信奉糙快猛主義的大佬們覺得他們飽食終日、無所用心,沒工作只好在學(xué)校混博士,靠數(shù)據(jù)上的障眼法裝神弄鬼。可是,隨著去年AlphaGo大破李世石,大佬們在心底喊出“我操”的同時(shí),慌不擇路地把各種搞劫持、送外賣的生意包裝成人工智能,并紛紛請來幾位懂算法的國師加持。雖然他們對(duì)國師們所做的事智商上并不理解,卻虔誠地希望他們快點(diǎn)兒求下雨來。

于是,算法工程師的身價(jià)也水漲船高了。各門派工程師不論過去練的是java、php還是excel,都放棄了最好語言的爭論,抄起了深度學(xué)習(xí),發(fā)誓重新修煉成算法工程師。前些天,還有人在知乎上問我:20萬、50萬、100萬的算法工程師,到底有什么區(qū)別?

這樣充滿銅臭味兒的問題,讓我十分欣慰。雖說在北京,20萬已經(jīng)基本不可能招到靠譜兒的算法工程師了,還是姑且用上面的數(shù)字做個(gè)參照,談?wù)勊惴üこ處煹娜齻€(gè)層次吧。(這里說的算法,并不是計(jì)算機(jī)系本科課程《算法與數(shù)據(jù)結(jié)構(gòu)》里那個(gè)算法。那門課里講的,是排序、查找這類"確定性算法";而這里我們說的,是用統(tǒng)計(jì)方法對(duì)數(shù)據(jù)進(jìn)行建模的"概率性算法"。)下文中會(huì)提到一些算法和模型,但不過是為了舉例說明概念,無需深究,有興趣鉆研的朋友可以自己查閱資料

第一層次"Operating":會(huì)使用工具

這個(gè)層次的工程師,對(duì)常用的模型比較熟悉,來了數(shù)據(jù)以后,好歹能挑個(gè)合適的跑一下。

達(dá)到這個(gè)層次,其實(shí)門檻不高。早些年,您只要掌握了什么叫LDA、哪叫SVM,再玩過幾次libnear、mahout等開源工具,就可以拿到數(shù)據(jù)后跑個(gè)結(jié)果出來。到了深度學(xué)習(xí)時(shí)代,這件事兒似乎就更簡單了:管它什么問題,不都是拿神經(jīng)網(wǎng)絡(luò)往上堆嘛!最近,經(jīng)常會(huì)遇到一些工程師,成功地跑通了Tensorflow的demo后,興高采烈地歡呼:我學(xué)會(huì)深度學(xué)習(xí)了,我明天就統(tǒng)治人類了!

這事要真這么簡單,我是茄子。任憑你十八般開源工具用的再熟,也不可能搞出個(gè)戰(zhàn)勝柯潔的機(jī)器人來。這里要給大家狠狠澆上一盆冷水:進(jìn)入這個(gè)領(lǐng)域的人,都要先了解一個(gè)“沒有免費(fèi)的午餐定理”,這個(gè)定理的數(shù)學(xué)表達(dá)過于晦澀,我們把它翻譯成并不太準(zhǔn)確的文藝語言:

如果有兩個(gè)模型搞一次多回合的比武,每個(gè)回合用的數(shù)據(jù)集不同,而且數(shù)據(jù)集沒什么偏向性,那么最后的結(jié)果,十有八九是雙方打平。

管你是普通模型、文藝模型還是2B模型,誰也別瞧不起誰。考慮一種極端情況:有一個(gè)參賽模型是“隨機(jī)猜測”,也就是無根據(jù)地胡亂給個(gè)答案,結(jié)果如何呢?對(duì),還是打平!所以,請?jiān)僖膊灰獑枴熬垲愑檬裁此惴ㄐЧ谩边@樣的傻問題了。

這就很尷尬了!因?yàn)檎莆樟艘欢涯P筒⑶視?huì)跑,其實(shí)并沒有什么卵用。當(dāng)然,實(shí)際問題的數(shù)據(jù)分布,總是有一定特點(diǎn)的,比方說人臉識(shí)別,圖中間怎么說都得有個(gè)大圓餅。因此,問“人臉識(shí)別用什么模型好”這樣的問題,就有意義了。而算法工程師的真正價(jià)值,就是洞察問題的數(shù)據(jù)先驗(yàn)特點(diǎn),把他們表達(dá)在模型中,而這個(gè),就需要下一個(gè)層次的能力了。

會(huì)使用工具,在算法工程師中僅僅是入門水平,靠這兩把刷子解決問題,就好比殺過兩只雞就想做腹腔手術(shù)一樣,不靠譜兒程度相當(dāng)高。如果不是在薪酬膨脹嚴(yán)重的互聯(lián)網(wǎng)界,我覺得20萬是個(gè)比較合理的價(jià)格。

第二層次"Optimization":能改造模型

這個(gè)層次的工程師,能夠根據(jù)具體問題的數(shù)據(jù)特點(diǎn)對(duì)模型進(jìn)行改造,并采用相應(yīng)合適的最優(yōu)化算法,以追求最好的效果。

不論前人的模型怎么美妙,都是基于當(dāng)時(shí)觀察到的數(shù)據(jù)先驗(yàn)特點(diǎn)設(shè)計(jì)的。比如說LDA,就是在語料質(zhì)量不高的情況下,在PLSA基礎(chǔ)上引入貝葉斯估計(jì),以獲得更加穩(wěn)健的主題。雖說用LDA不會(huì)大錯(cuò),但是要在你的具體問題上跑出最好的效果,根據(jù)數(shù)據(jù)特點(diǎn)做模型上的精準(zhǔn)改造,是不可避免的。

互聯(lián)網(wǎng)數(shù)據(jù)這一現(xiàn)象更加明顯,因?yàn)闆]有哪兩家公司擁有的數(shù)據(jù)是相似的。百度的點(diǎn)擊率模型,有數(shù)十億的特征,大規(guī)模的定制計(jì)算集群,獨(dú)特的深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),你能抄么?抄過來也沒用。用教科書上的模型不變應(yīng)萬變,結(jié)果只能是刻舟求劍。

改造模型的能力,就不是用幾個(gè)開源工具那么簡單了,這需要有兩方面的素養(yǎng):

一、深入了解機(jī)器學(xué)習(xí)的原理和組件。機(jī)器學(xué)習(xí)領(lǐng)域,有很多看似不那么直接有用的基礎(chǔ)原理和組件。比方說,正則化怎么做?什么時(shí)候應(yīng)該選擇什么樣的基本分布?(如下表) 貝葉斯先驗(yàn)該怎么設(shè)?兩個(gè)概率分布的距離怎么算?當(dāng)你看到前輩高人把這些材料烹調(diào)在一起,變成LDA、CNN這些成品菜肴端上來的時(shí)候,也要想想如果自己下廚,是否了解食材,會(huì)不會(huì)選擇和搭配。僅僅會(huì)吃幾個(gè)菜,說出什么味道,離好廚師差的還遠(yuǎn)著呢。

二、熟練掌握最優(yōu)化方法。機(jī)器學(xué)習(xí)從業(yè)者不懂最優(yōu)化,相當(dāng)于武術(shù)家只會(huì)耍套路。這就跟雷公太極和閆芳大師一樣,實(shí)戰(zhàn)起來一定是鼻青臉腫。管你設(shè)計(jì)了一個(gè)多牛逼的模型,如果無法在有限的計(jì)算資源下找出最優(yōu)解,那么不過是個(gè)花瓶罷了。

最優(yōu)化,是機(jī)器學(xué)習(xí)最、最、最重要的基礎(chǔ)。你要知道,在目標(biāo)函數(shù)及其導(dǎo)數(shù)的各種情形下,應(yīng)該如何選擇優(yōu)化方法;各種方法的時(shí)間空間復(fù)雜度、收斂性如何;還要知道怎樣構(gòu)造目標(biāo)函數(shù),才便于用凸優(yōu)化或其他框架來求解。而這些方面的訓(xùn)練,要比機(jī)器學(xué)習(xí)的模型還要扎實(shí)才行。

拿大家以為"以不變應(yīng)萬變"的深度學(xué)習(xí)舉個(gè)例子。用神經(jīng)網(wǎng)絡(luò)處理語音識(shí)別、自然語言處理這種時(shí)間序列數(shù)據(jù)的建模,RNN(見上圖)是個(gè)自然的選擇。不過在實(shí)踐中,大家發(fā)現(xiàn)由于“梯度消失”現(xiàn)象的存在,RNN很難對(duì)長程的上下文依賴建模。而在自然語言中,例如決定下面的be動(dòng)詞是“is”還是“are”這樣的問題,有可能往前翻好多詞才能找到起決定作用的主語。怎么辦呢?天才的J. Schmidhuber設(shè)計(jì)了帶有門結(jié)構(gòu)的LSTM模型(見下圖),讓數(shù)據(jù)自行決定哪些信息要保留,那些要忘掉。如此以來,自然語言的建模效果,就大大提高了。大家初看下面兩張RNN與LSTM的結(jié)構(gòu)對(duì)比,面對(duì)憑空多出來的幾個(gè)門結(jié)構(gòu)可能一頭霧水,唯有洞徹其中的方法論,并且有扎實(shí)的機(jī)器學(xué)習(xí)和最優(yōu)化基礎(chǔ),才能逐漸理解和學(xué)習(xí)這種思路。

當(dāng)然,LSTM這個(gè)模型是神來之筆,我等對(duì)此可望不可及。不過,在這個(gè)例子里展現(xiàn)出來的關(guān)鍵能力:根據(jù)問題特點(diǎn)調(diào)整模型,并解決優(yōu)化上的障礙,是一名合格的算法工程師應(yīng)該追求的能力。年薪50萬能找到這樣的人,是物有所值的。

第三層次"Objective":擅定義問題

這個(gè)層次的工程師(哦,似乎叫工程師不太合適了),扔給他一個(gè)新的實(shí)際問題,可以給出量化的目標(biāo)函數(shù)。

當(dāng)年,福特公司請人檢修電機(jī),斯坦門茨在電機(jī)外殼畫了一條線,讓工作人員在此處打開電機(jī)迅速排除了故障。結(jié)賬時(shí),斯坦門茨要1萬美元,還開了個(gè)清單:畫一條線,1美元;知道在哪兒畫線,9999美元。

同樣的道理,在算法領(lǐng)域,最難的也是知道在哪里畫線,這就是對(duì)一個(gè)新問題構(gòu)建目標(biāo)函數(shù)的過程。而有明確的量化目標(biāo)函數(shù),正是科學(xué)方法區(qū)別于玄學(xué)方法、神學(xué)方法的重要標(biāo)志。

目標(biāo)函數(shù),有時(shí)能用一個(gè)解析形式(Analytical form)寫出來,有時(shí)則不能。比方說網(wǎng)頁搜索這個(gè)問題,有兩種目標(biāo)函數(shù):一種是nDCG,這是一個(gè)在標(biāo)注好的數(shù)據(jù)集上可以明確計(jì)算出來的指標(biāo);另一種則是人工看badcase的比例,顯然這個(gè)沒法用公式計(jì)算,但是其結(jié)果也是定量的,也可以作為目標(biāo)函數(shù)。

定義目標(biāo)函數(shù),初聽起來并沒有那么困難,不就是制定個(gè)KPI么?其實(shí)不然,要做好這件事,在意識(shí)和技術(shù)上都有很高的門檻。

一、要建立“萬般皆下品、唯有目標(biāo)高”的意識(shí)。一個(gè)團(tuán)隊(duì)也好、一個(gè)項(xiàng)目也好,只要確立了正確的、可衡量的目標(biāo),那么達(dá)到這個(gè)目標(biāo)就只是時(shí)間和成本的問題。假設(shè)nDCG是搜索的正確目標(biāo)函數(shù),那么微軟也好、Yahoo!也好,遲早也能追上Google,遺憾的是,nDCG這個(gè)目標(biāo)是有點(diǎn)兒問題的,所以后來這兩家被越拉越遠(yuǎn)。

所謂“本立而道生”:一個(gè)項(xiàng)目開始時(shí),總是應(yīng)該先做兩件事:一是討論定義清楚量化的目標(biāo)函數(shù);二是搭建一個(gè)能夠?qū)δ繕?biāo)函數(shù)做線上A/B測試的實(shí)驗(yàn)框架。而收集什么數(shù)據(jù)、采用什么模型,倒都在其次了。

二、能夠構(gòu)造準(zhǔn)確(信)、可解(達(dá))、優(yōu)雅(雅)的目標(biāo)函數(shù)。目標(biāo)函數(shù)要盡可能反應(yīng)實(shí)際業(yè)務(wù)目標(biāo),同時(shí)又有可行的優(yōu)化方法。一般來說,優(yōu)化目標(biāo)與評(píng)測目標(biāo)是有所不同的。比如說在語音識(shí)別中,評(píng)測目標(biāo)是“詞錯(cuò)誤率”,但這個(gè)不可導(dǎo)所以沒法直接優(yōu)化;因此,我們還要找一個(gè)“代理目標(biāo)”,比如似然值或者后驗(yàn)概率,用于求解模型參數(shù)。評(píng)測目標(biāo)的定義往往比較直覺,但是要把它轉(zhuǎn)化成一個(gè)高度相關(guān),又便于求解的優(yōu)化目標(biāo),是需要相當(dāng)?shù)慕?jīng)驗(yàn)與功力的。在語音建模里,即便是計(jì)算似然值,也需要涉及Baum-Welch等比較復(fù)雜的算法,要定義清楚不是簡單的事兒。

優(yōu)雅,是個(gè)更高層次的要求;可是在遇到重大問題時(shí),優(yōu)雅卻往往是不二法門。因?yàn)椋挥衅恋目蚣懿鸥咏鼏栴}的本質(zhì)。關(guān)于這點(diǎn),必須要提一下近年來最讓人醍醐灌頂?shù)拇笞鳌蓪?duì)抗網(wǎng)絡(luò)(GAN)。

GAN要解決的,是讓機(jī)器根據(jù)數(shù)據(jù)學(xué)會(huì)畫畫、寫文章等創(chuàng)作性問題。機(jī)器畫畫的目標(biāo)函數(shù)怎么定?聽起來是一頭霧水。我們早年做類似的語音合成問題時(shí),也沒什么好辦法,只能找人一句句聽來打分。令人拍案叫絕的是,Ian GoodFellow在定義這個(gè)問題時(shí),采取了下圖的巧妙框架:

這樣一個(gè)目標(biāo),優(yōu)雅得象個(gè)哲學(xué)問題,卻又實(shí)實(shí)在在可以追尋。當(dāng)我看到這個(gè)式子時(shí),頓時(shí)覺得教會(huì)機(jī)器畫畫是個(gè)不太遠(yuǎn)的時(shí)間問題了。如果你也能對(duì)這樣的問題描述感到心曠神怡,就能體會(huì)為什么這才是最難的一步。

一個(gè)團(tuán)隊(duì)的定海神針,就是能把問題轉(zhuǎn)化成目標(biāo)函數(shù)的那個(gè)人——哪怕他連開源工具都不會(huì)用。100萬找到這樣的人,可真是撿了個(gè)大便宜。

在機(jī)器學(xué)習(xí)領(lǐng)域,算法工程師腳下的進(jìn)階之路是清晰的:當(dāng)你掌握了工具、會(huì)改造模型,進(jìn)而可以駕馭新問題的建模,就能成長為最優(yōu)秀的人才。沿著這條路踏踏實(shí)實(shí)走下去,100萬并不是什么問題。什么?您說還有300萬的呢?這個(gè)不用眼熱,人家只不過把你寫代碼的時(shí)間都用來跳槽了而已。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 工程師
    +關(guān)注

    關(guān)注

    59

    文章

    1566

    瀏覽量

    68450
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4601

    瀏覽量

    92673
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3178

    瀏覽量

    48731

原文標(biāo)題:20萬、50萬、100萬的算法工程師,到底有什么區(qū)別?

文章出處:【微信號(hào):TechSugar,微信公眾號(hào):TechSugar】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    數(shù)字用表與模擬用表的區(qū)別

    在電子工程和維修領(lǐng)域,用表是一種不可或缺的工具。它能夠測量電壓、電流、電阻等多種電氣參數(shù)。根據(jù)顯示方式的不同,用表可以分為數(shù)字用表和模擬
    的頭像 發(fā)表于 11-01 10:20 ?294次閱讀

    RTOS與Linux到底有什么區(qū)別

    很多做嵌入式開發(fā)的小伙伴都存在這樣的疑惑:RTOS與Linux到底有什么區(qū)別
    的頭像 發(fā)表于 10-29 09:53 ?341次閱讀

    毫伏表與用表區(qū)別

    毫伏表與用表在多個(gè)方面存在顯著的區(qū)別,這些區(qū)別主要體現(xiàn)在它們的用途、測量范圍、精度、輸入阻抗以及工作頻率等方面。
    的頭像 發(fā)表于 10-03 16:23 ?882次閱讀

    FPGA算法工程師、邏輯工程師、原型驗(yàn)證工程師什么區(qū)別

    ,共同進(jìn)步。 歡迎加入FPGA技術(shù)微信交流群14群! 交流問題(一) Q:FPGA中的FPGA算法工程師、FPGA邏輯工程師、FPGA原型驗(yàn)證工程師三者
    發(fā)表于 09-23 18:26

    功放和運(yùn)放到底什么區(qū)別

    想請問一下功放和運(yùn)放到底什么區(qū)別,感覺只要接一個(gè)小負(fù)載,運(yùn)放的輸出電流也可以很大啊?到底有什么區(qū)別
    發(fā)表于 09-10 07:00

    NE5532和NE5532A什么區(qū)別

    NE5532和NE5532A到底有什么區(qū)別,手冊翻了2遍沒看出來,麻煩指導(dǎo)下。
    發(fā)表于 08-20 08:31

    指針用表和數(shù)字用表什么區(qū)別

    指針用表和數(shù)字用表都是用于測量電壓、電流、電阻等電氣參數(shù)的儀器,它們在電氣維修、檢測和電子制作等領(lǐng)域有著廣泛的應(yīng)用。
    的頭像 發(fā)表于 05-13 17:43 ?2970次閱讀

    模擬用表與數(shù)字用表的區(qū)別

    用表,作為電子工程師和技術(shù)人員日常工作中不可或缺的工具,用于測量電壓、電流、電阻等電學(xué)參數(shù)。隨著電子技術(shù)的不斷發(fā)展,用表也經(jīng)歷了從模擬到數(shù)字的演進(jìn)。模擬用表和數(shù)字
    的頭像 發(fā)表于 05-13 17:14 ?1269次閱讀

    能表和搖表什么區(qū)別

    能表(也稱用表或多用電表)和搖表(兆歐表)是兩種不同類型的電氣測量工具,它們在電氣檢測中發(fā)揮著各自獨(dú)特的作用。
    的頭像 發(fā)表于 05-11 11:27 ?1996次閱讀

    指針式用表和數(shù)字用表什么區(qū)別

    指針式用表和數(shù)字用表在多個(gè)方面存在顯著的區(qū)別,這些區(qū)別主要體現(xiàn)在以下幾個(gè)方面。
    的頭像 發(fā)表于 05-09 17:22 ?1616次閱讀

    數(shù)字用表和安培計(jì)有什么區(qū)別

    數(shù)字用表和安培計(jì)在功能和應(yīng)用上存在明顯的區(qū)別
    的頭像 發(fā)表于 05-09 17:13 ?553次閱讀

    EWSTM8-2201 or 3101安裝說明上有的說選“是”,有的說選“否”,二者到底有什么區(qū)別?對(duì)工程什么影響?

    the installation. ......... 安裝說明上有的說選“是”,有的說選“否”,二者到底有什么區(qū)別?對(duì)工程什么影響?
    發(fā)表于 04-28 08:08

    企業(yè)老工程師和高校老師區(qū)別

    電子工程師硬件
    電子發(fā)燒友網(wǎng)官方
    發(fā)布于 :2024年02月28日 17:50:00

    AD7280AWBSTZ和AD7280ABSTZ之間到底有什么區(qū)別

    替代嗎?在網(wǎng)上找到的兩個(gè)芯片的相關(guān)數(shù)據(jù)都是一樣的,AD7280AWBSTZ和AD7280ABSTZ之間到底有什么區(qū)別
    發(fā)表于 01-08 06:36

    鉗形用表和一般用表什么區(qū)別

    鉗形用表和一般用表什么區(qū)別? 鉗形用表和一般用表是電子測量儀器中常見的兩種類型,它們在
    的頭像 發(fā)表于 01-03 15:29 ?1589次閱讀