機器學習簡明教程-基于Python語言實現(xiàn) 課件 第8章人工神經(jīng)網(wǎng)絡(luò)_第1頁
機器學習簡明教程-基于Python語言實現(xiàn) 課件 第8章人工神經(jīng)網(wǎng)絡(luò)_第2頁
機器學習簡明教程-基于Python語言實現(xiàn) 課件 第8章人工神經(jīng)網(wǎng)絡(luò)_第3頁
機器學習簡明教程-基于Python語言實現(xiàn) 課件 第8章人工神經(jīng)網(wǎng)絡(luò)_第4頁
機器學習簡明教程-基于Python語言實現(xiàn) 課件 第8章人工神經(jīng)網(wǎng)絡(luò)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

人工神經(jīng)網(wǎng)絡(luò)《機器學習簡明教程》高延增侯躍恩羅志堅機械工業(yè)出版社08本章目標?理解神經(jīng)元模型的原理?理解多層神經(jīng)網(wǎng)絡(luò)的原理?了解反向傳播算法人工神經(jīng)網(wǎng)絡(luò)(ArtificialNeuralNetwork)是一種較為特殊的智能算法,它的誕生是受大腦中神經(jīng)元機理啟發(fā)的。人工神經(jīng)網(wǎng)絡(luò)的發(fā)展經(jīng)歷了三次高潮和兩次低谷,現(xiàn)如今人工智能領(lǐng)域大放異彩的深度學習算法就是以神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的。因此,神經(jīng)網(wǎng)絡(luò)算法對人工智能學習者非常重要,不可不學!上一章講的SVM,首先假設(shè)訓練樣本集是可分的,然后想辦法求解一個分隔超平面;再前面的決策樹、K近鄰、線性回歸等算法也與之類似,它們都是先對數(shù)據(jù)做一些假設(shè),然后根據(jù)這些假設(shè)求解數(shù)學模型,最后把求得的模型應(yīng)用于生產(chǎn)實際解決一些與初始假設(shè)類似的問題。而神經(jīng)網(wǎng)絡(luò)算法的設(shè)計理念不一樣,它的設(shè)計初衷是模擬人類大腦的工作原理,以神經(jīng)元為基礎(chǔ)構(gòu)建一個網(wǎng)狀結(jié)構(gòu)以實現(xiàn)可以替代人類大腦的人工智能。人工神經(jīng)網(wǎng)絡(luò)的發(fā)展經(jīng)歷了神經(jīng)元模型、BP(BackPropagationTraining)網(wǎng)絡(luò)、深度學習三個主要階段,本章重點介紹神經(jīng)元和BP神經(jīng)網(wǎng)絡(luò)。目錄/Contents8.18.2人工智能概念神經(jīng)元模型8.3多層神經(jīng)網(wǎng)絡(luò)8.4應(yīng)用案例8.1人工智能的概念——圖靈測試人工智能(ArtificialIntelligence,AI)分成兩部分人工和智能,人工就是人力制造的,那人力制造的東西在什么條件下可以稱之為人工智能呢?指測試人與被測試者(一個人和一臺機器)隔開的情況下,通過一些裝置(如鍵盤)由測試人向被測試者隨意提問(如左圖),如果經(jīng)過一段時間(超過25分鐘)后被測試者的答復不能使測試人確認出哪個是人、哪個是機器的回答,那么這臺機器就通過了測試,并被認為具有人類智能。8.1人工智能的概念——圖靈測試圖靈測試的意義:(1)人類能否制造出可以思考的機器?(2)如何判斷人類造出的機器能否思考?新圖靈測試方案包括:測試人工智能是否能理解一篇文章(如輸入一篇文章讓算法分析文章中某個人物性格或中心思想)、測試一個機器人是否具備對物理環(huán)境的適應(yīng)能力(如讓護理機器人幫助老人從浴缸里出來)、測試一個人工智能助理是否勝任某一工作任務(wù)(如顧客對客服機器人的滿意度調(diào)查)等。8.1人工智能的概念——實現(xiàn)AI的三種思路(1)功能模擬;(2)結(jié)構(gòu)模擬;(3)行為模擬。功能模擬又稱符號主義,把問題或知識表示為某種邏輯結(jié)構(gòu),運用符號演算實現(xiàn)表示、推理和學習等功能,從宏觀上模擬人腦思維,實現(xiàn)人工智能功能。功能模擬法的應(yīng)用包括定理證明、自動推理、專家系統(tǒng)、自動程序設(shè)計和機器博弈等。結(jié)構(gòu)模擬也稱聯(lián)結(jié)主義,該方法認為思維的基元不是符號而是神經(jīng)元,通過模擬人類的大腦結(jié)構(gòu)來實現(xiàn)人工智能,屬于非符號處理范疇。本方法通過對神經(jīng)網(wǎng)絡(luò)的訓練進行學習,獲得知識并用于解決問題。結(jié)構(gòu)模擬法在模式識別、圖像信息壓縮等領(lǐng)域獲得成功應(yīng)用,特別是在大數(shù)據(jù)訓練集的加持下取得良好效果。行為模擬也稱行為主義,該方法認為智能取決于感知和行動,提出智能行為的“感知-動作”模式。它在控制論的基礎(chǔ)上發(fā)展而來,在自動控制領(lǐng)域有較為廣泛的應(yīng)用,如自適應(yīng)、自尋優(yōu)、自學習、自組織等。該方法在仿生機器人、智能機械等領(lǐng)域有所貢獻。8.1人工智能的概念——神經(jīng)網(wǎng)絡(luò)這些我們習以為常的日常動作,需要人腦中數(shù)百億個高度相連的神經(jīng)元協(xié)作完成。8.1人工智能的概念——神經(jīng)網(wǎng)絡(luò)神經(jīng)元主要由一個神經(jīng)核(Nucleus)、多個樹突(Dendrites)、一個軸突(Axon)組成,而在軸突的末梢那里又有多個分叉(軸突末梢)。神經(jīng)元通過樹突從外界(其它神經(jīng)元)獲得信息,又通過軸突將本神經(jīng)元的信號以電脈沖的形式輸出給其它神經(jīng)元。也就是說,一個神經(jīng)元可以通過樹突處理多個神經(jīng)元的輸入,然后得到一個輸出結(jié)果,又可以將唯一的處理結(jié)果輸出給多個其它的神經(jīng)元。神經(jīng)元和神經(jīng)元之間,是通過樹突和軸突末梢的連接來協(xié)同工作的,樹突和軸突連接的位置被稱為突觸(Synapse)。神經(jīng)元示意圖人工神經(jīng)網(wǎng)絡(luò)就是對生物神經(jīng)網(wǎng)絡(luò)的簡化抽象,它是從神經(jīng)元模型開始逐步發(fā)展出來的一種人工智能算法模型。目錄/Contents8.18.2人工智能概念神經(jīng)元模型8.3多層神經(jīng)網(wǎng)絡(luò)8.4應(yīng)用案例8.2神經(jīng)元模型——模型表示1943年,心理學家McCulloch和數(shù)學家Pitts參考生物神經(jīng)元的結(jié)構(gòu)發(fā)表了抽象的神經(jīng)元模型。神經(jīng)元模型包含輸入、處理、輸出三部分,分別類比生物神經(jīng)元的樹突、神經(jīng)核、軸突。神經(jīng)元的處理又包含求和運算、函數(shù)運算(稱為激活函數(shù)或激勵函數(shù))兩步,每個輸入分量上又都會乘以對應(yīng)的權(quán)值。

