什麼是 AI、機器學習與深度學習?

什麼是 AI、機器學習與深度學習?算法

你們好,我是楊鋒,做爲一個大數據從業人員,相信你們成天都在被 AI、機器學習、深度學習等一些概念轟炸。有時候甚至有點坐臥不安,一方面做爲一個「業內人士」而自豪,二方面以爲新概念一個接一個,本身不甚瞭解,有點恐懼。我一直相信一句臺詞——「喝了敵人的血,下次見面就不會再怕了」。學習知識亦然,不少時候,你以爲很高深,其實是缺少清晰的概念。當你真的把這些概念理清楚後,每每會恍然大悟,萬變不離其宗,原來不過如此。上網查了不少資料,很遺憾的是,99%的從業者語文都不怎麼過關,連基本的定義都不會下。一個簡單的「限定詞+更大的集合」的定義模式都沒有掌握,深表遺憾。因而仍是決定本身來梳理一下吧。有高人說過(花錢買的):你對一個領域的理解程度,徹底取決於你的頭腦裏有多少清晰的概念,以及可否把這些概念關聯起來。廢話少說,開始嘮吧。網絡

人工智能( Artificial Intelligence)是研究、開發用於模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門技術科學。咱們來分解一下這個概念。「人工智能」是「一門技術科學」,它研究與開發的對象是「理論、技術及應用系統」,研究的目的是爲了「模擬、延伸和擴展人的智能」。既然如此,那麼買菜用的「計算器」算是人工智能嗎?嚴格地說是算的,由於它至少作了「模擬」人在計算方面的智能,並擴展了這個能力(比人算得更快)。咱們天天編碼驅動計算機去幫咱們幹活,這個算是人工智能嗎?也算的。因此,首先不用妄自菲薄,其實你們早已經是「人工智能」的從業者了。咱們如今看到的貌似很高端的技術,如圖像識別、NLP,其實依然沒有脫離這個範圍,說白了,就是「模擬人在看圖方面的智能」和「模擬人在聽話方面的智能」,本質上和「模擬人在計算方面的智能」沒啥兩樣,雖然難度有高低,但目的是同樣的——模擬、延伸和擴展人的智能。另外,人工智能也不是啥新概念,事實上這是50年代提出的東西了(比大家老多了),如今這麼火熱,頂多只能算是「詐屍」,談不上「新生」。機器學習

隨着人對計算機科學的指望愈來愈高,要求它解決的問題愈來愈複雜,摧枯拉朽地打個小怪已經遠遠不能知足人們的訴求了。1+1好算,1+2也不難,這些已經能解決的問題暫且按下不表。要解決的問題域愈來愈複雜,即便是同一個問題,其面對的場景也愈來愈多。咱總不能每新出來一種場景,就讓碼農去查找switch,而後在default前去再加一個case吧;世間的場景千千萬,那得多少個case啊,殺個碼農祭天也保不齊會出問題啊。那怎麼辦呢?因而有人提出了一個新的思路——可否不爲難碼農,讓機器本身去學習呢(提出這個概念的人必定作過碼農)?好吧,如今機器學習的定義就出來了。機器學習即不須要碼農添加case語句而讓機器本身學會執行任務的人工智能技術。好像不太正規啊,好吧,再定義一下。機器學習就是用算法解析數據,不斷學習,對世界中發生的事作出判斷和預測的一項技術。研究人員不會親手編寫軟件、肯定特殊指令集、而後讓程序完成特殊任務;相反,研究人員會用大量數據和算法「訓練」機器,讓機器學會如何執行任務。這裏有三個重要的信息:一、「機器學習」是「模擬、延伸和擴展人的智能」的一條路徑,因此是人工智能的一個子集;二、「機器學習」是要基於大量數據的,也就是說它的「智能」是用大量數據喂出來的,若是缺乏海量數據,它也就啥也不是了;三、正是由於要處理海量數據,因此大數據技術尤其重要;「機器學習」只是大數據技術上的一個應用。經常使用的10大機器學習算法有:決策樹、隨機森林、邏輯迴歸、SVM、樸素貝葉斯、K最近鄰算法、K均值算法、Adaboost算法、神經網絡、馬爾科夫。Apache有個開源項叫mahout,提供了這些經典算法的實現;可是後來spark出來了,因爲在內存迭代計算方面的優點,一會兒搶過了這個風頭,目前spark自帶的MLlib被使用得更爲普遍。雖然mahout也在向spark轉,可是在技術的世界裏就是這樣的,只有新人笑,哪聞舊人哭。學習

相較而言,深度學習是一個比較新的概念,算是00後吧,嚴格地說是2006年提出來的。老套路,也給它下一個定義。深度學習是用於創建、模擬人腦進行分析學習的神經網絡,並模仿人腦的機制來解釋數據的一種機器學習技術。它的基本特色,是試圖模仿大腦的神經元之間傳遞,處理信息的模式。最顯著的應用是計算機視覺和天然語言處理(NLP)領域。顯然,「深度學習」是與機器學習中的「神經網絡」是強相關,「神經網絡」也是其主要的算法和手段;或者咱們能夠將「深度學習」稱之爲「改良版的神經網絡」算法。深度學習又分爲卷積神經網絡(Convolutional neural networks,簡稱CNN)和深度置信網(Deep Belief Nets,簡稱DBN)。其主要的思想就是模擬人的神經元,每一個神經元接受到信息,處理完後傳遞給與之相鄰的全部神經元便可。因此看起來的處理方式有點像下圖(想深刻了解的同窗能夠自行google)。大數據

神經網絡的計算量很是大,事實上在很長時間裏因爲基礎設施技術的限制進展並不大。而GPU的出現讓人看到了曙光,也造就了深度學習的蓬勃發展,「深度學習」才一會兒火熱起來。擊敗李世石的Alpha go便是深度學習的一個很好的示例。Google的TensorFlow是開源深度學習系統一個比較好的實現,支持CNN、RNN和LSTM算法,是目前在圖像識別、天然語言處理方面最流行的深度神經網絡模型。事實上,提出「深度學習」概念的Hinton教授加入了google,而Alpha go也是google家的。在一個新興的行業,領軍人才是多麼的重要啊!google

總結:人工智能是一個很老的概念,機器學習是人工智能的一個子集,深度學習又是機器學習的一個子集。機器學習與深度學習都是須要大量數據來「喂」的,是大數據技術上的一個應用,同時深度學習還須要更高的運算能力支撐,如GPU。編碼

想要更詳細的瞭解,請訪問華爲雲學院( edu.huaweicloud.com/courses/ ),課程獲取密碼,搜索:機器學習或者深度學習或者 AI ,通常人我不告訴他喔!人工智能

相關文章
相關標籤/搜索