模式識別第3章人工神經網絡及模式識別_第1頁
模式識別第3章人工神經網絡及模式識別_第2頁
模式識別第3章人工神經網絡及模式識別_第3頁
模式識別第3章人工神經網絡及模式識別_第4頁
模式識別第3章人工神經網絡及模式識別_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第3章

人工神經網絡及模式識別

2023/2/12引言

模式識別:研究的是如何用計算機實現人腦的一些功能。人腦:可看作是由大量神經元組成的巨大的神經網絡。人工神經網:1943年,McCulloch和Pitts提出了神經元的數學模型1949年,Hebb提出神經元的學習準則,為神經網絡的學習算法奠定了基礎50年代末,Rosenblatt提出了感知器模型,首次把神經網絡的研究付諸工程實踐。1982年,Hopfield提出了神經網絡模型,設計出用電子線路實現這一網絡的方案,開拓了神經網絡用于聯想記憶和優(yōu)化計算的新途徑,大大促進了神經網絡的研究。1986年,Rumelhart及LeeCun等提出了多層感知器的反向傳播算法,克服了阻礙感知器模型發(fā)展的重要障礙?,F在神經網絡的應用已滲透到多個領域,如智能控制、模式識別、信號處理、計算機視覺、優(yōu)化計算、知識處理、生物醫(yī)學工程等。2023/2/133.1人工神經元

3.1.1生物神經元

胞體。是神經細胞的本體(可看成系統(tǒng))樹突。長度較短,接受自其他神經元的信號(輸入)軸突。它用以輸出信號突觸。它是一個神經元與另一個神經元相聯系的部位,是一個神經元軸突的端部將信號(興奮)傳遞給下一個神經元的樹突或胞體;

對樹突的突觸多為興奮性的,使下一個神經元興奮;

而對胞體的突觸多為抑制性,其作用是阻止下一個神經元興奮。2023/2/14神經元的基本工作機制一個神經元有兩種狀態(tài):興奮和抑制。平時處于抑制狀態(tài)的神經元,其樹突和胞體接收其他神經元經由突觸傳來的興奮電位;多個輸入在神經元中以代數和的方式疊加;如果輸入興奮總量超過某個閾值,神經元就會被激發(fā)進入興奮狀態(tài),發(fā)出輸出脈沖,并由軸突的突觸傳遞給其他神經元。神經元被觸發(fā)之后有一個不應期,在此期間內不能被觸發(fā),然后閾值逐漸下降,恢復興奮性。2023/2/153.1.2人工神經元

(1)輸入xi:相當于其他神經元的輸出;(2)權值ωi

:相當于突觸的連接強度(3)f:是一個非線性函數,如閾值函數或Sigmoid函數2023/2/16神經元的動作:當f為閾值函數時,其輸出為:也可寫為:或:其中:2023/2/17選取不同的輸出函數f,y的取值范圍也不同則則某些算法要求f可微,此時通常選用Sigmoid函數:

若或:若則則或:Sigmoid函數的特性:1)非線性,單調性。2)無限次可微。3)當權值很大時可近似閾值函數。當權值很小時可近似線性函數。2023/2/18如果神經元ui接收來自另一神經元uj的輸出,則當這兩個神經元同時興奮時,從uj到ui的權值wij就得到加強。具體到前述的神經元模型,可以將Hebb規(guī)則表現為如下的算法:

式中是對第i個權值的修正量η是控制學習速度的系數。太大會影響訓練的穩(wěn)定性,太小則使訓練的收斂速度變慢,一般取0<η≤1;人工神經網絡首先要以一定的學習準則進行學習,然后才能工作3.1.3神經元的學習算法–--

Hebb學習規(guī)則2023/2/193.2前饋神經網絡3.2.1前饋神經網絡(用于監(jiān)督學習)網絡的神經元接受前一級輸入,并輸出到下一級,無反饋。節(jié)點分為兩類:輸入節(jié)點與計算單元。每個計算單元可有任意個輸入,但只有一個輸出,而輸出可藕合到任意多個其他節(jié)點的輸入。前饋網絡通常分為不同的層,第i層的輸入只與第i-1層的輸出相聯。輸入節(jié)點為第一層。輸入和輸出節(jié)點由于可與外界相連,稱為可見層,而其他的中間層則稱為隱層。2023/2/1103.2.2感知器(Perceptron)也稱雙層神經網絡、單計算層感知器(1)輸入層,也稱為感知層每個節(jié)點接收一個輸入信號,n個輸入信號構成輸入列向量X

(2)具有計算單元的輸出層有m個神經元節(jié)點,均有信息處理能力,m個節(jié)點向外部輸出信息,構成輸出列向量O。(3)兩層之間的連接權值

