先搞清楚目前行業(yè)內(nèi)招的算法工程師主要在做什么:
第一類(lèi)是做數(shù)據(jù)模型進(jìn)行推薦、分類(lèi)、識(shí)別、預(yù)測(cè)等工作的建模型算法工程師,通常JD上也寫(xiě)成數(shù)據(jù)挖掘工程師、深度學(xué)習(xí)工程師等。這類(lèi)大體的工作就是結(jié)合業(yè)務(wù)場(chǎng)景,選擇合適的算法模型,將數(shù)據(jù)進(jìn)行處理后使用模型獲得結(jié)果,也被戲稱(chēng)為“調(diào)參工程師”。
第二類(lèi)是做針對(duì)性方向的算法研究,包括圖像、語(yǔ)音、文本等,其囊括了在外界看來(lái)很智能的人臉識(shí)別、人臉變換、語(yǔ)音生成、語(yǔ)音識(shí)別、新聞推薦、智能對(duì)話等功能。和第一類(lèi)的區(qū)別主要在于處理的數(shù)據(jù)非傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù),需要進(jìn)行針對(duì)性的處理,比如圖像的取點(diǎn)、二值化,語(yǔ)音的要素提取,文本的分詞、向量化等等。當(dāng)進(jìn)行了數(shù)據(jù)處理后,后續(xù)選擇模型時(shí)就和第一類(lèi)類(lèi)似了。
不難看出,第二類(lèi)會(huì)比第一類(lèi)需要一些針對(duì)性的知識(shí)體系,相對(duì)來(lái)說(shuō)更好去做準(zhǔn)備。
從學(xué)習(xí)安排上,可以以如下的學(xué)習(xí)路線做準(zhǔn)備:
一、數(shù)學(xué)能力基礎(chǔ)
無(wú)論是否計(jì)算機(jī)出身,數(shù)學(xué)方面的能力在算法工作中是非常必要的基礎(chǔ),需要掌握的程度如下:
1、高等數(shù)學(xué),主要包括微分和積分、偏微分、向量值函數(shù)、方向梯度、泰勒展開(kāi)等,才能更好理解算法公式,調(diào)參原理,以及迭代時(shí)梯度的概念等;
2、線性代數(shù),主要是矩陣運(yùn)算、高維向量、空間運(yùn)算,這些是理解深度學(xué)習(xí)向量空間的基礎(chǔ);
3、概率論及數(shù)理統(tǒng)計(jì),或者稱(chēng)之為概率學(xué)和統(tǒng)計(jì)學(xué),要理解,機(jī)器學(xué)習(xí)本質(zhì)上是一個(gè)概率問(wèn)題,從數(shù)據(jù)中學(xué)習(xí)的不確定性,就是在獲得概率值。
二、計(jì)算機(jī)科學(xué)能力基礎(chǔ)
算法工程師是一個(gè)研發(fā)性崗位,寫(xiě)代碼的能力也是必須的。
1、掌握基本的排序、查找算法
2、熟悉常用的各類(lèi)數(shù)據(jù)結(jié)構(gòu),如數(shù)組、樹(shù)、表
3、將抽象邏輯思路轉(zhuǎn)為代碼,能完成leetcode上中等難度的題目
4、有編程語(yǔ)言學(xué)習(xí)能力,會(huì)python更好,其他語(yǔ)言需要花時(shí)間了解其語(yǔ)法特點(diǎn)
以上兩大基礎(chǔ),如果是工科出身,應(yīng)該不會(huì)需要太久做準(zhǔn)備,可以根據(jù)缺少的部分來(lái)查漏補(bǔ)缺,這些部分在兩個(gè)月內(nèi)完成應(yīng)該問(wèn)題不大。
后續(xù)才是真的開(kāi)始做算法的學(xué)習(xí):
三、機(jī)器學(xué)習(xí)算法能力基礎(chǔ)
1、熟悉常用機(jī)器學(xué)習(xí)算法的原理,包括線性回歸、邏輯回歸、決策樹(shù)、K均值、SVM、adaboost、CNN、RNN等
2、能夠了解各個(gè)算法的優(yōu)劣和適用的數(shù)據(jù)場(chǎng)景
3、熟悉常用機(jī)器學(xué)習(xí)算法在代碼中的實(shí)現(xiàn),深一些是能自己手寫(xiě)實(shí)現(xiàn),淺一些是能通過(guò)使用python的包來(lái)調(diào)用,熟悉參數(shù)
4、能夠獨(dú)立完成完整的數(shù)據(jù)項(xiàng)目,如在kaggle上嘗試解決入門(mén)的問(wèn)題,實(shí)現(xiàn)從數(shù)據(jù)處理到模型選擇直到輸出結(jié)果的過(guò)程
第三部分是個(gè)長(zhǎng)久的事情,不斷的熟悉算法和使用,并在實(shí)際數(shù)據(jù)項(xiàng)目中來(lái)深化,不去公司實(shí)習(xí)的話,在kaggle上多做嘗試可以積累不少經(jīng)驗(yàn)。
當(dāng)能掌握這些后,就可算做正式入門(mén)了,目前大廠的實(shí)習(xí)生或者校招生基本就在這個(gè)水平程度,想要得到更好的機(jī)會(huì)或者能在工作中真的有好的產(chǎn)出,需要更多的努力和學(xué)習(xí)。
-
工程師
+關(guān)注
關(guān)注
59文章
1571瀏覽量
68587 -
算法
+關(guān)注
關(guān)注
23文章
4626瀏覽量
93157
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論