在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

成為算法工程師前需要知道什么

工程師人生 ? 來源:工程師吳畏 ? 2019-02-15 11:26 ? 次閱讀

1. 前言

本來這篇標(biāo)題我想的是算法工程師的技能,但是我覺得要是加上機(jī)器學(xué)習(xí)在標(biāo)題上,估計(jì)點(diǎn)的人會(huì)多一點(diǎn),所以標(biāo)題成這樣了,呵呵,而且被搜索引擎收錄的時(shí)候多了一個(gè)時(shí)下的熱門詞,估計(jì)曝光也會(huì)更多點(diǎn)。不過放心,文章沒有偏題,我們來說正經(jīng)的。

今天就說說機(jī)器學(xué)習(xí)這個(gè)最近兩年計(jì)算機(jī)領(lǐng)域最火的話題,這不是一篇機(jī)器學(xué)習(xí)的技術(shù)文章,只是告訴大家機(jī)器學(xué)習(xí)里面的坑實(shí)在是太多,而且很多還沒入門或者剛剛?cè)腴T的朋友們,其實(shí)在你們前面是個(gè)大坑,如果你勵(lì)志要在這條路上走下去的話,請做好心理準(zhǔn)備。

2. 我們學(xué)習(xí)機(jī)器學(xué)習(xí)的目的

實(shí)話實(shí)說,目前大部分人上各種班來學(xué)習(xí)機(jī)器學(xué)習(xí),學(xué)習(xí)大數(shù)據(jù),歸根到底還是希望能找到一個(gè)好的工作,拿到更高的薪水,當(dāng)然還有一部分原因是自己對這一方面比較感興趣,希望更深入的了解這個(gè)領(lǐng)域。

我個(gè)人覺得,第一個(gè)原因的因素更大。

3. 我們在談機(jī)器學(xué)習(xí)的時(shí)候在談什么

首先,我們看看一個(gè)機(jī)器學(xué)習(xí)的系統(tǒng)長成什么樣子

?

幾乎所有的機(jī)器學(xué)習(xí)系統(tǒng)都是由上述系統(tǒng)圖組成,不同的是監(jiān)督型的系統(tǒng)訓(xùn)練數(shù)據(jù)可能需要人工干預(yù)而非監(jiān)督型的系統(tǒng)不需要人工干預(yù),簡單來說就是給一批訓(xùn)練數(shù)據(jù)給這個(gè)機(jī)器學(xué)習(xí)模型進(jìn)行學(xué)習(xí),得到一個(gè)預(yù)測模型,然后用這個(gè)預(yù)測模型對新的未知數(shù)據(jù)進(jìn)行預(yù)測。

現(xiàn)在網(wǎng)絡(luò)上機(jī)器學(xué)習(xí)方面的文章,博客到處都是,市面上各種各樣的書籍也到處都是,而且目前在線教育最火的領(lǐng)域也是這個(gè),各種各樣的機(jī)器學(xué)習(xí)的在線教育的班,學(xué)費(fèi)還挺貴。

但是你發(fā)現(xiàn)沒有,所有這些談?wù)摰臋C(jī)器學(xué)習(xí)都是在談?wù)撃P停裁础渡钊肜斫釾XX模型》,《可能是最好的理解XXX的文章》,《機(jī)器學(xué)習(xí)并不難,XXXX模型詳解》之類的文章和書遍地開花。各種介紹邏輯回歸,深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),SVM支持向量機(jī),BP神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)。..。.等等等等。

所以,我們在談?wù)摍C(jī)器學(xué)習(xí)的時(shí)候,實(shí)際上是在談?wù)摍C(jī)器學(xué)習(xí)的模型,也就是各種機(jī)器學(xué)習(xí)算法。而且大家都認(rèn)為只要學(xué)會(huì)了模型和算法的理論,那就是機(jī)器學(xué)習(xí)的專家了。我相信大多數(shù)人都是這么認(rèn)為的。

4. 小明成了機(jī)器學(xué)習(xí)“專家”

有個(gè)小朋友,是搞計(jì)算機(jī)的,叫小明,看了alphago虐李世石的視頻,雖然他完全不懂圍棋,但是他還是被震撼到了,決心要好好學(xué)習(xí)一下這個(gè)傳說中的機(jī)器學(xué)習(xí)。于是到處在網(wǎng)上找教程,找博客文章,找書籍,好好的學(xué)了半年,終于覺得自己入門了。每個(gè)機(jī)器學(xué)習(xí)的模型算法都能說出個(gè)所以然來了。

不知道大家有多少在這個(gè)階段?

