AI大行其道,你準(zhǔn)備好了嗎握联?—謹(jǐn)送給徘徊于轉(zhuǎn)行AI的程序員

---來自BAT機器學(xué)習(xí)工程師的理性分析

前言

近年來桦沉,隨著 Google 的 AlphaGo 打敗韓國圍棋棋手李世石之后,機器學(xué)習(xí)尤其是深度學(xué)習(xí)的熱潮席卷了整個IT界金闽。所有的互聯(lián)網(wǎng)公司纯露,尤其是 Google 微軟,百度代芜,騰訊等巨頭埠褪,無不在布局人工智能技術(shù)和市場。百度挤庇,騰訊钞速,阿里巴巴,京東嫡秕,等互聯(lián)網(wǎng)巨頭甚至都在美國硅谷大肆高薪挖掘人工智能人才】视铮現(xiàn)在在北京,只要是機器學(xué)習(xí)算法崗位昆咽,少則月薪 20k驾凶,甚至100k 以上……

不錯,新時代時代來了掷酗,我們從互聯(lián)網(wǎng)走向移動互聯(lián)網(wǎng)狭郑,現(xiàn)在又從移動互聯(lián)網(wǎng)走向人工智能時代。業(yè)內(nèi)有人稱這一次的人工智能爆發(fā)是互聯(lián)網(wǎng)3.0時代的開啟汇在。所以現(xiàn)在搞IT開發(fā)的工程師的不懂機器學(xué)習(xí)翰萨,就相當(dāng)于低級程序員。趕緊從基礎(chǔ)學(xué)起糕殉,入門機器學(xué)習(xí)亩鬼,走進人工智能的大門……

image

1、人工智能的三起三落

20世紀(jì)50-70年代阿蝶,人工智能提出后雳锋,力圖模擬人類智慧,但是由于過分簡單的算法羡洁、匱乏的難以應(yīng)對不確定環(huán)境的理論玷过,以及計算能力的限制,逐漸冷卻。

20世紀(jì)80年代辛蚊,人工智能的關(guān)鍵應(yīng)用——專家系統(tǒng)得以發(fā)展粤蝎,但是數(shù)據(jù)較少,難以捕捉專家的隱性知識袋马,建造和維護大型系統(tǒng)的復(fù)雜性和成本也使得人工智能漸漸不被主流計算機科學(xué)所重視初澎。

進入20世紀(jì)90年代,神經(jīng)網(wǎng)絡(luò)虑凛、遺傳算法等科技“進化”出許多解決問題的最佳方案碑宴,于是21世紀(jì)前10年,復(fù)興人工智能研究進程的各種要素桑谍,例如摩爾定律延柠、大數(shù)據(jù)、云計算和新算法等锣披,推動人工智能在20世界20年代進入快速增長時期贞间。預(yù)計未來十年,會在一些難以逾越的困惑中迎來奇點時代的爆發(fā)式增長盈罐。

2榜跌、新浪潮為什么會崛起

人工智能(AI)問世之初曾經(jīng)狂妄自大闪唆、令人失望盅粪,它如何突然變成當(dāng)今最熱門的技術(shù)領(lǐng)域?這個詞語首次出現(xiàn)在1956年的一份研究計劃書中悄蕾。該計劃書寫道:“只要精心挑選一群科學(xué)家票顾,讓他們一起研究一個夏天,就可以取得重大進展帆调,使機器能夠解決目前只有人類才能解決的那些問題奠骄。”至少可以說番刊,這種看法過于樂觀含鳞。盡管偶有進步,但AI在人們心目中成為了言過其實的代名詞芹务,以至于研究人員基本上避免使用這個詞語蝉绷,寧愿用“專家系統(tǒng)”或者“神經(jīng)網(wǎng)絡(luò)”代替≡姹В“AI”的平反和當(dāng)前的熱潮可追溯到2012年的ImageNet Challenge在線競賽熔吗。