(8.1)8.2神經(jīng)元模型——模型表示

8.2神經(jīng)元模型——模型表示

函數(shù)名圖形函數(shù)公式導數(shù)階躍ReLuSigmoid雙曲正切Leaky-ReLu8.2神經(jīng)元模型——模型表示神經(jīng)元而每個輸入分量上的權(quán)值需要根據(jù)訓練集適當調(diào)整,設(shè)置合適的權(quán)值和激活函數(shù)就可以讓神經(jīng)元模型實現(xiàn)簡單的邏輯運算。

求和、函數(shù)運算合并,使用帶數(shù)值的有向線段表示值的加權(quán)傳遞,得到神經(jīng)元的模型圖如下圖:

(8.2)8.2神經(jīng)元模型——實現(xiàn)基本邏輯運算例8.2.1:用神經(jīng)元模型實現(xiàn)邏輯“與”運算。000010100111邏輯與真值表

模型的輸入與輸出之間的映射關(guān)系近似值0000101001118.2神經(jīng)元模型——實現(xiàn)基本邏輯運算例8.2.2:用神經(jīng)元模型實現(xiàn)邏輯“或”運算。邏輯或真值表

模型的輸入與輸出之間的映射關(guān)系000011101111近似值0000111011118.2神經(jīng)元模型——實現(xiàn)基本邏輯運算例