但小明還想更進(jìn)一步,于是開始研究各種模型的代碼和工具了,hadoop和spark那是標(biāo)配了,又是各種找文章,各種找書,各種在線學(xué)習(xí)班,還好這些東西一大把一大把的,特別現(xiàn)在的在線學(xué)習(xí)班,要是沒有大數(shù)據(jù)處理班,沒有hadoop班,那就別開了。

一路下來,大半年又過去了,終于小明覺得自己學(xué)會(huì)了,理論也有了,大數(shù)據(jù)處理工具也會(huì)了,簡直無敵了!

又有多少人在這個(gè)階段?并以為自己已經(jīng)會(huì)機(jī)器學(xué)習(xí)了。到這個(gè)階段,如果你學(xué)得好,那么你已經(jīng)可以去開個(gè)學(xué)習(xí)班教別人機(jī)器學(xué)習(xí)了。但如果你以為這樣就可以去找個(gè)公司做算法工程師了,那么告訴你,圖樣圖森破,乃義五!

小明因?yàn)橛休^強(qiáng)的理論知識(shí),能推導(dǎo)所有公式,又會(huì)hadoop,spark,再加上自己的表達(dá)能力強(qiáng),很容易的秒了幾個(gè)面試官進(jìn)了一個(gè)大公司,是在一個(gè)電商做搜索的算法工程師,月薪很高,終于可以一展拳腳了,老板交給他一個(gè)任務(wù),用你那牛逼的知識(shí)把搜索的點(diǎn)擊率給我提升一個(gè)百分點(diǎn)吧。

如果你是小明,如果你剛從某個(gè)機(jī)器學(xué)習(xí)的學(xué)習(xí)班下來,你怎么弄?你是不是傻了?

5. 機(jī)器學(xué)習(xí)不僅僅是模型

產(chǎn)生這個(gè)問題的原因就是所有人都以為機(jī)器學(xué)習(xí)的模型就是機(jī)器學(xué)習(xí)本身,以為對那些個(gè)算法理解了就是機(jī)器學(xué)習(xí)的大牛了,但實(shí)際上完全不是這樣的。

模型是誰在玩呢?模型是科學(xué)家發(fā)明出來的, 是各個(gè)大公司的各個(gè)科學(xué)家,研究員發(fā)明出來的,這個(gè)發(fā)明出來是會(huì)出論文的,是他們用來虐我們的智商的,一般情況下,你發(fā)明不了模型吧(如果可以,可以不要往下看了,你可以走學(xué)術(shù)那條路)?你修改不了模型吧?

所以說,學(xué)會(huì)了模型,只是剛剛剛剛?cè)腴T,甚至還算不上入門吧

那各個(gè)公司的那么多算法工程師在干嘛呢?我們以一個(gè)搜索排序的算法工程師為例,他們在做甚呢?他們在

觀察數(shù)據(jù)---》找特征---》設(shè)計(jì)算法---》算法驗(yàn)證---》洗數(shù)據(jù)---》工程化---》上線看效果---》goto 觀察數(shù)據(jù)

而且一個(gè)成熟的系統(tǒng)中,一般模型已經(jīng)大概確定了,如果效果不是特別不好不會(huì)換模型,比如一個(gè)公司的搜索排序系統(tǒng)用了機(jī)器學(xué)習(xí)的邏輯回歸模型,你要改成別的模型一般不太可能,那么只能做一些特征上的補(bǔ)充。

好,我們通過這個(gè)流程來看看一個(gè)機(jī)器學(xué)習(xí)的算法工程師到底還要什么能力。

5.1 觀察數(shù)據(jù)

小明每天就在工位上看數(shù)據(jù),查數(shù)據(jù),看表格,畫曲線,發(fā)現(xiàn)像銷量,收藏,點(diǎn)擊等等這種能想到的特征早就被用了,就這么耗了三個(gè)月,沒有任何進(jìn)展,人都崩潰了,來了這么久,機(jī)器學(xué)習(xí)代碼毛都沒看到呢。

第四個(gè)月,他發(fā)現(xiàn)一點(diǎn)問題,他發(fā)現(xiàn)有些商品,評(píng)論什么的都挺好,感覺產(chǎn)品質(zhì)量也不錯(cuò),但就是銷量上不去,所以老排后面,于是,他把這些評(píng)論都是五星,但是銷量比較差的商品濾出來了,想看看他們有什么共性。

觀察數(shù)據(jù)階段,你說要什么能力?呵呵,只能告訴你,需要數(shù)據(jù)敏感性,其實(shí)也就是告訴你需要全面的能力,需要經(jīng)驗(yàn),需要產(chǎn)品經(jīng)理的能力。