ImageNet是一個在線數(shù)據(jù)庫,包含數(shù)百萬張圖片佳晶,全部由人工標(biāo)記桅狠。每年一度的ImageNet Challenge競賽旨在鼓勵該領(lǐng)域的研究人員比拼和衡量他們在計算機自動識別和標(biāo)記圖像方面的進展。他們的系統(tǒng)首先使用一組被正確標(biāo)記的圖像進行訓(xùn)練,然后接受挑戰(zhàn)中跌,標(biāo)記之前從未見過的測試圖像咨堤。在隨后的研討會上,獲勝者分享和討論他們的技術(shù)晒他。2010年吱型,獲勝的那個系統(tǒng)標(biāo)記圖像的準(zhǔn)確率為72%(人類平均為95%)。2012年陨仅,多倫多大學(xué)教授杰夫·辛頓(Geoff Hinton)領(lǐng)導(dǎo)的一支團隊?wèi){借一項名為“深度學(xué)習(xí)”的新技術(shù)大幅提高了準(zhǔn)確率津滞,達到85%。后來在2015年的ImageNet Challenge競賽中灼伤,這項技術(shù)使準(zhǔn)確率進一步提升至96%触徐,首次超越人類。

image
    不錯狐赡,這一切都歸功于一個概念:“ **深度學(xué)習(xí)(Deep Learning)** ”撞鹉。雖然2016年之前,深度學(xué)習(xí)技術(shù)已經(jīng)火了起來颖侄,但是真正大爆發(fā)的事件卻是2016年Google在韓國首爾舉行的人工智能機器人AlphaGo與圍棋九段選手李世石之間的**人機五翻棋大戰(zhàn)**鸟雏,最終人類最強選手輸給了機器人。曾幾時何览祖,人們認(rèn)為圍棋是人類棋牌類游戲的最后的尊嚴(yán)陣地孝鹊,就這樣在人工智能輕松地攻陷了人類智力的最后一塊陣地!這件事震驚了所有人展蒂。從這以后又活,全球?qū)W術(shù)界和工業(yè)界都躁動了,巨頭們都在加緊布局人工智能:Google挖來了**神經(jīng)網(wǎng)絡(luò)**算法的奠基人锰悼、深度學(xué)習(xí)之父 Geoffrey Hinton柳骄;Facebook則挖到了Hinton的學(xué)生,**卷積神經(jīng)網(wǎng)絡(luò)(CNN)**的奠基人Yann LeCun箕般;然而就在不到一年的時間耐薯,微軟也是說動了一直保持中立留在學(xué)術(shù)界的深度學(xué)習(xí)領(lǐng)域三大牛的最后一位Yoshua Bengio。當(dāng)然丝里,國內(nèi)的互聯(lián)網(wǎng)巨頭曲初,百度、阿里丙者、騰訊复斥、京東、滴滴械媒、美團等也都在布局AI目锭。其中百度更是被認(rèn)為在AI上已經(jīng) All In 了评汰,京東的劉強東也在內(nèi)部年會上說五年后快遞將實現(xiàn)全機器人時代……
image

3、機器學(xué)習(xí)是你必經(jīng)之路

入門AI痢虹,機器學(xué)習(xí)是必須要學(xué)習(xí)的被去,可以這么說:機器學(xué)習(xí)是人工智能的基石和精髓。只有學(xué)好了機器學(xué)習(xí)算法原理和思想奖唯,你才算真正的入門人工智能惨缆。但是,對于非專業(yè)的半路出家的你們該如何入門丰捷?這個問題其實很難回答坯墨,因為每個人的目標(biāo)不一樣,技術(shù)基礎(chǔ)和數(shù)學(xué)基礎(chǔ)也都不一樣病往,所以因人而異捣染。但是通常來說,學(xué)習(xí)機器學(xué)習(xí)算法停巷,需要的必備知識還是可以羅列的耍攘。

3.1 機器學(xué)習(xí)必備基礎(chǔ)

image

機器學(xué)習(xí)的學(xué)習(xí)過程

對于上圖,之所以最左邊寫了『數(shù)學(xué)基礎(chǔ)』 『經(jīng)典算法學(xué)習(xí)』 『編程技術(shù)』 三個并行的部分畔勤,是因為機器學(xué)習(xí)是一個將數(shù)學(xué)蕾各、算法理論和工程實踐緊密結(jié)合的領(lǐng)域像啼,需要扎實的理論基礎(chǔ)幫助引導(dǎo)數(shù)據(jù)分析與模型調(diào)優(yōu)猖闪,同時也需要精湛的工程開發(fā)能力去高效化地訓(xùn)練和部署模型和服務(wù)膀捷。