用權值列向量Wj表示,m個權向量構成單層感知器的權值矩陣W。

感知器模型示意圖

2023/2/111感知器用于模式識別

輸入X:樣本的特征向量。

輸出O:每個節(jié)點輸出為:

輸出向量O可以用來表示類別屬性:例如:

若X∈ωj時,應使對應于該類的輸出節(jié)點的輸出Oj=1,

而其他節(jié)點的輸出則為Oi=0(或-1),2023/2/112例:單計算節(jié)點感知器(1)設輸入向量X=(x1,x2)T則輸出為:ojx1-Tx2則由方程w1jx1+w2jx2-Tj=0確定了二維平面上的一條分界線。(2)輸入n維向量,X=(x1,x2,…,xn)Twijx1+w2jx2+…+wnj

–Tj=0確定了n維空間上的一個分界平面可見:一個最簡單的單計算節(jié)點感知器具有分類功能。可實現線性分類器感知器的學習規(guī)則可以用已知類別的模式向量或特征向量作為訓練集若X∈ωj,應使對應于該類的輸出節(jié)點的輸出Oj=1,

而其他節(jié)點的輸出則為Oi=0(或-1)設理想的輸出為:Y=[y1,y2,y3,….,ym]T某次迭代(k)上的實際輸出為:Y’=[y’1,y’2,y’3,….,y’m]T對權值ω利用Hebb規(guī)則作如下的修改:wij(k+1)=wij(k)+Δwij(k)其中:Δwij(k)=η(yj-y’j)xj,i=1,2,…,n;j=1,…,m

η為學習率,用于控制調整速度,太大會影響訓練的穩(wěn)定性,太小則使訓練的收斂速度變慢,一般0<η≤1;2023/2/113感知器學習規(guī)則的訓練步驟:(1)對各權值w0j(0),w1j(0),┄,wnj(0),j=1,2,┄,m

(m為計算層的節(jié)點數)賦予較小的非零隨機數;(2)輸入樣本對{Xp,Yp},其中Xp=(-1,x1p,x2p,┄,xnp),

Yp為期望的輸出向量,上標p代表樣本對的序號,樣本集中的樣本總數為P,p=1,2,┄,P;(3)計算各節(jié)點的實際輸出:yjp(k)=sgn[WjT(k)Xp],j=1,2,...,m(4)調整各節(jié)點對應的權值:Wj(k+1)=Wj(k)+η[Yjp-Yjp(k)]Xp,j=1,2,┄,m,(5)返回到步驟(2),輸入下一對樣本,周而復始直到對所有樣本,感知器的實際輸出與期望輸出相等:Yjp(k)=Yjp2023/2/1142023/2/115感知器的學習過程與求取線性判別函數的過程是等價的感知器的一些特性:①兩層感知器只能用于解決線性可分問題。②學習過程收斂很快,且與初始值無關。2023/2/116例:單計算節(jié)點感知器,3個輸入。給定3對訓練樣本對如下:X1=(-1,1,-2,0)T

y1=1 X2=(-1,0,1.5,-0.5)T

y2=1X3=(-1,-1,1,0.5)T

y3=1設初始權向量W(0)=(0.5,1,-1,0)T,η=0.1。注意,輸入向量中第一個分量x0恒等于-1,權向量中第一個分量為閾值,試根據以上學習規(guī)則訓練該感知器。2023/2/117解:第一步輸入X1,得

WT(0)X1=(0.5,1,-1,0)(-1,1,-2,0)T=2.5,y1(0)=sgn(2.5)=1W(1)=W(0)+η[y1-y1(0)]X1=(0.5,1,-1,0)T+0.1(-1-1)(-1,1,-2,0)T=(0.7,0.8,-0.6,0)T第二步輸入X2,得

WT(1)X2=(0.7,0.8,-0.6,0)(-1,0,1.5,-0.5)T=-1.6y2(1)=sgn(-1.6)=-1W(2)=W(1)+η[y2-y2(1)]X2=(0.7,0.8,-0.6,0)T+0.1[-1-(-1)](-1,0,1.5,-0.5)T=(0.7,0.8,-0.6,0)T=W(1)第三步輸入X3,得

WT(2)X3=(0.7,0.8,-0.6,0)(-1,-1,1,0.5)T=-2.1y3(2)=sgn(-2.1)=-1W(3)=W(2)+η[d3-o3(2)]X3=(0.7,0.8,-0.6,0)T+0.1[1-(-1)](-1,-1,1,0.5)T=(0.5,0.6,-0.4,0.1)T

