前饋神經網絡模型精品_第1頁
前饋神經網絡模型精品_第2頁
前饋神經網絡模型精品_第3頁
前饋神經網絡模型精品_第4頁
前饋神經網絡模型精品_第5頁
已閱讀5頁,還剩86頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、前饋神經網絡模型前饋神經網絡:由一層或多層非線性處理單元組成。相鄰層之間通過突觸權陣連接起來。由于前一層的輸出作為下一層的輸入,因此此類神經網絡為前向神經網絡。在前向神經網絡結構中輸入輸出之間包含著一層或多層隱含層。前向神經網絡可以看成是一種一組輸入模式到一組輸出模式的系統變換,這種變換通過對某一給定的輸入樣本相應的輸出樣本集的訓練而得到,為了實現這一行為,網絡的權系數在某種學習規則下進行自適應學習,也就是有導師指導學習。內容提要感知器多層感知器自適應線性元模型BP算法第一節感知器線性閾值單元線性閾值單元是前向網絡(又稱前饋網絡)中最基本的計算單元,它具有n個輸入(x1,x2,xn),一個輸出

2、y,n個連接權值(w1,w2,wn),且xiwiy感知器簡介 1958年,美國心理學家Frank Rosenblatt提出一種具有單層計算單元的神經網絡,稱為Perceptron,即感知器。感知器是模擬人的視覺接受環境信息,并由神經沖動進行信息傳遞的層次型神經網絡。感知器研究中首次提出了自組織、自學習的思想,而且對所能解決的問題存在著收斂算法,并能從數學上嚴格證明,因而對神經網絡研究起了重要推動作用。 感知器的結構與功能都非常簡單,以至于在解決實際問題時很少采用,但由于它在神經網絡研究中具有重要意義,是研究其它網絡的基礎,而且較易學習和理解,適合于作為學習神經網絡的起點。 感知器模型結構感知器

3、的模型結構如圖所示。感知器是指只有一層處理單元的感知器,如果包括輸入層在內,應為兩層。圖中輸入層也稱為感知層,有n個神經元節點,這些節點只負責引入外部信息,自身無信息處理能力,每個節點接收一個輸入信號,n個輸入信號構成輸入列向量X。輸出層也稱為處理層,有m個神經元節點,每個節點均具有信息處理能力,m個節點向外部輸出處理信息,構成輸出列向量O。兩層之間的連接權值用權值列向量Wj表示,m個權向量構成單層感知器的權值矩陣W。3個列向量分別表示為:感知器模型結構 j=1,2,m 感知器模型結構 感知器的功能 一個最簡單的單計算節點感知器具有分類功能。其分類原理是將分類知識存儲于感知器的權向量(包含了閾

4、值)中,由權向量確定的分類判決界面將輸入模式分為兩類。感知器的功能 (1)設輸入向量X=(x1 ,x2)T輸出:則由方程 w1jx1+w2jx2-Tj=0 確定了二維平面上的一條分界線。ojx1-1x2感知器的功能 w1j x1+w2j x2 Tj = 0w1j x1 = Tj - w2j x2x1 = (Tj -w2j x2) / w1j = - ( w2j/ w1j ) x2 +Tj / w1j = a x2 +c 感知器的功能 (2)設輸入向量X=(x1,x2,x3)T輸出:則由方程 w1jx1+w2jx2+w3j Tj=0 確定了三維空間上的一個分界平面。 x2ojx1x3-1感知器的

5、功能 w1j x1+w2j x2 +w3j x3 Tj = 0 x1 = a x2 +b x3 +c 感知器的功能 (3) 設輸入向量X=(x1,x2,,xn)T則由方程 w1jx1+w2jx2+wnj Tj=0 (3.6) 確定了n維空間上的一個分界平面。 輸出:w1jx1+w2jx2+wnj Tj=0 (3.5)例一 用感知器實現邏輯“與”功能 x1x2y000010100111邏輯“與”真值表例一 用感知器實現邏輯“與”功能 感知器結構wix1+w2x2 -T=0 0.5x1+0.5x2-0.75=0例二 用感知器實現邏輯“或”功能 x1x2y000011101111邏輯“或”真值表例二