除了這些,你還需要能隨手編腳本代碼的能力,遇到有些數(shù)據(jù)需要初步處理,可能需要隨手編代碼處理,而且編的要快,因?yàn)檫@些代碼可能就用一兩次就不用了,所以需要比較強(qiáng)大的腳本語言能力,那么python至少要熟悉吧,shell要會(huì)吧。

5.2 找特征

數(shù)據(jù)觀察下來發(fā)現(xiàn)了問題,現(xiàn)在要找特征了,要找特征,也就是找什么因素導(dǎo)致銷量上不去的,首先,需要想象力,然后去驗(yàn)證你的想象力。

小明的想象力爆棚,即便這樣,也搞了一個(gè)月才發(fā)現(xiàn)這些個(gè)商品有個(gè)共同特征,那就是圖片都比較爛,讓人一看就不想點(diǎn)。臥槽,要是能把圖片質(zhì)量加入到排序因素里面的話,是不是有奇效呢?圖片質(zhì)量作為特征,這之前可沒人做過,終于找到一個(gè)特征了。

所以在這一階段,畢竟大家的想象力都是有限的,更多的是經(jīng)驗(yàn)值,才能找到符合當(dāng)前場景的特征。

5.3 設(shè)計(jì)算法

特征是找到了,但怎么把這個(gè)特征加到排序模型里面去呢?圖片好不好,有多好,這些機(jī)器怎么理解呢?如果不能把圖片質(zhì)量變成一個(gè)數(shù)學(xué)上的向量,那永遠(yuǎn)都無法加入到排序模型里面去。

這一階段是真正考驗(yàn)算法工程師的地方了,那就是將特征向量化,小明觀察到越好看的圖像往往顏色變化更多,而質(zhì)量差的圖片往往顏色沒什么變化,于是他想到一種辦法,先把圖像數(shù)據(jù)進(jìn)行傅里葉變換,變成頻域的數(shù)據(jù),根據(jù)傅里葉變換的性質(zhì),高頻部分的幅度高表示圖像的顏色變化很明顯,如果低頻部分高,表示顏色變化不明顯,這和觀察到的圖像信息基本能匹配上,這樣一副圖像的好壞,就可以用傅里葉變換后高頻部分的幅度表示了,然后在做一些歸一化的變化,就把圖像向量化了,向量化以后就可以加入到排序模型去了。

這一步,你可能會(huì)用到你學(xué)習(xí)的機(jī)器學(xué)習(xí)模型,但肯定只占了一小部分,大部分情況需要你根據(jù)當(dāng)前場景自己建立一個(gè)數(shù)學(xué)模型,而不是機(jī)器學(xué)習(xí)模型,你說這一階段需要什么技能?雖然我這里舉的例子比較極端,但是數(shù)學(xué)抽象能力,數(shù)學(xué)建模能力和數(shù)學(xué)工具的熟練使用是必不可少的,并且同樣需要較強(qiáng)的編程能力,這已不是上一步的腳本能力,是實(shí)打?qū)嵉挠?jì)算機(jī)算法編程能力了。

5.4 算法驗(yàn)證

算法是設(shè)計(jì)好了,還要設(shè)計(jì)一個(gè)算法的離線驗(yàn)證方法來證明給你的老大看說我的算法是有效果的,不然哪那么多機(jī)會(huì)讓你到線上去試啊,這一步也是各種綜合能力的組合,關(guān)鍵是在這一步上,你要用一種通俗的語言從理論上說服你的老大,這是一種什么能力?強(qiáng)大的語言表達(dá)能力。

除了這個(gè)你還需要設(shè)計(jì)出一個(gè)上線以后的AB測試方案,能夠很好的測試出你的算法是否真的有效。

5.5 洗數(shù)據(jù)

特征找到了,算法也設(shè)計(jì)得差不多能體現(xiàn)特征了,體力活來了,那就是洗數(shù)據(jù),這是算法工程師的必修課,數(shù)據(jù)不是你想要什么樣子他就長得什么樣子的,所以要把數(shù)據(jù)變成你想要的樣子,然后去掉無效的數(shù)據(jù)可是個(gè)體力活。

像上面這個(gè)例子,首先可能大家的圖片大小都不一樣,要變成一個(gè)尺寸才好進(jìn)行變換,有些商品有多個(gè)圖片,可能需要找出質(zhì)量最好的再處理等等等等。

這一階段首先也是要腳本語言處理能力,而且還需要掌握一些數(shù)據(jù)處理工具的使用,關(guān)鍵還要有足夠的耐性和信心,當(dāng)然,必不可少的是優(yōu)秀的編程能力。