8.2.3:用神經(jīng)元模型實現(xiàn)邏輯“非”運算。邏輯非真值表

模型的輸入與輸出之間的映射關(guān)系0110近似值01108.2神經(jīng)元模型——實現(xiàn)基本邏輯運算分析一下邏輯與運算、邏輯或、邏輯非運算,如下圖所示這三種運算本質(zhì)上都是線性可分的

1969年,被稱為人工智能之父的計算機科學家馬文·明斯基(MarvinLeeMinsky)出版的《Perceptions》(《感知器》)一書指出:單層感知器無法解決線性不可分問題(如異或、同或運算);對于線性不可分問題,需要使用多層神經(jīng)網(wǎng)絡(luò);而受限于當時的計算機硬件水平和算法水平并沒有針對多層神經(jīng)網(wǎng)絡(luò)的有效訓練算法。因此,到了上世紀70年代人工智能領(lǐng)域?qū)τ谏窠?jīng)網(wǎng)絡(luò)的研究陷入了第一次低谷。目錄/Contents8.18.2人工智能概念神經(jīng)元模型8.3多層神經(jīng)網(wǎng)絡(luò)8.4應(yīng)用案例8.3多層神經(jīng)網(wǎng)絡(luò)1986年,Rumelhar和Hinton等人提出了反向傳播(Backpropagation,BP)算法,解決了兩層神經(jīng)網(wǎng)絡(luò)所需要的復雜計算量問題,從而帶動了業(yè)界使用兩層神經(jīng)網(wǎng)絡(luò)研究的熱潮。標準多層感知器(MLP)是由多個單層感知器連接在一起的,存在一層輸入節(jié)點、一層輸出節(jié)點和一個或多個中間層。中間層也被稱為“隱藏層”,因為它們不能直接從系統(tǒng)輸入和輸出中觀察到,如下圖:上圖中,輸入層中的只是提供輸入變量而沒有運算,所以輸入層不被計入神經(jīng)網(wǎng)絡(luò)的層數(shù),上圖所示為一個三層神經(jīng)網(wǎng)絡(luò),含兩個隱藏層、一個輸出層,當網(wǎng)絡(luò)的隱藏層多于一層時又稱深層神經(jīng)網(wǎng)絡(luò)。8.3多層神經(jīng)網(wǎng)絡(luò)——模型表示以兩層神經(jīng)網(wǎng)絡(luò)為例說明多層神經(jīng)網(wǎng)絡(luò)的模型表示,網(wǎng)絡(luò)結(jié)構(gòu)如下圖:

(8.4)(8.5)8.3多層神經(jīng)網(wǎng)絡(luò)——模型表示

(8.6)類似的,式(8.5)可簡寫為式(8.7)

(8.7)