在互聯(lián)網(wǎng)領(lǐng)域從事機器學(xué)習(xí)的人基本上屬于以下兩種背景:其中絕大部分是程序員出身著瓶,這類童鞋工程經(jīng)驗相對會多一些;另一部分是學(xué)數(shù)學(xué)統(tǒng)計領(lǐng)域的类垫,這部分童鞋理論基礎(chǔ)相對扎實一些。因此對比上圖,這二類童鞋入門機器學(xué)習(xí)仔掸,所欠缺和需要加強的部分是不一樣的。

3.1.1 關(guān)于數(shù)學(xué)

曾經(jīng)有無數(shù)的滿懷激情医清,誓要在機器學(xué)習(xí)領(lǐng)域有一番作為的同學(xué)起暮,在看到公式的一刻突然就覺得自己狗帶了。是的会烙,機器學(xué)習(xí)之所以門檻高并且顯得高大上的主要原因就是數(shù)學(xué)负懦。每一個算法,要在訓(xùn)練集上最大程度擬合同時又保證泛化能力柏腻,需要不斷分析結(jié)果和數(shù)據(jù)纸厉,調(diào)優(yōu)參數(shù),這需要我們對數(shù)據(jù)分布和模型底層的數(shù)學(xué)原理有一定的理解五嫂。所幸的是如果只是想合理應(yīng)用機器學(xué)習(xí)颗品,而不是做相關(guān)方向高精尖的研究肯尺,所需要的數(shù)學(xué)知識讀完本科的理工科童鞋還是能很容易的把這些數(shù)學(xué)知識學(xué)明白的。

基本所有常見機器學(xué)習(xí)算法需要的數(shù)學(xué)基礎(chǔ)躯枢,都集中在微積分则吟、線性代數(shù)和概率與統(tǒng)計當(dāng)中。下面我們先過一過知識重點锄蹂,文章的后部分會介紹一些幫助學(xué)習(xí)和鞏固這些知識的資料氓仲。

  • 微積分

    微分的計算及其幾何、物理含義得糜,是機器學(xué)習(xí)中大多數(shù)算法的求解過程的核心敬扛。比如算法中運用到梯度下降法、牛頓法等朝抖。如果對其幾何意義有充分的理解舔哪,就能理解“梯度下降是用平面來逼近局部,牛頓法是用曲面逼近局部”槽棍,能夠更好地理解運用這樣的方法捉蚤。

    凸優(yōu)化和條件最優(yōu)化的相關(guān)知識在算法中的應(yīng)用隨處可見,如果能有系統(tǒng)的學(xué)習(xí)將使得你對算法的認(rèn)識達到一個新高度炼七。

image

線性代數(shù)

大多數(shù)機器學(xué)習(xí)的算法要應(yīng)用起來缆巧,依賴于高效的計算,這種場景下豌拙,程序員童鞋們習(xí)慣的多層for循環(huán)通常就行不通了陕悬,而大多數(shù)的循環(huán)操作可轉(zhuǎn)化成矩陣之間的乘法運算,這就和線性代數(shù)有莫大的關(guān)系了按傅。向量的內(nèi)積運算更是隨處可見捉超。矩陣乘法與分解在機器學(xué)習(xí)的主成分分析(PCA)和奇異值分解(SVD) 等部分呈現(xiàn)刷屏狀地出現(xiàn)。

image

奇異值分解過程示意圖

  • 在機器學(xué)習(xí)領(lǐng)域唯绍,有相當(dāng)多的應(yīng)用與奇異值分解都有非常緊密的聯(lián)系拼岳,比如機器學(xué)習(xí)中常做feature reduction的PCA,做數(shù)據(jù)壓縮(以圖像壓縮為代表)的算法况芒,還有做搜索引擎語義層次檢索的LSI(Latent Semantic Indexing)

  • 概率與統(tǒng)計

從廣義來說惜纸,機器學(xué)習(xí)在做的很多事情,和統(tǒng)計層面數(shù)據(jù)分析和發(fā)掘隱藏的模式绝骚,是非常類似的耐版。以至于傳統(tǒng)的機器學(xué)習(xí)很大一部分被稱作統(tǒng)計學(xué)習(xí)理論,這充分說明了統(tǒng)計學(xué)在機器學(xué)習(xí)領(lǐng)域的重要性压汪。