第四步返回到第一步,繼續(xù)訓練直到y(tǒng)p(k)-yp=03.2.3三層前饋網絡及MLP三層前饋網絡由輸入層、中間層和輸出層構成。有兩個計算層也稱三層感知器能夠求解非線性問題三層或三層以上的前饋網絡通常又被叫做多層感知器(Multi-LayerPerceptron.簡稱MLP)。由三部分組成:①、一組感知單元組成輸入層;②、一層或多層計算節(jié)點的隱藏層;③、一層計算節(jié)點的輸出層。MLP的表示:輸入節(jié)點數-第1隱層節(jié)點數-第2隱層節(jié)點數-…,-輸出節(jié)點數。如圖,可表示為:4-4-3網絡2023/2/118用感知器實現邏輯“與”功能y=sgn(0.5x1+0.5x2-0.75)2023/2/119感知器結構x1 x2 y0 0 00 1 01 0 01 1 1邏輯“與”真值表用感知器實現邏輯“或”功能y=sgn(x1+x2-0.5)2023/2/120感知器結構x1 x2 y0 0 00 1 11 0 11 1 1邏輯“或”真值表2023/2/121用感知器實現邏輯“與非”功能感知器結構y=sgn(-0.5x1-0.5x2+0.75)x1 x2 y0 0 10 1 11 0 11 1 0“與非”真值表2023/2/122單感知器不能實現“異或”功能“異或”的真值表x1 x2 y 0 0 0 0 1 1 1 0 1 1 1 0只能解決線性可分問題2023/2/123多層感知器可實現非線性函數人工神經元可實現與非門,任何邏輯函數都可以由與非門組成任何邏輯函數都可用一個三層(只有兩層計算單元)的前饋網絡實現。當神經元的輸出函數為Sigmoid函數時,上述結論可以推廣到連續(xù)的非線性函數。在很寬松的條件下,三層前饋網絡可以逼近任意的多元非線性函數,突破了二層前饋網絡線性可分的限制。

感知器,決策域:平面;雙層計算單元,決策域:凸區(qū)域三層計算單元,決策域:任意形狀2023/2/1242023/2/124MLP能實現“異或”功能“異或”的真值表x1 x2 yy1y2 0 0 0 000 1 1 011 0 1 101 1 000只能解決線性可分問題2222-2-2x1x2yy1=sgn(2x1-2x2);y12=sgn(-2x1+2x2)y=sgn(2y1+2y2)2023/2/1253.2.4反向傳播算法(BP法)三層前饋網絡的適用范圍大大超過二層前饋網絡,但學習算法較為復雜,主要困難是中間的隱層不直接與外界連接,無法直接計算其誤差。

BP算法(Back-Propogation)可解決這一問題。主要思想:從后向前(反向)逐層傳播輸出層的誤差,以間接算出隱層誤差。算法分為兩個階段:第一階段(正向過程):輸入信息從輸入層經隱層逐層計算各單元的輸出值;第二階段(反向傳播過程):輸出誤差逐層向前算出隱層各單元的誤差,并用此誤差修正前層權值。在反向傳播算法中通常采用梯度法修正權值,為此要求輸出函數可微,通常采用Sigmoid函數作為輸出函數。2023/2/126第一階段(正向過程)考慮如圖所示的某層的某單元Oj當輸入樣本某個樣本時,則若

輸出函數是Sigmoid函數,則2023/2/126i:前層第i個單元k:后層第k個單元Oj:代表本層輸出wij:前層到本層的權值第二階段(反向傳播過程)

對于輸出層,Oj是實際輸出,與理想輸出yj的誤差:局部梯度:

權值對誤差的影響:負梯度修正權值:修正算法:2023/2/127i:前層第i個單元;:后層第k個單元Oj:本層輸出;wij:前層到本層的權值實際計算時,為了加快收斂速度,一般要加上前次權值修正量,稱為慣性量:η:步長α:慣性系數局部梯度的計算若節(jié)點j是輸出單元,則輸出量可得到:yj’=Oj2023/2/128若節(jié)點j不是輸出單元,則若

輸出函數是Sigmoid函數輸出單元:非輸出單元2023/2/1292023/2/129(逐個樣本修正的)BP算法(1)選定權系數初始值wij,

步長η,慣性系數α(2)重復下述過程直至收斂(對各樣本依次計算)①從前向后各層計算各單元(前向)計算誤差:若E=0或小于一個設定的小常數E0,算法終止②對輸出層計算:③從后向前計算各隱層:④計算并保存各權值修正量⑤修正權值(成批樣本修正的)BP算法在(逐個樣本修正的)BP算法中,可以按所有樣本得到的求和,然后按總誤差修正。算法類似。2023/2/130訓練誤差與迭代次數的關系曲線,稱為學習曲線。學習曲線可以看出收斂速率及收斂情況。誤差