8.3多層神經(jīng)網(wǎng)絡(luò)——模型表示多層神經(jīng)網(wǎng)絡(luò)中,使用逐層前向傳遞的方法寫出任意復雜的多層神經(jīng)網(wǎng)絡(luò)的輸入與輸出之間的映射關(guān)系。也就是說,如果整個神經(jīng)網(wǎng)絡(luò)的拓撲結(jié)構(gòu)、激活函數(shù)、權(quán)值矩陣、輸入向量是確定的,那對應(yīng)的輸出也就是確定的值。多層神經(jīng)網(wǎng)絡(luò)設(shè)計步驟:(1)確定網(wǎng)絡(luò)結(jié)構(gòu),包括層數(shù)、每一層的節(jié)點數(shù)、節(jié)點的激活函數(shù)、層與層間的連接方式等;(2)訓練神經(jīng)網(wǎng)絡(luò),主要是通過訓練集確定各個連接上的權(quán)值。以階躍函數(shù)作為激活函數(shù),若適當調(diào)整權(quán)值和偏移量就可以得到想要的矩形信號,如左上圖。因此,只要是足夠多的神經(jīng)元構(gòu)成的多層神經(jīng)網(wǎng)絡(luò)就可以擬合任意復雜的非線性函數(shù),且擬合的精度是可調(diào)的。

8.3多層神經(jīng)網(wǎng)絡(luò)——實現(xiàn)同或運算例8.3.1:用多層神經(jīng)網(wǎng)絡(luò)模型實現(xiàn)邏輯“同或”運算。001010100111真值表

可以通過邏輯與、邏輯非、邏輯或運算的組合可以求得邏輯同或運算,000110100010000111018.3多層神經(jīng)網(wǎng)絡(luò)——代價函數(shù)神經(jīng)元模型、神經(jīng)網(wǎng)絡(luò)模型都是單輸出的,用來解決二分類問題。如果是多分類問題,可以采用多輸出的神經(jīng)網(wǎng)絡(luò)。

(8.9)8.3多層神經(jīng)網(wǎng)絡(luò)——代價函數(shù)

神經(jīng)網(wǎng)絡(luò)的拓撲結(jié)構(gòu),選擇不多。它的輸入層的節(jié)點數(shù)是由樣本特征的數(shù)量決定的,而輸出層的節(jié)點數(shù)是由樣本點的分類個數(shù)決定的。對于隱藏層,單從分類效果來看當然是節(jié)點數(shù)越多效果越好,但是過多的隱藏層層數(shù)和節(jié)點數(shù)必然會增加計算復雜度,需要平衡分類效果和訓練復雜度。一般情況下,隱藏層的層數(shù)設(shè)置不多于3層,而隱藏層的節(jié)點數(shù)一般根據(jù)輸入層節(jié)點數(shù)逐層成倍遞增或遞減。常用的激活函數(shù)也是有限的幾個。在工程上,激活函數(shù)選擇一般是先嘗試ReLu函數(shù)的效果;如果ReLu不滿足需要再嘗試Leaky-ReLu或Maxout等變種;然后是嘗試tanh、sigmoid這一類的函數(shù)。各個連接線上的權(quán)值,這就像前面幾章講到的算法模型的參數(shù)一樣需要訓練來確定最優(yōu)參數(shù)。也需要通過算法來最小化代價函數(shù)(costfunction)來擬合神經(jīng)網(wǎng)絡(luò)的參數(shù)。與邏輯回歸中的代價函數(shù)類似,這個函數(shù)能夠反映神經(jīng)網(wǎng)絡(luò)對樣本特征的映射分類結(jié)果與樣本的分類的差距,然后反映這個差距的函數(shù)還要能夠較容易地找到一種通過調(diào)整權(quán)值使它最小化的算法。8.3多層神經(jīng)網(wǎng)絡(luò)——代價函數(shù)

(8.10)