5.6 工程化

好了,前面的坑你全跨過來了,到了這一步了,呵呵,算法設(shè)計(jì)完了,數(shù)據(jù)也準(zhǔn)備好了,估計(jì)半年過去了,那趕快放到線上去吧,你以為拿著一堆腳本就能上線了啊,得考慮工程化了,如果把你的算法嵌入到原有系統(tǒng)中,如果保證你的算法的效率,別一跑跑一天,代碼的健壯性也要考慮啊,如果是在線算法,還得考慮性能,別把內(nèi)存干沒了。

這一步,你才真正的用上了你上面學(xué)的機(jī)器學(xué)習(xí)的hadoop,spark工具,看了上面說的,要完成工程化這一步,得有什么能力不用我說了吧,這是一個(gè)標(biāo)準(zhǔn)的軟件開發(fā)工程師的必要技能,還是高級(jí)開發(fā)工程師哦。

5.7 上線看效果

所有的都做完了,前前后后10個(gè)月了,終于可以上線了,好了,真正的考驗(yàn)來了,看看上線的效果唄,產(chǎn)品經(jīng)理說,做個(gè)AB測試吧,結(jié)果呵呵了,點(diǎn)擊率降低了,小明啊!這10個(gè)月忙活下來點(diǎn)擊率還下降了???老板還不把你罵死,所以,你必須有強(qiáng)大的抗打擊能力。

呵呵,趕快下線吧,從頭看看哪里出了問題,又花了一個(gè)月修改了算法,重新上線,恩,這次不錯(cuò),點(diǎn)擊率提高了0.2個(gè)百分點(diǎn),繼續(xù)努力吧,看看還有沒有什么可以挖掘的,于是,你就goto到了看數(shù)據(jù)的那一步。

別看這0.2,大的數(shù)據(jù)集合下,提高0.2已經(jīng)是非常不錯(cuò)的提高了,所以花這么多錢,養(yǎng)算法工程師,要是一年能出幾次0.2,那就是真值了。

6. 讓我們總結(jié)一下

上面這么多的過程,靠一個(gè)人全部完成確實(shí)有點(diǎn)困難,我說的有點(diǎn)夸張,中間有些步驟是有人配合的,觀察數(shù)據(jù)的時(shí)候有產(chǎn)品經(jīng)理配合你,洗數(shù)據(jù)的時(shí)候有數(shù)據(jù)工程師配合你,工程化的時(shí)候有系統(tǒng)工程師配合你,但是作為機(jī)器學(xué)習(xí)的算法工程師,整個(gè)過程你都得能hold得住啊,所以即便是你一個(gè)人應(yīng)該也要能完成整個(gè)流程才行。

這只是一個(gè)標(biāo)準(zhǔn)的算法工程師應(yīng)該具備的能力,當(dāng)然我這里是以搜索算法舉例的,其他的算法工程師也差不太多,總跑不過上面幾個(gè)過程,當(dāng)然,你要是牛人,能根據(jù)場景修改這個(gè)機(jī)器學(xué)習(xí)的模型,甚至自己能想個(gè)模型,那就更厲害了。

好,我們把上面的重點(diǎn)標(biāo)記的部分取出來匯總一下,讓我們看看一個(gè)算法工程師需要具備哪些技能

數(shù)據(jù)敏感性,觀察力

數(shù)學(xué)抽象能力,數(shù)學(xué)建模能力和數(shù)學(xué)工具的熟練使用的能力

能隨手編腳本代碼的能力,強(qiáng)大的計(jì)算機(jī)算法編程能力,高級(jí)開發(fā)工程師的素質(zhì)

想象力,耐性和信心,較強(qiáng)的語言表達(dá)能力,抗打擊能力

然后,還有很關(guān)鍵的一點(diǎn),你需要很聰明,當(dāng)然,你如果能做到以上那么幾點(diǎn),基本上也會(huì)很聰明了,如果真能做到這樣,反而那些機(jī)器學(xué)習(xí)的模型,理論和工具就顯得不那么重要了,因?yàn)槟切┮仓皇侵R(shí)和工具,隨時(shí)都可以學(xué)嘛。

你說,這些是靠看幾篇博客,看幾本書,上幾次課就能具備的么??

當(dāng)然,我們這里討論的是一般情況,如果你一心就是做研究的話,那么需要把上述技能熟練度再提高一個(gè)量級(jí)。

最后,正在學(xué)習(xí)機(jī)器學(xué)習(xí),勵(lì)志做算法工程師的你,準(zhǔn)備好踏這些坑了么??