極大似然思想粪牲、貝葉斯模型是理論基礎(chǔ),樸素貝葉斯(NaiveBayes)止剖、語言模型(Ngram)腺阳、隱馬爾科夫(HMM)湿滓、隱變量混合概率模型是他們的高級形態(tài)。常見分布如高斯分布是混合高斯模型(GMM)等的基礎(chǔ)舌狗。

image

3.1.2 經(jīng)典算法的學(xué)習(xí)

機器學(xué)習(xí)中有很多的經(jīng)典算法:感知機叽奥,KNN樸素貝葉斯痛侍,K-Means朝氓,SVMAdaBoost主届,EM赵哲,決策樹隨機森林君丁,GDBT枫夺,HMM……

算法這么多,那么對于初學(xué)者應(yīng)該怎么學(xué)習(xí)呢绘闷?我的答案是:分門別類很重要橡庞。基本上印蔗,對機器學(xué)習(xí)算法的分類普遍的觀點是分為三大類:有監(jiān)督學(xué)習(xí)扒最,無監(jiān)督學(xué)習(xí)強化學(xué)習(xí)华嘹。

  • 有監(jiān)督學(xué)習(xí)

    有監(jiān)督學(xué)習(xí)是指進行訓(xùn)練的數(shù)據(jù)包含兩部分信息:特征向量 + 類別標(biāo)簽吧趣。也就是說,他們在訓(xùn)練的時候每一個數(shù)據(jù)向量所屬的類別是事先知道的耙厚。在設(shè)計學(xué)習(xí)算法的時候强挫,學(xué)習(xí)調(diào)整參數(shù)的過程會根據(jù)類標(biāo)進行調(diào)整,類似于學(xué)習(xí)的過程中被監(jiān)督了一樣薛躬,而不是漫無目標(biāo)地去學(xué)習(xí)俯渤,故此得名。下圖中泛豪,不同顏色的點代表不同的類別稠诲,直線就是我們學(xué)習(xí)出來的分界面(也叫學(xué)習(xí)器侦鹏,分類器)诡曙。

image

典型的有監(jiān)督學(xué)習(xí)

無監(jiān)督學(xué)習(xí)

相對于有監(jiān)督而言,無監(jiān)督方法的訓(xùn)練數(shù)據(jù)沒有類標(biāo)略水,只有特征向量价卤。甚至很多時候我們都不知道總共的類別有多少個。因此渊涝,無監(jiān)督學(xué)習(xí)就不叫做分類慎璧,而往往叫做 聚類床嫌。就是采用一定的算法,把特征性質(zhì)相近的樣本聚在一起成為一類胸私。

K-Means算法就是一個無監(jiān)督學(xué)習(xí)算法厌处,在它執(zhí)行前數(shù)據(jù)是每有類標(biāo)的,執(zhí)行過程中才會有類標(biāo)岁疼,但是此時類標(biāo)不固定阔涉,只有當(dāng)聚類完成后每個樣本的類標(biāo)才能固定。如下圖所示就是無監(jiān)督算法的執(zhí)行過程捷绒。

image
  • 強化學(xué)習(xí)

    所謂強化學(xué)習(xí)就是智能系統(tǒng)從環(huán)境到行為映射的學(xué)習(xí)瑰排,以使獎勵信號(強化信號)函數(shù)值最大,強化學(xué)習(xí)不同于連接主義學(xué)習(xí)中的監(jiān)督學(xué)習(xí)暖侨,主要表現(xiàn)在教師信號上椭住,強化學(xué)習(xí)中由環(huán)境提供的強化信號是對產(chǎn)生動作的好壞作一種評價(通常為標(biāo)量信號),而不是告訴強化學(xué)習(xí)系統(tǒng)RLS(reinforcement learning system)如何去產(chǎn)生正確的動作字逗。由于外部環(huán)境提供的信息很少京郑,RLS必須靠自身的經(jīng)歷進行學(xué)習(xí)。通過這種方式葫掉,RLS在行動-評價的環(huán)境中獲得知識傻挂,改進行動方案以適應(yīng)環(huán)境。

    本文是一個教你入門的方法挖息,只是帶你領(lǐng)略了解機器學(xué)習(xí)的大致框架金拒。不會介紹具體的算法的詳細原理與過程,所以想要深入了解可以查看相關(guān)書籍或者文獻套腹。對于具體的算法屬于哪一類绪抛,并且為什么這么劃分,請讀者認(rèn)真學(xué)習(xí)相關(guān)的機器學(xué)習(xí)教程电禀。