6、 用感知器實現邏輯“或”功能 感知器結構wix1+w2x2 -T=0 x1+x2-0.5=0思考 分界線的方程是什么?感知器的模型如何表示?數學表達式?感知器的局限性 Rosenblatt已經證明,如果兩類模式在分布空間中可以找到一個超平面將它們分開,那么感知器的學習過程就一定會收斂。否則判定邊界就會振蕩不休,永遠不會穩定,這也正是單層感知器所無法克服的缺陷,所以它連最簡單的異或(XOR)問題也解決不了。“異或”的真值表x1x2y000011101110感知器的局限性 關鍵問題就是求感知器的學習 式中,當實際輸出與期望值相同時,權值不需要調整。感知器學習規則代表一種有導師學習。感知器的學習規則

7、 感知器學習規則的訓練步驟:(1) 對各權值w0j(0),w1j(0),wnj(0),j=1, 2,m (m為計算層的節點數)賦予較小的非零隨機數;(2) 輸入樣本對Xp,dp,其中Xp=(-1,x1p,x2p,xnp), dp為期望的輸出向量(教師信號),上標p代表 樣本對的模式序號,設樣本集中的樣本總數為P, 則p=1,2,P;感知器的學習規則 (3)計算各節點的實際輸出ojp(t)=sgnWjT(t)Xp, j=1,2,.,m;(4)調整各節點對應的權值,Wj(t+1)= Wj(t)+djp-ojp(t)Xp, j=1, 2,m, 其中為學習率,用于控制調整速度,太大會影響訓練的穩定性,