聲明:本文內(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

    文章

    1573

    瀏覽量

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

    關(guān)注

    23

    文章

    4631

    瀏覽量

    93427
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    硬件工程師工作VS工作后!抱歉!是我想的太簡單了!# #電工 #電子愛好者

    硬件工程師
    MDD辰達(dá)半導(dǎo)體
    發(fā)布于 :2025年01月08日 18:15:18

    焊板子,焊板子后,硬件工程師居然兩幅面孔!# #電工 #電路知識(shí) #電路原理

    硬件工程師
    MDD辰達(dá)半導(dǎo)體
    發(fā)布于 :2025年01月07日 18:15:30

    圖像算法工程師的利器——SpeedDP深度學(xué)習(xí)算法開發(fā)平臺(tái)

    隨著人工智能的興起,AI工程師特別是基于圖像的算法工程師日益成為炙手可熱的香餑餑。特別是在一些行業(yè)市場例如工業(yè)領(lǐng)域等行業(yè)領(lǐng)域,需要根據(jù)具體場
    的頭像 發(fā)表于 11-08 01:06 ?418次閱讀
    圖像<b class='flag-5'>算法</b><b class='flag-5'>工程師</b>的利器——SpeedDP深度學(xué)習(xí)<b class='flag-5'>算法</b>開發(fā)平臺(tái)

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

    邏輯工程師和 FPGA 原型驗(yàn)證工程師在工作重點(diǎn)和職責(zé)上存在一定的區(qū)別: FPGA 算法工程師: 主要關(guān)注算法的設(shè)計(jì)和優(yōu)化,以在 FPGA
    發(fā)表于 09-23 18:26

    貼片電容型號(hào)除了要知道參數(shù)規(guī)格外還有哪些要知道

    在選擇貼片電容型號(hào)時(shí),除了要知道其參數(shù)規(guī)格(如尺寸、容量、電壓、精度等)外,還需要考慮以下幾個(gè)方面。
    的頭像 發(fā)表于 09-21 14:58 ?375次閱讀

    需要無刷電控硬件工程師

    需要無刷電控硬件工程師,地點(diǎn)東莞松山湖。最好有5-10年經(jīng)驗(yàn),大功率電摩電控。有意私聊。
    發(fā)表于 09-11 22:51

    正是拼的年紀(jì)|65歲電子工程師上班VLOG #65歲退休 #電子工程師 #搞笑 #上班vlog

    電子工程師
    安泰小課堂
    發(fā)布于 :2024年07月25日 11:31:02

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    、機(jī)器人等。 定義和工作職責(zé) 嵌入式軟件工程師的主要職責(zé)包括但不限于:設(shè)計(jì)、開發(fā)、測試和調(diào)試嵌入式軟件應(yīng)用程序,以滿足特定硬件和軟件要求。他們需要理解并掌握嵌入式系統(tǒng)的基本原理,熟悉相關(guān)硬件接口
    發(fā)表于 05-16 11:00

    大廠電子工程師常見面試題#電子工程師 #硬件工程師 #電路知識(shí) #面試題

    電子工程師電路
    安泰小課堂
    發(fā)布于 :2024年04月30日 17:33:15
    主站蜘蛛池模板: 特黄色毛片 | 在线精品国产成人综合第一页 | 久久在草| 日本不卡视频在线视频观看 | 网站在线观看视频 | 久久久久久久久久免观看 | 福利视频自拍偷拍 | 艹逼免费视频 | hd性欧美 | 天天色天天射综合网 | 午夜国产精品福利在线观看 | 四虎最新紧急更新地址 | 亚洲一区二区在线 | 宅男69免费永久网站 | 天天视频免费观看高清影视 | 日韩免费高清一级毛片在线 | 日本片巨大的乳456线观看 | 午夜视频在线观看www中文 | 天天做天天干 | аⅴ资源中文在线天堂 | 男男生子大肚play做到生 | 人人cao| 卡一卡二卡三国色天香永不失联 | 亚洲免费不卡 | 手机在线你懂的 | 一级做a爱片久久毛片 | 欧美极品bbbbⅹxxxx | 99久久99久久精品国产 | 黄 色 免 费 网站在线观看 | 国产精品伦视频观看免费 | 天堂网2021天堂手机版丶 | 国产永久视频夜色资源网 | 亚洲综合色就色手机在线观看 | 天天做天天爱天天爽综合区 | 五月激情六月 | 美女网战色 | 黄 色 录像成 人播放免费 | 免费在线视频播放 | 国产你懂的在线观看 | 男人的天堂一区二区视频在线观看 | 国产偷啪视频一区 |