3.1.3 編程技術(shù)

對于編程技術(shù)學(xué)習(xí)和選擇幢码,無非就是 編程語言開發(fā)環(huán)境。我個人的建議是 Python + PyCharm尖飞。原因很簡單症副,python簡單易學(xué),不至于讓我們把太多的時間花在語言的學(xué)習(xí)上(PS:學(xué)習(xí)機器學(xué)習(xí)的重點在于各個機器學(xué)習(xí)算法理論的學(xué)習(xí)和掌握)政基。并且Jetbrains公司開發(fā)的Python集成開發(fā)環(huán)境PyCharm也是非常的簡單易用贞铣。

image

4、你是否真的準(zhǔn)備好了沮明?

說完了機器學(xué)習(xí)的入門過程辕坝,我得給大家潑點冷水。雖然說目前AI真的很火熱荐健,就在剛剛酱畅,我寫累了休息看新聞的時候就有新聞推送給我:商湯科技B輪融資4.5億美元琳袄。這場革命是機遇,但是它真的適合你嗎纺酸?我可以很肯定的說窖逗,并不是所有人都適合轉(zhuǎn)行AI。

下面是的總結(jié)餐蔬,想轉(zhuǎn)行的人可以自我對照:

  1. 如果你天生感覺學(xué)習(xí)數(shù)學(xué)很吃力滑负,并且代碼能力很一般的人。我可以很負責(zé)人的告訴你用含,轉(zhuǎn)行AI矮慕,學(xué)習(xí)機器學(xué)習(xí)算法將會是你人生的災(zāi)難。對于這類 猿友 你一定不能轉(zhuǎn)行AI啄骇;

  2. 如果你數(shù)學(xué)一般痴鳄,但是編程能力非常好,你曾經(jīng)有著用代碼改變世界的雄心缸夹。對于這一類 猿友 痪寻,我覺得你轉(zhuǎn)行也行,但是你一定要走應(yīng)用化的AI道路虽惭。因為數(shù)學(xué)是你的天花板橡类,你注定成不了 Hinton那樣的學(xué)術(shù)大牛;

  3. 如果你數(shù)學(xué)很好芽唇,但是編程薄弱顾画。恭喜你,你具備了轉(zhuǎn)行AI的先天優(yōu)勢匆笤。對于這類 猿友研侣,我覺得你可以轉(zhuǎn)行AI,但是你得努力把編程水平提上來炮捧。

  4. 如果你數(shù)學(xué)很牛庶诡,曾經(jīng)與菲爾茲獎擦肩而過,曾經(jīng)給Apache頂級項目貢獻N萬行核心代碼咆课。恭喜你末誓,AI領(lǐng)域需要的就是你,你就是未來的Hinton书蚪,吳恩達……

    • -AI大行其道喇澡,你準(zhǔn)備好了嗎?
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末善炫,一起剝皮案震驚了整個濱河市撩幽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌箩艺,老刑警劉巖窜醉,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異艺谆,居然都是意外死亡榨惰,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門静汤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來琅催,“玉大人,你說我怎么就攤上這事虫给√俾眨” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵抹估,是天一觀的道長缠黍。 經(jīng)常有香客問我,道長药蜻,這世上最難降的妖魔是什么瓷式? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮语泽,結(jié)果婚禮上贸典,老公的妹妹穿的比我還像新娘。我一直安慰自己踱卵,他們只是感情好廊驼,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著惋砂,像睡著了一般蔬充。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上班利,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天饥漫,我揣著相機與錄音,去河邊找鬼罗标。 笑死庸队,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的闯割。 我是一名探鬼主播彻消,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼宙拉!你這毒婦竟也來了宾尚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎煌贴,沒想到半個月后御板,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡牛郑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年怠肋,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片淹朋。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡笙各,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出础芍,到底是詐尸還是另有隱情杈抢,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布仑性,位于F島的核電站惶楼,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏虏缸。R本人自食惡果不足惜鲫懒,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望刽辙。 院中可真熱鬧窥岩,春花似錦、人聲如沸宰缤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽慨灭。三九已至朦乏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間氧骤,已是汗流浹背呻疹。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留筹陵,地道東北人刽锤。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像朦佩,于是被迫代替她去往敵國和親并思。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容