迭代次數學習曲線2023/2/131BP算法的問題BP算法解決了隱層權值修正問題??梢杂糜谌龑踊蚋鄬拥那梆伨W絡。問題:可能陷入局部極小點,不能達到全局收斂。初始權值不能設為0或都相同(此時,各隱層單元無差異,運算不能正常進行)。初始權值對收斂有影響。解決辦法:用較小的隨機數做初始權值。不收斂時,改變權值,試算。2023/2/132參數η和α的影響η:影響收斂性影響

不同的問題其最佳值相差很大通??稍?.1~0.3之間試探,復雜的問題用較大的值。α:影響收斂速度

在很多應用中其值可在0.9~1之間選擇(比如0.95)

α≥1時,不收斂;

也可不用慣性項(即α=0)。2023/2/1332023/2/134MLP用于模式識別三層網絡可以應付任何問題,但對于較復雜的問題,更多層的網絡有可能獲得更精簡的結果。輸入層:由特征向量構成。輸入單元數是特征維數輸出層:由類別構成。輸出單元數目可以是類數。隱層單元數:單元數目如何確定則缺乏有效的方法。問題越復雜,需要的隱層單元越多;隱層單元越多越容易收斂。但會增加計算量,而且會產生“過學習”效果,使對未出現過的樣本的推廣能力變差。隱層單元數難以確定時,可以先選較多單元數,待學習完成后,再逐步刪除一些隱層單元。若性能明顯變壞,則恢復原狀,逐個測試各隱層單元的貢獻,把不必要的刪去。2023/2/1353.2.5其他神經網絡徑向基函數網絡(可用于非監(jiān)督學習)自組織映射神經網絡(SOM)網絡Hopfield網絡:是一種反饋網絡2023/2/1362023/2/1363.3競爭學習和側抑制前述前饋網絡屬于監(jiān)督學習,需要同時提供輸入樣本和相應的理想輸出。引進競爭機制的前饋網絡可以實現無監(jiān)督學習,完成聚類的任務。競爭學習網絡的結構與二層前饋網絡類似,只是在輸出層加上了側抑制,如圖所示。競爭學習網絡結構示意圖2023/2/1372023/2/137側抑制(不講,自學)側抑制是在輸出層各單元之間相互用較大的負權值輸入對方的輸出,這種互連構成正反饋,類似于雙穩(wěn)態(tài)或多穩(wěn)態(tài)觸發(fā)器。競爭的結果是,具有較大輸入的單元輸出為1,而其他單元的輸出都為0。網絡動作機制為:2023/2/1382023/2/138初始值及權向量的處理:學習時先用隨機數作為權值初始值,為了防止某個輸出單元的權值過大造成不應有的側重,在初始值和整個學習過程中隨時將權向量進行歸一化處理,即使得學習算法:當樣本為歸一化樣本(||x||=1)時,學習可按如下算法進行:2023/2/1392023/2/139注意的問題網絡不可能收斂。因此可以采取強制收斂的方法,在學習過程中將步長參數緩慢減少至零。學習結果受初始值和學習樣本順序影響很大。聚類的結果未必是我們想要的結果,因此在實際應用時需要加入適當的人工干預。例如先選擇少量典型性好的樣本作為權向量初始。2023/2/1403.4神經網絡用于模式識別的典型做法

3.4.1多層前饋網絡用于模式識別在各種人工神經網絡模型中,在模式識別中應用最多的也是最成功的當數多層前饋網絡,其中又以采用BP學習算法的多層感知器(習慣上也簡稱為BP網絡)為代表。由于網絡采用的是監(jiān)督學習方式進行訓練,因此只能用于監(jiān)督模式識別問題。一般有以下兩種應用方式:1、多輸出型2、單輸出型2023/2/141一、多輸出型

輸入層:對應樣本特征向量,每一個節(jié)點對應一個特征輸出層:節(jié)點數等于類別數,一個輸出節(jié)點對應一個類。訓練階段:如果輸入訓練樣本的類別標號是i,則訓練時的期望輸出設為第個節(jié)點為1,而其余輸出節(jié)點均為0。識別階段:未知類別的樣本作用到輸入端時,樣本的類別判定為與輸出值最大的那個節(jié)點對應的類別。若輸出最大的節(jié)點與其他節(jié)點輸出的差較小,可作拒絕決策。“1-0”編碼模式或者“C中取1”模式:m個輸出節(jié)點,用它們的某種編碼來代表C個類別。2023/2/1

溫馨提示

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

評論

0/150

提交評論