什么是機器學習,什么是人工智能,,什么是深度學習,,這些名詞概念我們一直有聽說,但是也很容易混淆 人工智能人工智能技術希望使用計算機來構造復雜的,、擁有與人類智慧同樣本質(zhì)特性的機器,,這些能夠代替人工工作的機器,算法等等統(tǒng)一稱之為人工智能,,人工智能是一個很大的范疇,,隨著計算機技術的不斷發(fā)展,人工智能的研究領域也在不斷擴大,,下圖展示了人工智能研究的各個分支,,包括專家系統(tǒng)、機器學習,、進化計算,、模糊邏輯、計算機視覺,、自然語言處理,、推薦系統(tǒng)等。 人工智能 機器學習:一種實現(xiàn)人工智能的方法 機器學習最基本的做法,,是使用算法來解析數(shù)據(jù)、從中學習,,然后對真實世界中的事件做出決策和預測,。與傳統(tǒng)的為解決特定任務、硬編碼的軟件程序不同,,機器學習是用大量的數(shù)據(jù)來“訓練”,,通過各種算法從數(shù)據(jù)中學習如何完成任務。 深度學習,,一種實現(xiàn)機器學習的神經(jīng)網(wǎng)絡方法一個例子在計算機視覺領域中,,若識別一只熊貓,機器學習的方法是告訴機器熊貓的各種特征,,比如鼻子,,眼睛,嘴巴,,毛發(fā)等等特征,,讓機器認識到擁有這些特征的便是一只熊貓 然而深度學習的方法是給機器一張圖片,讓機器自己去提取特征,,進而預測出是否是熊貓,,若預測失敗,神經(jīng)網(wǎng)絡通過前向傳遞,,告訴神經(jīng)網(wǎng)絡哪里出現(xiàn)了錯誤,,重新進行識別,直到識別正確為止,,最著名的便是這幾年大火的CNN卷積神經(jīng)網(wǎng)絡,, 包括計算機識別,自然語言處理,,專家系統(tǒng),,推薦系統(tǒng)等等,都或多或少利用了CNN卷積神經(jīng)網(wǎng)絡的知識 總結下圖,,便很好的解釋了三者之間的關系,,隨著計算機算法的不斷改進,深度學習越來越受到人工智能領域的贊賞,。 AI 的核心目標是提供一組算法和技術,可用于解決人類憑直覺就能自動執(zhí)行,但對計算機而言非常具有挑戰(zhàn)性的問題,。這類人工智能問題的一個很好的例子是解釋和理解圖像的內(nèi)容——這項任務是人類可以毫不費力地完成的任務,,但事實證明,機器很難完成,。 人工神經(jīng)網(wǎng)絡 (ANN) 是一類機器學習算法,,它從數(shù)據(jù)中學習并專注于模型識別,其靈感來自大腦的結構和功能,。深度學習是人工智能的一個子集,,我們重點學習深度學習。 神經(jīng)網(wǎng)絡和深度學習的簡明歷史“深度學習”自 1940 年代以來就已經(jīng)存在,,并經(jīng)歷了各種名稱更改,,包括控制論、連接主義和最熟悉的人工神經(jīng)網(wǎng)絡(ANN),。雖然受到人類大腦及其神經(jīng)元如何相互作用的啟發(fā),,但人工神經(jīng)網(wǎng)絡并不意味著是大腦的現(xiàn)實模型。相反,,它們是一種靈感,,使我們能夠在一個非常基本的大腦模型與我們?nèi)绾瓮ㄟ^人工神經(jīng)網(wǎng)絡模仿其中一些行為之間進行比較,。 第一個神經(jīng)網(wǎng)絡模型來自McCulloch 和 Pitts 于 1943 年,。這個網(wǎng)絡是一個二元分類器,能夠根據(jù)一些輸入識別兩個不同的類別,。問題是用于確定給定輸入的類標簽的權重需要由人工手動調(diào)整——如果需要人工干預,,這種類型的模型顯然不能很好地擴展。 然后,,在 1950 年代,,Rosenblatt(1958 年,1962 年)發(fā)布了開創(chuàng)性的感知器算法——該模型可以自動學習對輸入進行分類所需的權重(無需人工干預),。感知器架構的一個例子可以在下圖 中看到,。事實上,這種自動訓練過程構成了隨機梯度下降 (SGD) 的基礎,,如今它仍然用于訓練非常深的神經(jīng)網(wǎng)絡,。 感知器算法 一個簡單的感知器網(wǎng)絡架構示例,,它接受多個輸入,、計算加權和并應用階躍函數(shù)來獲得最終預測,。 在此期間,基于感知器的技術在神經(jīng)網(wǎng)絡社區(qū)風靡一時,。然而,,Minsky 和 ?Papert于1969 年發(fā)表的一篇論文有效地使神經(jīng)網(wǎng)絡研究停滯了近十年,。他們的工作表明,,具有線性激活函數(shù)(無論深度如何)的感知器只是一個線性分類器,無法解決非線性問題,。非線性問題的典型示例是下圖 中的 XOR 數(shù)據(jù)集,。嘗試一條直線來將藍色星星與紅色圓圈分開是不可能的。 XOR 數(shù)據(jù)集 此外,,作者認為我們沒有構建大型深度神經(jīng)網(wǎng)絡所需的計算資源,僅這一篇論文就幾乎扼殺了神經(jīng)網(wǎng)絡研究,。 幸運的是,,反向傳播算法被Werbos 、Rumelhart 和LeCun 等人提出,。能夠使神經(jīng)網(wǎng)絡從可能已經(jīng)過早死亡的情況中復蘇,。他們在反向傳播算法方面的研究使多層前饋神經(jīng)網(wǎng)絡得以訓練。 反向傳播算法 一個多層前饋網(wǎng)絡架構,,具有一個輸入層(3 個節(jié)點)、兩個隱藏層(第一層有 2 個節(jié)點,,第二層有 3 個節(jié)點)和一個輸出層(2 個節(jié)點),。 結合非線性激活函數(shù),研究人員現(xiàn)在可以學習非線性函數(shù)并解決 XOR 問題,,為神經(jīng)網(wǎng)絡的全新研究領域打開大門,。進一步的研究表明,神經(jīng)網(wǎng)絡是通用逼近器,,能夠逼近任何連續(xù)函數(shù)(但不保證網(wǎng)絡是否能夠真正學習表示函數(shù)所需的參數(shù)),。 反向傳播算法是現(xiàn)代神經(jīng)網(wǎng)絡的基石,使我們能夠有效地訓練神經(jīng)網(wǎng)絡并“教”它們從錯誤中學習,。 也許將深度學習應用于特征學習的典型例子是應用于手寫字符識別的卷積神經(jīng)網(wǎng)絡(LeCun),,它通過在每個圖像的頂部依次堆疊層來自動從圖像中學習區(qū)分模式(稱為“過濾器”)。網(wǎng)絡較低層的過濾器表示邊和角,而較高層的層使用邊和角來學習更多用于區(qū)分圖像類別的抽象概念,。 LeCun在貝爾實驗室工作期間開發(fā)了一套能夠識別手寫數(shù)字的系統(tǒng),,并把它命名為LeNet?;蛟S你沒聽過LeNet,,但是當年美國大多數(shù)銀行就是用它來識別支票上面的手寫數(shù)字的。能夠達到這種商用的地步,,它的準確性可想而知,。那么LeNet究竟是什么呢?LeNet是一種典型的用來識別手寫數(shù)字的卷積神經(jīng)網(wǎng)絡,。自動識別銀行支票,,這是卷積神經(jīng)網(wǎng)絡第一次應用于解決實際問題。最著名的MNIST數(shù)據(jù)集便是此神經(jīng)網(wǎng)絡訓練的數(shù)據(jù)集 MNIST 神經(jīng)網(wǎng)絡發(fā)展到這里,,便成功了打開了深度學習的大門,隨著近幾年的大力發(fā)展,,不同的計算機算法,,特別是CNN卷積神經(jīng)網(wǎng)絡的不斷發(fā)展,慢慢壯大了深度學習的發(fā)展 深度學習的主要幾個方向計算機視覺是深度學習的第一個應用到商業(yè)用途的深度學習應用,,說得白一點,,計算機視覺便是使用神經(jīng)網(wǎng)絡模仿人看的功能,包括人臉識別與人臉檢測以及相關人臉方面的應用,,如下我們的專欄也介紹了相關人臉方面的技術 專欄 人工智能之人臉檢測與人臉識別 |
|