8、太小則使訓練的收斂速度變慢, 一般取01;(5)返回到步驟(2)輸入下一對樣本,周而復始直到對所有 樣本,感知器的實際輸出與期望輸出相等。感知器的學習規則的訓練步驟 1.初始化:權值初始化為一個較小的隨機非零值。2.將一模式送入輸入神經元,并給出理想輸出值。3.計算神經網絡模型的實際輸出:4.調節權值: 5.轉2,直到這次迭代完所給定的所有輸入樣本。6.計算結束判據。條件符合,結束;否則轉2。感知器的學習 例三 單計算節點感知器,3個輸入。給定3對訓練樣本對如下:X1 = (-1,1,-2,0)T d1 =1X2 = (-1,0,1.5,-0.5)T d2 = 1X3 = (-1,-1,1,0

9、.5)T d3 =1 設初始權向量W(0)=(0.5,1,-1,0)T,=0.1。注意,輸入向量中第一個分量x0恒等于-1,權向量中第一個分量為閾值,試根據以上學習規則訓練該感知器。感知器的學習 解:第一步 輸入X1,得 WT(0)X1=(0.5,1,-1,0)(-1,1,-2,0)T=2.5 o1(0)=sgn(2.5)=1 W(1)= W(0)+d1- o1(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

10、)T=-1.6 o2(1)=sgn(-1.6)=-1 W(2)= W(1)+d2- o2(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由于d2= o2(1),所以W(2)= W(1)。感知器的學習 第三步 輸入X3,得 WT(2)X3=(0.7,0.8,-0.6,0)(-1,-1,1,0.5)T=-2.1 O3(2)=sgn(-2.1=-1W(3)= W(2)+d3- o3(2) X3 =(0.7,0.8,-0.6,0)T+0.11-(-1)(-1,-1,1,0.5)T =(0.5,0.6,-0.4

11、,0.1)T第四步 返回到第一步,繼續訓練直到dp- op=0,p=1,2,3。第二節多層感知器多層感知器簡介多層感知器(Multilayer Perceptron)是一種在輸入層與輸出層之間含有一層或多層隱含神經元的具有正向傳播機制的神經網絡模型。多層感知器克服了單層感知器的許多局限, 單層感知器只能實現線性可分問題和簡單布爾函數,多層感知器可以實現線性不可分問題和任意布爾函數。多層感知器的結構 輸入層隱含層輸出層多層感知器的分類能力一個單層感知器構成一個半平面判定區域,一個兩層感知器可以構成任意無邊界的空間區域,這些判定區域有的是凸多邊形,有的是無邊界的凹區域。凸區域是多層感知器中第一層各

12、個神經元所構成的半平面判定區域(即判定區域)相交而成。多層感知器性能等價問題第一層中的神經元就像一單層感知器,所形成的凸區域的邊數最多和第一層神經元個數一樣多。一個三層感知機能夠形成任意復雜的判定區域,也能把那些相互滲透的區域分開。例子一1、用單層感知器實現簡單邏輯運算。 (1) (與)等價于 ,即 (2) (或)等價于 ,即 (3) (非) 等價于 ,即 例子二2、用兩層感知器實現異或運算。例子三試用單個感知器神經元完成下列分類,寫出其訓練迭代過程,畫出最終的分類示意圖。x1w1yx2w2fn01第三節自適應線性元模型自適應線性元件于1961年由美國的Widrow教授提出。適用于信號處理中的

13、自適應濾波、預測和模式識別。自適應線性元模型結構自適應線性元模型數學描述輸入該模型是一自適應閾值邏輯單元。圖中x0,x1k,x2k,xnk為該自適應線性元在t時刻的外部輸入,用向量表示為: Xk(x0,x1k,x2k,xnk)T這個向量稱為自適應線性元的 輸入信號向量或輸入模式向量。自適應線性元模型數學描述連接權值與輸入向量Xk相對應有一權值向量: Wk=(w0k,w1k,w2k,wnk)T其中Wk每一元素與輸入向量 Xk中的每一元素相對應。w0k為基權,稱為門限權,它 用來調整自適應線性元的閾值。自適應線性元模型數學描述輸出模擬輸出二值輸出自適應線性元模型數學描述理想輸出在圖中的自適應線性元

14、中有一特殊的輸入dk,即理想輸出。該輸出是用來將理想響應信號送入自適應線性元中,在自適應線性元中通過比較yk和理想響應dk,并將差值送入最小均方差(LMS)學習算法機制中來調整權向量Wk,使得yk和所期望的輸出dk相一致。LMS學習過程(圖示)與單層感知器的差別在于:輸出分為模擬和數字兩個部分。數字部分與感知器單元完全相同,可進行線性分割模擬部分是作為誤差調節之用,對單個Adaline,其誤差為模擬輸出和要求響應輸出差。LMS學習過程(文字說明)樣本數i=0,連接權值隨機初始化一個較小的不等于0的值;提交第i個學習樣本;計算神經網絡的輸出;計算實際輸出和理想輸出的誤差;按照權值修改規則修改神經

15、網絡權值;i+;i=N?;否,轉2。計算學習結束判據;學習結束否?達到要求學習結束,否則轉1。LMS學習算法權值修改規則其中: 為當前的誤差(即理想輸出與模擬實際輸出之間的差值), 稱為學習速度(Learning Rate)。ADALINE學習算法實質分析 的取值 的選擇決定了學習算法收斂的穩定性和收斂的速度。 穩定性要求:0 2。但是 過大可能會修正過度,一個比較好的選擇范圍是:0.1 1LMS算法的幾何解釋 ADALINE模型計算能力分析若ADALINE輸入為二值,它可以完成一定的邏輯功能。若有n個輸入,即則有2n個可能的輸入模式。在一般的邏輯實現中,依照所期望的輸出響應,可以將個輸入模式

16、劃分成和兩類。每一個自適應線性元模型可以完成某一種邏輯功能,因而我們也可以把自適應線性元看成是一邏輯部件。ADALINE模型計算能力分析每個自適應線性元的功能也主要由各個權值所確定。每個自適應線性元只能實現邏輯空間上的線性劃分。ADALINE模型學習過程舉例網絡模型x1=1.2x2=2.7x0=1w1=0.344w2=1.1w0=1d=2.3y =4.57E=-2.27w0=0.870w1=0.5w2=0.749y =3.305E=-1.05ADALINE模型的學習曲線結束判據總體誤差降低到某個預設的極小值;迭代了一定的次數。第四節BP模型感知器神經網絡的學習規則和最小均方差(LMS)學習算法

17、只能訓練單層神經網絡,而單層神經網絡只能解決線性可分的分類問題。多層神經網絡可以用于非線性分類問題。但需要尋找訓練多層網絡的學習算法。BP算法-適于多層網絡的學習算法。BP網絡廣泛應用于函數逼近、模式識別/分類、數據壓縮等。80%90%的人工神經網絡采用BP網絡或者它的變化形式,它也是前饋網絡的核心部分,體現了人工神經網絡最精華的部分。BP神經元與其他神經元類似,不同的是BP神經元的傳輸函數為非線性函數,常用的有S型函數。BP網絡的信息從輸入層流向輸出層,是一種多層前饋神經網絡。BP網絡的學習在確定了BP網絡的結構以后,要通過輸入和輸出樣本集對網絡進行訓練,亦即對網絡的閾值和權值進行學習和修正

18、,以使網絡實現給定的輸入輸出映射關系。BP網絡學習分兩個階段:第一個階段是輸入已知學習樣本,通過設置的網絡結構和前一次迭代的權值和閾值,從網絡的第一層向后計算各神經元的輸出第二個階段是對權和閾值進行修改,從最后一層向前計算各權值和閾值對總誤差的影響(梯度),據此對各權值和閾值進行修改。以上兩個過程反復交替,直到達到收斂為止。由于誤差逐層往回傳遞,以修正層與層之間的權值和閾值,所以稱該算法為誤差反向傳播算法,這種誤差反傳學習算法可以推廣到有若干個中間層的多層網絡,因此該多層網絡常稱之為BP網絡。BP學習算法概述BP算法的基本過程初始化階段前饋階段權值調整階段學習精度計算學習結束判斷BP學習算法描

19、述(初始化階段)對所有神經元的閾值及連接權值取一個較小的非零隨機值。設一個較小的數作為學習期望達到的最終學習精度。該值作為學習過程的結束判斷條件。BP學習算法描述(前饋階段)給定輸入樣本和理想輸出。對p 層的神經元i,按下式計算p 層中神經元i的活躍值,也即輸出到 p+1 層的輸出值。BP學習算法描述(權值調整階段)利用下面公式,從輸出層開始向輸入層方向進行權值調整:權值調整中的誤差項求解輸出層誤差項求解隱含層誤差項求解實際輸出理想輸出BP學習算法描述(權值調整)輸出層誤差項求解隱含層誤差項求解實際輸出理想輸出神經元閾值的修改若把層p中神經元的閾值看成是層p-1中神經元到某一個附加的常數輸入聯

20、接權值,也可以按照類似的方法進行該神經元閾值的修改。實際輸出理想輸出BP學習算法描述(計算累計誤差)按下式計算當前學習樣本的誤差:實際輸出理想輸出BP學習算法描述(結束條件判斷)在當前迭代周期內,樣本學習完否?沒有學習完,轉前饋階段;計算所有樣本的累積誤差:判 E 否?是,學習過程結束,否則轉前饋階段。BP算法存在的問題(1)從數學上看它是一個非線性優化問題,這就不可避免地存在有局部極小問題;(2)學習算法的收斂速度很慢,通常要幾千步迭代或更多;(3)網絡運行還是單向傳播,沒有反饋。目前的這種模型并不是一個非線性動力系統,而只是一個非線性映射;(4)網絡的隱節點個數選取尚無理論上的指導,而是根

21、據經驗選取的;(5)對新加入的樣本要影響到已經學完的樣本,刻畫每個輸入樣本的特征的數目也要求必須相同。BP算法的改進-變步長在BP算法中步長是不變的,這是因為E是一個十分復雜的非線性函數,很難通過最優求極小的方法得到步長,同時如果每一步都要求計算輸出,則計算量變得很大。推薦一種步長調整的方法,如下步長調整方法:先設一初始步長,若一次迭代后誤差函數E增大,則將步長乘以小于1的常數,沿原方向重新計算下一個迭代點,若一次迭代后誤差函數E減小,則將步長乘一個大于1的常數,這樣既不增加太多的計算量,又使步長得到合理的調整。另外,有加入動量項的改進方法,有加入 因子的改進算法。BP網絡的設計考慮-輸入輸出

22、層1、輸入輸出層的設計輸入輸出的維數完全根據使用者的要求來設計,若BP網絡用作分類器,其類別數為m個,那么輸出一般取m個神經元,其訓練樣本集中的x屬于第j類,要求輸出為即第j個輸出為1,其他輸出為0。輸入的神經單元可以根據需要求解的問題和數據表示的方式而定如果輸入的是電壓波形,那么輸入單元可根據電壓波形的采樣數值和采樣點數來決定輸入單元的維數,也可以用一個單元輸入,但輸入樣本為采樣的時間序列。若輸入為圖像,則輸入單元可以為圖像像素,也可為圖像處理后的圖像特征。即問題確定,輸入輸出單元層數確定。BP網絡的設計考慮-隱層1989年,Robert證明了:對于任何在閉區間內的一個連續的函數都可以用一個隱層的BP網絡來逼近,因而一個三層的BP網絡可以完成任意的n維到m維的映射。BP網絡的設計考慮-隱單元數的選擇隱單元數的選擇是一個復雜的問題,沒有很好的解析式表示,可以說隱單元數與問題的要求,輸入輸出單元的多少都有直接關系。對BP網絡,若隱單元數太少,可能不能訓練出來,或網絡

溫馨提示

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

評論

0/150

提交評論