AI時(shí)代什么職位最火?
有編程能力和數(shù)據(jù)挖掘能力的工程師最火,包括:數(shù)據(jù)挖掘工程師、機(jī)器學(xué)習(xí)工程師,算法工程師。
今年3月份時(shí),谷歌開發(fā)的人工智能AlphaGo打敗了全球最頂尖的圍棋高手,轟動(dòng)全世界,AI時(shí)代正式拉開序幕。實(shí)際上,人工智能這一概念早在上世紀(jì)一大批科幻小說陸續(xù)發(fā)表時(shí),就已被人們接受,而隨著科技的發(fā)展,人工智能的發(fā)展前景更是日益清晰。一個(gè)人工智能的誕生需要無數(shù)個(gè)工程師揮灑汗水。其中,負(fù)責(zé)開發(fā)學(xué)習(xí)算法、使機(jī)器能像人類一樣思考問題的數(shù)據(jù)挖掘工程師更是無比重要。什么人能完成人工智能的開發(fā)任務(wù)呢?必須指出,人工智能和一般的計(jì)算機(jī)程序有極大的差別,它應(yīng)當(dāng)具有“能夠自主學(xué)習(xí)知識(shí)”這一特點(diǎn),這一特點(diǎn)也被稱為“機(jī)器學(xué)習(xí)”。而自學(xué)習(xí)模型(或者說機(jī)器學(xué)習(xí)能力開發(fā))正是數(shù)據(jù)挖掘工程師的強(qiáng)項(xiàng),人工智能的誕生和普及需要一大批數(shù)據(jù)挖掘工程師。
那么在AI時(shí)代,如何才能掌握相關(guān)的技能,成為企業(yè)需要的數(shù)據(jù)挖掘人才呢?
第一個(gè)門檻是數(shù)學(xué)
首先,機(jī)器學(xué)習(xí)的第一個(gè)門檻是數(shù)學(xué)知識(shí)。機(jī)器學(xué)習(xí)算法需要的數(shù)學(xué)知識(shí)集中在微積分、線性代數(shù)和概率與統(tǒng)計(jì)當(dāng)中,具有本科理工科專業(yè)的同學(xué)對(duì)這些知識(shí)應(yīng)該不陌生,如果你已經(jīng)還給了老師,我還是建議你通過自學(xué)或大數(shù)據(jù)學(xué)習(xí)社區(qū)補(bǔ)充相關(guān)知識(shí)。所幸的是如果只是想合理應(yīng)用機(jī)器學(xué)習(xí)算法,而不是做相關(guān)方向高精尖的研究,需要的數(shù)學(xué)知識(shí)啃一啃教科書還是基本能理解下來的。
第二個(gè)門檻是編程
跨過了第一步,就是如何動(dòng)手解決問題。所謂工欲善其事必先利其器,如果沒有工具,那么所有的材料和框架、邏輯、思路都給你,也寸步難行。因此我們還是得需要合適的編程語(yǔ)言、工具和環(huán)境幫助自己在數(shù)據(jù)集上應(yīng)用機(jī)器學(xué)習(xí)算法。對(duì)于有計(jì)算機(jī)編程基礎(chǔ)的初學(xué)者而言,Python是很好的入門語(yǔ)言,很容易上手,同時(shí)又活躍的社區(qū)支持,豐富的工具包幫助我們完成想法。沒有編程基礎(chǔ)的同學(xué)掌握R或者平臺(tái)自帶的一些腳本語(yǔ)言也是不錯(cuò)的選擇。
Make your hands dirty
接下來就是了解機(jī)器學(xué)習(xí)的工作流程和掌握常見的算法。一般機(jī)器學(xué)習(xí)步驟包括:
數(shù)據(jù)建模:將業(yè)務(wù)問題抽象為數(shù)學(xué)問題;
數(shù)據(jù)獲取:獲取有代表性的數(shù)據(jù),如果數(shù)據(jù)量太大,需要考慮分布式存儲(chǔ)和管理;
特征工程:包括特征預(yù)處理與特征選擇兩個(gè)核心步驟,前者主要是做數(shù)據(jù)清洗,好的數(shù)據(jù)清洗過程可以使算法的效果和性能得到顯著提高,這一步體力活多一些,也比較耗時(shí),但也是非常關(guān)鍵的一個(gè)步驟。特征選擇對(duì)業(yè)務(wù)理解有一定要求,好的特征工程會(huì)降低對(duì)算法和數(shù)據(jù)量的依賴。
模型調(diào)優(yōu):所謂的訓(xùn)練數(shù)據(jù)都是在這個(gè)環(huán)節(jié)處理的,簡(jiǎn)單的說就是通過迭代分析和參數(shù)優(yōu)化使上述所建立的特征工程是最優(yōu)的。
這些工作流程主要是工程實(shí)踐上總結(jié)出的一些經(jīng)驗(yàn)。并不是每個(gè)項(xiàng)目都包含完整的一個(gè)流程,只有大家自己多實(shí)踐,多積累項(xiàng)目經(jīng)驗(yàn),才會(huì)有自己更深刻的認(rèn)識(shí)。
翻過了數(shù)學(xué)和編程兩座大山,就是如何實(shí)踐的問題,其中一個(gè)捷徑就是積極參加國(guó)內(nèi)外各種數(shù)據(jù)挖掘競(jìng)賽。國(guó)外的Kaggle和國(guó)內(nèi)的阿里天池比賽都是很好的平臺(tái),你可以在上面獲取真實(shí)的數(shù)據(jù)和隊(duì)友們一起學(xué)習(xí)和進(jìn)行競(jìng)賽,嘗試使用已經(jīng)學(xué)過的所有知識(shí)來完成這個(gè)比賽本身也是一件很有樂趣的事情。
另外就是企業(yè)實(shí)習(xí),可以先從簡(jiǎn)單的統(tǒng)計(jì)分析和數(shù)據(jù)清洗開始做起,積累自己對(duì)數(shù)據(jù)的感覺,同時(shí)了解企業(yè)的業(yè)務(wù)需求和生產(chǎn)環(huán)境。我們通常講從事數(shù)據(jù)科學(xué)的要”Make your hands dirty”,就是說要通過多接觸數(shù)據(jù)加深對(duì)數(shù)據(jù)和業(yè)務(wù)的理解,好廚子都是食材方面的專家,你不和你的“料”打交道,怎么能談的上去應(yīng)用好它。
擺脫學(xué)習(xí)的誤區(qū)
初學(xué)機(jī)器學(xué)習(xí)可能有一個(gè)誤區(qū),就是一上來就陷入到對(duì)各種高大上算法的追逐當(dāng)中。動(dòng)不動(dòng)就討論我能不能用深度學(xué)習(xí)去解決這個(gè)問題啊?實(shí)際上脫離業(yè)務(wù)和數(shù)據(jù)的算法討論是毫無意義的。上文中已經(jīng)提到,好的特征工程會(huì)大大降低對(duì)算法和數(shù)據(jù)量的依賴,與其研究算法,不如先厘清業(yè)務(wù)問題。任何一個(gè)問題都可以用最傳統(tǒng)的的算法,先完整的走完機(jī)器學(xué)習(xí)的整個(gè)工作流程,不斷嘗試各種算法深挖這些數(shù)據(jù)的價(jià)值,在運(yùn)用過程中把數(shù)據(jù)、特征和算法搞透。真正積累出項(xiàng)目經(jīng)驗(yàn)才是最快、最靠譜的學(xué)習(xí)路徑。
自學(xué)還是培訓(xùn)
很多人在自學(xué)還是參加培訓(xùn)上比較糾結(jié)。我是這么理解的,上述過程中數(shù)學(xué)知識(shí)需要在本科及研究生階段完成,離開學(xué)校的話基本上要靠自學(xué)才能補(bǔ)充這方面的知識(shí),所以建議那些還在學(xué)校里讀書并且有志于從事數(shù)據(jù)挖掘工作的同學(xué)在學(xué)校把數(shù)學(xué)基礎(chǔ)打好,書到用時(shí)方恨少,希望大家珍惜在學(xué)校的學(xué)習(xí)時(shí)間。
除了數(shù)學(xué)以外,很多知識(shí)的確可以通過網(wǎng)絡(luò)搜索的方式自學(xué),但前提是你是否擁有超強(qiáng)的自主學(xué)習(xí)能力,通常擁有這種能力的多半是學(xué)霸,他們能夠跟據(jù)自己的情況,找到最合適的學(xué)習(xí)資料和最快學(xué)習(xí)成長(zhǎng)路徑。如果你不屬于這一類人,那么參加職業(yè)培訓(xùn)也許是個(gè)不錯(cuò)的選擇,在老師的帶領(lǐng)下可以走少很多彎路。另外任何學(xué)習(xí)不可能沒有困難,也就是學(xué)習(xí)道路上的各種溝溝坎坎,通過老師的答疑解惑,可以讓你輕松邁過這些障礙,盡快實(shí)現(xiàn)你的“小”目標(biāo)。
機(jī)器學(xué)習(xí)這個(gè)領(lǐng)域想速成是不太可能的,但是就入門來說,如果能有人指點(diǎn)一二還是可以在短期內(nèi)把這些經(jīng)典算法都過一遍,這番學(xué)習(xí)可以對(duì)機(jī)器學(xué)習(xí)的整體有個(gè)基本的理解,從而盡快進(jìn)入到這個(gè)領(lǐng)域。師傅領(lǐng)進(jìn)門,修行靠個(gè)人,接下來就是如何鉆進(jìn)去了,好在現(xiàn)在很多開源庫(kù)給我們提供了實(shí)現(xiàn)的方法,我們只需要構(gòu)造基本的算法框架就可以了,大家在學(xué)習(xí)過程中應(yīng)當(dāng)盡可能廣的學(xué)習(xí)機(jī)器學(xué)習(xí)的經(jīng)典算法。
學(xué)習(xí)資料
至于機(jī)器學(xué)習(xí)的資料網(wǎng)上很多,大家可以找一下,我個(gè)人推薦李航老師的《統(tǒng)計(jì)機(jī)器學(xué)習(xí)》和周志華老師的《機(jī)器學(xué)習(xí)》這兩門書,前者理論性較強(qiáng),適合數(shù)學(xué)專業(yè)的同學(xué),后者讀起來相對(duì)輕松一些,適合大多數(shù)理工科專業(yè)的同學(xué)。
人工智能專業(yè)前景如何?