為了防止過擬合會在代價函數(shù)中加入正則化項。(8.11)

8.3多層神經(jīng)網(wǎng)絡(luò)——BP算法

方向傳播相對于正向傳播而言,正向傳播(forwardpropagation)是指從輸入層開始怎樣通過逐層運算得到輸出層的輸出的。

8.3多層神經(jīng)網(wǎng)絡(luò)——BP算法

(8.12)正向傳播的過程:8.3多層神經(jīng)網(wǎng)絡(luò)——BP算法神經(jīng)網(wǎng)絡(luò)只有到達輸出層才知道神經(jīng)網(wǎng)絡(luò)的計算值和實際值的接近程度即代價函數(shù)的值,要根據(jù)最后的代價函數(shù)更新整個網(wǎng)絡(luò)的參數(shù)。在起始階段為神經(jīng)網(wǎng)絡(luò)每個連接上的權(quán)值設(shè)置一個隨機的初始值,利用梯度下降法根據(jù)公式(8.13)逐步更新權(quán)值,使代價函數(shù)取得最小值。(8.13)

(8.14)

8.3多層神經(jīng)網(wǎng)絡(luò)——BP算法(8.15)

(8.16)式(8.16)也都是已知的量,這樣對于神經(jīng)網(wǎng)絡(luò)第L層的權(quán)值更新(8.13)就可以求出來了。也就是說,確定代價函數(shù)、激活函數(shù)以及初始化的權(quán)值矩陣后,根據(jù)正向傳播公式計算出網(wǎng)絡(luò)的輸出,就可以算出第L層的權(quán)值更新公式(8.13)。8.3多層神經(jīng)網(wǎng)絡(luò)——BP算法

(8.17)

8.3多層神經(jīng)網(wǎng)絡(luò)——BP算法目錄/Contents8.18.2人工智能概念神經(jīng)元模型8.3多層神經(jīng)網(wǎng)絡(luò)8.4應(yīng)用案例8.4應(yīng)用案例——手寫數(shù)字識別例8.4.1:構(gòu)建一個神經(jīng)網(wǎng)絡(luò),實現(xiàn)手寫體數(shù)字識別。待識別圖像的結(jié)果可能為0~9中的某個數(shù)字,因此這是一個多元分類(10分類)問題,所以神經(jīng)網(wǎng)絡(luò)的輸出層有10個節(jié)點,每個序號節(jié)點的輸出對應(yīng)于待識別圖片是這個數(shù)字序號的概率值。

隱藏層設(shè)置為3層,每層的節(jié)點數(shù)分別為512、256、128,結(jié)構(gòu)如下圖8.4應(yīng)用案例——手寫數(shù)字識別例8.4.1:構(gòu)建一個神經(jīng)網(wǎng)絡(luò),實現(xiàn)手寫體數(shù)字識別。將各連接上的權(quán)值初始化為一個在區(qū)間0,1上的隨機數(shù),選擇Sigmoid函數(shù)作為激活函數(shù),將輸入層、各隱藏層、輸出層的學習率都設(shè)置為0.1。將樣本集按照7:3分成訓練集和測試集。按照8.3節(jié)介紹的步驟訓練神經(jīng)網(wǎng)絡(luò),將權(quán)值更新循環(huán)的結(jié)束條件設(shè)置為滿足以下條件中的一種:(1)最大循環(huán)次數(shù)500;(2)訓練集上的正確識別率大于95%;(3)權(quán)值更新后,訓練集上的正確率提升但測試集上的正確率下降。本章小結(jié)本章是神經(jīng)網(wǎng)絡(luò)算法的入門篇。介紹了神經(jīng)元模型、多層網(wǎng)絡(luò)模型以及BP算法。人工神經(jīng)元模型受生物神經(jīng)元啟發(fā),能夠解決一些簡單的線性分類問題,掀起第一波人工神經(jīng)網(wǎng)絡(luò)研究的高潮。但

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論