search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

CICC科普欄目|人工神經網路簡介

作者:fengbingchun

原文:http://blog.csdn.net/fengbingchun/article/details/50274471

一、人工神經網路的概念

人工神經網路(Artificial Neural Network,ANN)簡稱神經網路(NN),是基於生物學中神經網路的基本原理,在理解和抽象了人腦結構和外界刺激響應機制后,以網路拓撲知識為理論基礎,模擬人腦的神經系統對複雜信息的處理機制的一種數學模型。該模型以并行分佈的處理能力、高容錯性、智能化和自學習等能力為特徵,將信息的加工和存儲結合在一起,以其獨特的知識表示方式和智能化的自適應學習能力,引起各學科領域的關注。它實際上是一個有大量簡單元件相互連接而成的複雜網路,具有高度的非線性,能夠進行複雜的邏輯操作和非線性關係實現的系統。

神經網路是一種運算模型,由大量的節點(或稱神經元)之間相互聯接構成。每個節點代表一種特定的輸出函數,稱為激活函數(activation function)。每兩個節點間的連接都代表一個對於通過該連接信號的加權值,稱之為權重(weight),神經網路就是通過這種方式來模擬人類的記憶。網路的輸出則取決於網路的結構、網路的連接方式、權重和激活函數。而網路自身通常都是對自然界某種演算法或者函數的逼近,也可能是對一種邏輯策略的表達。神經網路的構築理念是受到生物的神經網路運作啟發而產生的。人工神經網路則是把對生物神經網路的認識與數學統計模型相結合,藉助數學統計工具來實現。另一方面在人工智慧學的人工感知領域,我們通過數學統計學的方法,使神經網路能夠具備類似於人的決定能力和簡單的判斷能力,這種方法是對傳統邏輯學演算的進一步延伸。

人工神經網路中,神經元處理單元可表示不同的對象,例如特徵、字母、概念,或者一些有意義的抽象模式。網路中處理單元的類型分為三類:輸入單元、輸出單元和隱單元。輸入單元接受外部世界的信號與數據;輸出單元實現系統處理結果的輸出;隱單元是處在輸入和輸出單元之間,不能由系統外部觀察的單元。神經元間的連接權值反映了單元間的連接強度,信息的表示和處理體現在網路處理單元的連接關係中。人工神經網路是一種非程序化、適應性、大腦風格的信息處理,其本質是通過網路的變換和動力學行為得到一種并行分散式的信息處理功能,並在不同程度和層次上模仿人腦神經系統的信息處理功能。

神經網路,是一種應用類似於大腦神經突觸連接結構進行信息處理的數學模型,它是在人類對自身大腦組織結合和思維機制的認識理解基礎之上模擬出來的,它是根植於神經科學、數學、思維科學、人工智慧、統計學、物理學、計算機科學以及工程科學的一門技術。

二、人工神經網路的發展

神經網路的發展有悠久的歷史。其發展過程大致可以概括為如下4個階段。

1. 第一階段----啟蒙時期

(1)、M-P神經網路模型:20世紀40年代,人們就開始了對神經網路的研究。

(2)、Hebb規則:1949 年,心理學家赫布(Hebb)出版了《The Organization of Behavior》(行為組織學),他在書中提出了突觸連接強度可變的假設。

(3)、感知器模型:1957 年,羅森勃拉特(Rosenblatt)以M-P 模型為基礎,提出了感知器(Perceptron)模型。

(4)、ADALINE網路模型: 1959年,美國著名工程師威德羅(B.Widrow)和霍夫(M.Hoff)等人提出了自適應線性元件(Adaptive linear element,簡稱Adaline)和Widrow-Hoff學習規則(又稱最小均方差演算法或稱δ規則)的神經網路訓練方法。

2. 第二階段----低潮時期

人工智慧的創始人之一Minsky和Papert對以感知器為代表的網路系統的功能及局限性從數學上做了深入研究,於1969年發表了轟動一時《Perceptrons》一書。

(1)、自組織神經網路SOM模型:1972年,芬蘭的KohonenT.教授,提出了自組織神經網路SOM(Self-Organizing feature map)。

(2)、自適應共振理論ART:1976年,美國Grossberg教授提出了著名的自適應共振理論ART(Adaptive Resonance Theory),其學習過程具有自組織和自穩定的特徵。

3. 第三階段----復興時期

(1)、Hopfield模型:1982年,美國物理學家霍普菲爾德(Hopfield)提出了一種離散神經網路,即離散Hopfield網路,從而有力地推動了神經網路的研究。在網路中,它首次將李雅普諾夫(Lyapunov)函數引入其中,後來的研究學者也將Lyapunov函數稱為能量函數。證明了網路的穩定性。

(2)、Boltzmann機模型:1983年,Kirkpatrick等人認識到模擬退火演算法可用於NP完全組合優化問題的求解,這種模擬高溫物體退火過程來找尋全局最優解的方法最早由Metropli等人1953年提出的。

(3)、BP神經網路模型:1986年,儒默哈特(D.E.Ru melhart)等人在多層神經網路模型的基礎上,提出了多層神經網路權值修正的反向傳播學習演算法----BP演算法(Error Back-Propagation)。

(4)、并行分佈處理理論:1986年,由Rumelhart和McCkekkand主編的《Parallel Distributed Processing:Exploration in the Microstructures of Cognition》,該書中,他們建立了并行分佈處理理論。

(5)、細胞神經網路模型:1988年,Chua和Yang提出了細胞神經網路(CNN)模型,它是一個細胞自動機特性的大規模非線性計算機模擬系統。

(6)、Darwinism模型:Edelman提出的Darwinism模型在90年代初產生了很大的影響,他建立了一種神經網路系統理論。

(7)、1988年,Linsker對感知機網路提出了新的自組織理論,並在Shanon資訊理論的基礎上形成了最大互信息理論,從而點燃了基於NN的信息應用理論的光芒。

(8)、1988年,Broomhead和Lowe用徑向基函數(Radialbasis function, RBF)提出分層網路的設計方法,從而將NN的設計與數值分析和線性適應濾波相掛鉤。

(9)、1991年,Haken把協同引入神經網路,在他的理論框架中,他認為,認知過程是自發的,並斷言模式識別過程即是模式形成過程。

(10)、1994年,廖曉昕關於細胞神經網路的數學理論與基礎的提出,帶來了這個領域新的進展。通過拓廣神經網路的激活函數類,給出了更一般的時滯細胞神經網路(DCNN)、Hopfield神經網路(HNN)、雙向聯想記憶網路(BAM)模型。

(11)、90年代初,Vapnik等提出了支持向量機(Supportvector machines, SVM)和VC(Vapnik-Chervonenkis)維數的概念。

經過多年的發展,已有上百種的神經網路模型被提出。

4. 第四階段----高潮時期[註:自己分的,不準確 ^_^ ]

深度學習(Deep Learning,DL)由Hinton等人於2006年提出,是機器學習(Machine Learning, ML)的一個新領域。深度學習本質上是構建含有多隱層的機器學習架構模型,通過大規模數據進行訓練,得到大量更具代表性的特徵信息。深度學習演算法打破了傳統神經網路對層數的限制,可根據設計者需要選擇網路層數。

關於深度學習的文章可以參考:http://blog.csdn.net/fengbingchun/article/details/50087005

三、人工神經網路的特點

神經網路是由存儲在網路內部的大量神經元通過節點連接權組成的一種信息響應網狀拓撲結構,它採用了并行分散式的信號處理機制,因而具有較快的處理速度和較強的容錯能力。

1. 神經網路模型用於模擬人腦神經元的活動過程,其中包括對信息的加工、處理、存儲、和搜索等過程。人工神經網路具有如下基本特點:

(1)、高度的并行性:人工神經網路有許多相同的簡單處理單元並聯組合而成,雖然每一個神經元的功能簡單,但大量簡單神經元并行處理能力和效果,卻十分驚人。

(2)、高度的非線性全局作用:人工神經網路每個神經元接受大量其他神經元的輸入,並通過并行網路產生輸出,影響其他神經元,網路之間的這種互相制約和互相影響,實現了從輸入狀態到輸出狀態空間的非線性映射,從全局的觀點來看,網路整體性能不是網路局部性能的疊加,而表現出某種集體性的行為。

(3)、聯想記憶功能和良好的容錯性:人工神經網路通過自身的特有網路結構將處理的數據信息存儲在神經元之間的權值中,具有聯想記憶功能,從單一的某個權值並看不出其所記憶的信息內容,因而是分散式的存儲形式,這就使得網路有很好的容錯性,並可以進行特徵提取、缺損模式復原、聚類分析等模式信息處理工作,又可以作模式聯想、分類、識別工作。它可以從不完善的數據和圖形中進行學習並做出決定。

(4)、良好的自適應、自學習功能:人工神經網路通過學習訓練獲得網路的權值與結構,呈現出很強的自學習能力和對環境的自適應能力。

(5)、知識的分佈存儲:在神經網路中,知識不是存儲在特定的存儲單元中,而是分佈在整個系統中,要存儲多個知識就需要很多鏈接。

(6)、非凸性:一個系統的演化方向,在一定條件下將取決於某個特定的狀態函數。例如能量函數,它的極值相應於系統比較穩定的狀態。非凸性是指這種函數有多個極值,故系統具有多個較穩定的平衡態,這將導致系統演化的多樣性。

2. 人工神經網路是一種旨在模仿人腦結構及其功能的信息處理系統。因此,它在功能上具有某些智能特點:

(1)、聯想記憶功能:由於神經網路具有分佈存儲信息和并行計算的性能,因此它具有對外界刺激和輸入信息進行聯想記憶的能力。

(2)、分類與識別功能神經網路對外界輸入樣本有很強的識別與分類能力。對輸入樣本的分類實際上是在樣本空間找出符合分類要求的分割區域,每個區域內的樣本屬於一類。

(3)、優化計算功能:優化計算是指在已知的約束條件下,尋找一組參數組合,使該組合確定的目標函數達到最小。

(4)、非線性映射功能:在許多實際問題中,如過程式控制制﹑系統辨識﹑故障診斷﹑機器人控制等諸多領域,系統的輸入與輸出之間存在複雜的非線性關係,對於這類系統,往往難以用傳統的數理方程建立其數學模型。

四、 人工神經網路的結構

1. 生物神經元的結構:神經細胞是構成神經系統的基本單元,稱之為生物神經元,簡稱神經元。神經元主要由三部分構成:(1)細胞體;(2)軸突;(3)樹突。如下圖所示:

突觸是神經元之間相互連接的介面部分,即一個神經元的神經末梢與另一個神經元的樹突相接觸的交界面,位於神經元的神經末梢尾端。突觸是軸突的終端。

大腦可視作為1000多億神經元組成的神經網路。神經元的信息傳遞和處理是一種電化學活動.樹突由於電化學作用接受外界的刺激,通過胞體內的活動體現為軸突電位,當軸突電位達到一定的值則形成神經脈衝或動作電位;再通過軸突末梢傳遞給其它的神經元.

從控制論的觀點來看;這一過程可以看作一個多輸入單輸出非線性系統的動態過程。

神經元的功能特性:(1)時空整合功能;(2)神經元的動態極化性;(3)興奮與抑制狀態;(4)結構的可塑性;(5)脈衝與電位信號的轉換;(6)突觸延期和不應期;(7)學習、遺忘和疲勞。

2. 人工神經元結構:人工神經元的研究源於腦神經元學說,19世紀末,在生物、生理學領域,Waldeger等人創建了神經元學說。

人工神經網路是由大量處理單元經廣泛互連而組成的人工網路,用來模擬腦神經系統的結構和功能。而這些處理單元我們把它稱作人工神經元人工神經網路可看成是以人工神經元為節點,用有向加權弧連接起來的有向圖。在此有向圖中,人工神經元就是對生物神經元的模擬,而有向弧則是軸突----突觸----樹突對的模擬。有向弧的權值表示相互連接的兩個人工神經元間相互作用的強弱。人工神經元結構如下圖所示:

神經網路從兩個方面模擬大腦:

(1)、神經網路獲取的知識是從外界環境中學習得來的。

(2)、內部神經元的連接強度,即突觸權值,用於儲存獲取的知識。

神經網路系統由能夠處理人類大腦不同部分之間信息傳遞的由大量神經元連接形成的拓撲結構組成,依賴於這些龐大的神經元數目和它們之間的聯繫,人類的大腦能夠收到輸入的信息的刺激由分散式并行處理的神經元相互連接進行非線性映射處理,從而實現複雜的信息處理和推理任務。

對於某個處理單元(神經元)來說,假設來自其他處理單元(神經元)i的信息為X

i

,它們與本處理單元的互相作用強度即連接權值為W

i

, i=0,1,…,n-1,處理單元的內部閾值為θ。

那麼本處理單元(神經元)的輸入為:,而處理單元的輸出為:。

式中,xi為第i個元素的輸入,wi為第i個處理單元與本處理單元的互聯權重即神經元連接權值。f稱為激活函數或作用函數,它決定節點(神經元)的輸出。θ表示隱含層神經節點的閾值。

在人工神經網路設計及應用研究中,通常需要考慮三個方面的內容,即神經元激活函數、神經元之間的連接形式和網路的學習(訓練)。

3. 神經網路的學習形式:在構造神經網路時,其神經元的傳遞函數和轉換函數就已經確定了。

4. 神經網路的工作過程:神經網路的工作過程包括離線學習和在線判斷兩部分。學習過程中各神經元進行規則學習,權參數調整,進行非線性映射關係擬合以達到訓練精度;判斷階段則是訓練好的穩定的網路讀取輸入信息通過計算得到輸出結果。

5. 神經網路的學習規則:神經網路的學習規則是修正權值的一種演算法,分為聯想式和非聯想式學習,有監督學習和無監督學習等。下面介紹幾個常用的學習規則。

(1)、誤差修正型規則:是一種有監督的學習方法,根據實際輸出和期望輸出的誤差進行網路連接權值的修正,最終網路誤差小於目標函數達到預期結果。

誤差修正法,權值的調整與網路的輸出誤差有關, 它包括δ學習規則、Widrow-Hoff學習規則、感知器學習規則和誤差反向傳播的BP(Back Propagation)學習規則等。

(2)、競爭型規則:無監督學習過程,網路僅根據提供的一些學習樣本進行自組織學習,沒有期望輸出,通過神經元相互競爭對外界刺激模式響應的權利進行網路權值的調整來適應輸入的樣本數據。

對於無監督學習的情況,事先不給定標準樣本,直接將網路置於「環境」之中,學習(訓練)階段與應用(工作)階段成為一體。

(3)、Hebb型規則:利用神經元之間的活化值(激活值)來反映它們之間聯接性的變化,即根據相互連接的神經元之間的活化值(激活值)來修正其權值。

在Hebb學習規則中,學習信號簡單地等於神經元的輸出。Hebb學習規則代表一種純前饋﹑無導師學習。該學習規則至今在各種神經網路模型中起著重要作用。典型的應用如利用Hebb規則訓練線性聯想器的權矩陣。

(4)、隨機型規則:在學習過程中結合了隨機、概率論和能量函數的思想,根據目標函數(即網路輸出均方差)的變化調整網路的參數,最終使網路目標函數達到收斂值。

6. 激活函數:在神經網路中,網路解決問題的能力與效率除了與網路結構有關外,在很大程度上取決於網路所採用的激活函數。激活函數的選擇對網路的收斂速度有較大的影響,針對不同的實際問題,激活函數的選擇也應不同。

神經元在輸入信號作用下產生輸出信號的規律由神經元功能函數f(Activation Function)給出,也稱激活函數,或稱轉移函數,這是神經元模型的外特性。它包含了從輸入信號到凈輸入、再到激活值、最終產生輸出信號的過程。綜合了凈輸入、f函數的作用。f函數形式多樣,利用它們的不同特性可以構成功能各異的神經網路。

常用的激活函數有以下幾種形式:

(1)、閾值函數:該函數通常也稱為階躍函數。當激活函數採用階躍函數時,人工神經元模型即為MP模型。此時神經元的輸出取1或0,反應了神經元的興奮或抑制。

(2)、線性函數:該函數可以在輸出結果為任意值時作為輸出神經元的激活函數,但是當網路複雜時,線性激活函數大大降低網路的收斂性,故一般較少採用。

(3)、對數S形函數:對數S形函數的輸出介於0~1之間,常被要求為輸出在0~1範圍的信號選用。它是神經元中使用最為廣泛的激活函數。

(4)、雙曲正切S形函數:雙曲正切S形函數類似於被平滑的階躍函數,形狀與對數S形函數相同,以原點對稱,其輸出介於-1~1之間,常常被要求為輸出在-1~1範圍的信號選用。

7. 神經元之間的連接形式:神經網路是一個複雜的互連繫統,單元之間的互連模式將對網路的性質和功能產生重要影響。互連模式種類繁多。

(1)、前向網路(前饋網路):網路可以分為若干「層」,各層按信號傳輸先後順序依次排列,第i層的神經元只接受第(i-1)層神經元給出的信號,各神經元之間沒有反饋。前饋型網路可用一有向無環路圖表示,如下圖所示:

可以看出,輸入節點並無計算功能,只是為了表徵輸入矢量各元素值。各層節點表示具有計算功能的神經元,稱為計算單元。每個計算單元可以有任意個輸入,但只有一個輸出,它可送到多個節點作輸入。稱輸入節點層為第零層。計算單元的各節點層從下至上依次稱為第1至第N層,由此構成N層前向網路。(也有把輸入節點層稱為第1層,於是對N層網路將變為N+1個節點層序號。)

第一節點層與輸出節點統稱為「可見層」,而其他中間層則稱為隱含層(hidden layer),這些神經元稱為隱節點。BP網路就是典型的前向網路。

(2)、反饋網路:典型的反饋型神經網路如下圖a所示:每個節點都表示一個計算單元,同時接受外加輸入和其它各節點的反饋輸入,每個節點也都直接向外部輸出。Hopfield網路即屬此種類型。在某些反饋網路中,各神經元除接受外加輸入與其它各節點反饋輸入之外,還包括自身反饋。有時,反饋型神經網路也可表示為一張完全的無向圖,如上圖b。圖中,每一個連接都是雙向的。這裡,第i個神經元對於第j個神經元的反饋與第j至i神經元反饋之突觸權重相等,也即wij=wji。

以上介紹了兩種最基本的人工神經網路結構,實際上,人工神經網路還有許多種連接形式,例如,從輸出層到輸入層有反饋的前向網路,同層內或異層間有相互反饋的多層網路等等。

五、人工神經網路模型

1. 人工神經網路的分類:

按性能分:連續型和離散型網路,或確定型和隨機型網路。

按拓撲結構分:前向網路和反饋網路。

前向網路有自適應線性神經網路(AdaptiveLinear,簡稱Adaline)、單層感知器、多層感知器、BP等。

前向網路,網路中各個神經元接受前一級的輸入,並輸出到下一級,網路中沒有反饋,可以用一個有向無環路圖表示。這種網路實現信號從輸入空間到輸出空間的變換,它的信息處理能力來自於簡單非線性函數的多次複合。網路結構簡單,易於實現。反傳網路是一種典型的前向網路。

反饋網路有Hopfield、Hamming、BAM等。

反饋網路,網路內神經元間有反饋,可以用一個無向的完備圖表示。這種神經網路的信息處理是狀態的變換,可以用動力學系統理論處理。系統的穩定性與聯想記憶功能有密切關係。Hopfield網路、波耳茲曼機均屬於這種類型。

按學習方法分:有教師(監督)的學習網路和無教師(監督)的學習網路。

按連接突觸性質分:一階線性關聯網路和高階非線性關聯網路。

2. 生物神經元模型:人腦是自然界所造就的高級動物,人的思維是由人腦來完成的,而思維則是人類智能的集中體現。人腦的皮層中包含100億個神經元、60萬億個神經突觸,以及他們的連接體。

3. 人工神經網路模型:人工神經網路,使通過模仿生物神經網路的行為特徵,進行分散式并行信息處理的數學模型。這種網路依靠系統的複雜度,通過調整內部大量節點之間相互連接的關係,從而達到信息處理的目的。

4. 感知器模型:

感知器模型是美國學者羅森勃拉特(Rosenblatt)為研究大腦的存儲、學習和認知過程而提出的一類具有自學習能力的神經網路模型,它把神經網路的研究從純理論探討引向了從工程上的實現。

Rosenblatt提出的感知器模型是一個只有單層計算單元的前向神經網路,稱為單層感知器。

單層感知器模型的學習演算法,演算法思想:首先把連接權和閾值初始化為較小的非零隨機數,然後把有n個連接權值的輸入送入網路,經加權運算處理,得到的輸出如果與所期望的輸出有較大的差別,就對連接權值參數按照某種演算法進行自動調整,經過多次反覆,直到所得到的輸出與所期望的輸出間的差別滿足要求為止。

線性不可分問題:單層感知器不能表達的問題被稱為線性不可分問題。 1969年,明斯基證明了「異或」問題是線性不可分問題。

線性不可分函數的數量隨著輸入變數個數的增加而快速增加,甚至遠遠超過了線性可分函數的個數。也就是說,單層感知器不能表達的問題的數量遠遠超過了它所能表達的問題的數量。

多層感知器:在單層感知器的輸入部分和輸出層之間加入一層或多層處理單元,就構成了二層或多層感知器。

在多層感知器模型中,只允許某一層的連接權值可調,這是因為無法知道網路隱層的神經元的理想輸出,因而難以給出一個有效的多層感知器學習演算法。

多層感知器克服了單層感知器的許多缺點,原來一些單層感知器無法解決的問題,在多層感知器中就可以解決。例如,應用二層感知器就可以解決異或邏輯運算問題

5. 反向傳播模型:

反向傳播模型也稱B-P模型,是一種用於前向多層的反向傳播學習演算法。之所以稱它是一種學習方法,是因為用它可以對組成前向多層網路的各人工神經元之間的連接權值進行不斷的修改,從而使該前向多層網路能夠將輸入它的信息變換成所期望的輸出信息。之所以將其稱作為反向學習演算法,是因為在修改各人工神經元的連接權值時,所依據的是該網路的實際輸出與其期望的輸出之差,將這一差值反向一層一層的向回傳播,來決定連接權值的修改。

B-P演算法的網路結構是一個前向多層網路。它是在1986年,由Rumelhant和Mcllelland提出的。是一種多層網路的「逆推」學習演算法。其基本思想是,學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播時,輸入樣本從輸入層傳入,經隱層逐層處理后,傳向輸出層。若輸出層的實際輸出與期望輸出不符,則轉向誤差的反向傳播階段。誤差的反向傳播是將輸出誤差以某種形式通過隱層向輸入層逐層反傳,並將誤差分攤給各層的所有單元,從而獲得各層單元的誤差信號,此誤差信號即作為修正各單元權值的依據。這種信號正向傳播與誤差反向傳播的各層權值調整過程,是周而復始地進行。權值不斷調整過程,也就是網路的學習訓練過程。此過程一直進行到網路輸出的誤差減少到可以接受的程度,或進行到預先設定的學習次數為止。

反向傳播網路的學習演算法:B-P演算法的學習目的是對網路的連接權值進行調整,使得調整后的網路對任一輸入都能得到所期望的輸出。

學習過程由正向傳播和反向傳播組成。

正向傳播用於對前向網路進行計算,即對某一輸入信息,經過網路計算后求出它的輸出結果。

反向傳播用於逐層傳遞誤差,修改神經元間的連接權值,以使網路對輸入信息經過計算后所得到的輸出能達到期望的誤差要求。

B-P演算法的學習過程如下:

(1)、選擇一組訓練樣例,每一個樣例由輸入信息和期望的輸出結果兩部分組成。

(2)、從訓練樣例集中取一樣例,把輸入信息輸入到網路中。

(3)、分別計算經神經元處理后的各層節點的輸出。

(4)、計算網路的實際輸出和期望輸出的誤差。

(5)、從輸出層反向計算到第一個隱層,並按照某種能使誤差向減小方向發展的原則,調整網路中各神經元的連接權值。

(6)、對訓練樣例集中的每一個樣例重複(3)-(5)的步驟,直到對整個訓練樣例集的誤差達到要求時為止。

在以上的學習過程中,第(5)步是最重要的,如何確定一種調整連接權值的原則,使誤差沿著減小的方向發展,是B-P學習演算法必須解決的問題。

B-P演算法的優缺點:

優點:理論基礎牢固,推導過程嚴謹,物理概念清晰,通用性好等。所以,它是目前用來訓練前向多層網路較好的演算法。

缺點:(1)、該學習演算法的收斂速度慢;(2)、網路中隱節點個數的選取尚無理論上的指導;(3)、從數學角度看,B-P演算法是一種梯度最速下降法,這就可能出現局部極小的問題。當出現局部極小時,從表面上看,誤差符合要求,但這時所得到的解並不一定是問題的真正解。所以B-P演算法是不完備的。

BP演算法局限性:

(1)、在誤差曲面上有些區域平坦,此時誤差對權值的變化不敏感,誤差下降緩慢,調整時間長,影響收斂速度。這時誤差的梯度變化很小,即使權值的調整量很大,誤差仍然下降很慢。造成這種情況的原因與各節點的凈輸入過大有關。

(2)、存在多個極小點。從兩維權空間的誤差曲面可以看出,其上存在許多凸凹不平,其低凹部分就是誤差函數的極小點。可以想象多維權空間的誤差曲面,會更加複雜,存在更多個局部極小點,它們的特點都是誤差梯度為0。BP演算法權值調整依據是誤差梯度下降,當梯度為0時,BP演算法無法辨別極小點性質,因此訓練常陷入某個局部極小點而不能自拔,使訓練難以收斂於給定誤差。

BP演算法改進:誤差曲面的平坦區將使誤差下降緩慢,調整時間加長,迭代次數增多,影響收斂速度;而誤差曲面存在的多個極小點會使網路訓練陷入局部極小,從而使網路訓練無法收斂於給定誤差。這兩個問題是BP網路標準演算法的固有缺陷。

針對此,國內外不少學者提出了許多改進演算法,幾種典型的改進演算法:

(1)、增加動量項:標準BP演算法在調整權值時,只按t時刻誤差的梯度下降方向調整,而沒有考慮t時刻以前的梯度方向,從而常使訓練過程發生振蕩,收斂緩慢。為了提高訓練速度,可以在權值調整公式中加一動量項。大多數BP演算法中都增加了動量項,以至於有動量項的BP演算法成為一種新的標準演算法。

(2)、可變學習速度的反向傳播演算法(variable learning rate back propagation,VLBP):多層網路的誤差曲面不是二次函數。曲面的形狀隨參數空間區域的不同而不同。可以在學習過程中通過調整學習速度來提高收斂速度。技巧是決定何時改變學習速度和怎樣改變學習速度。可變學習速度的VLBP演算法有許多不同的方法來改變學習速度。

(3)、學習速率的自適應調節:可變學習速度VLBP演算法,需要設置多個參數,演算法的性能對這些參數的改變往往十分敏感,另外,處理起來也較麻煩。此處給出一簡潔的學習速率的自適應調節演算法。學習率的調整隻與網路總誤差有關。學習速率η也稱步長,在標準BP中是一常數,但在實際計算中,很難給定出一個從始至終都很合適的最佳學習速率。從誤差曲面可以看出,在平坦區內η太小會使訓練次數增加,這時候希望η值大一些;而在誤差變化劇烈的區域,η太大會因調整過量而跨過較窄的「凹坑」處,使訓練出現振蕩,反而使迭代次數增加。為了加速收斂過程,最好是能自適應調整學習率η,使其該大則大,該小則小。比如可以根據網路總誤差來調整.

(4)、引入陡度因子----防止飽和:誤差曲面上存在著平坦區。其權值調整緩慢的原因在於S轉移函數具有飽和特性造成的。如果在調整進入平坦區后,設法壓縮神經元的凈輸入,使其輸出退出轉移函數的飽和區,就可改變誤差函數的形狀,從而使調整脫離平坦區。實現這一思路的具體作法是在轉移函數中引進一個陡度因子。

BP神經網路設計的一般原則:關於它的開發設計,大多數是根據使用者的經驗來設計網路結構﹑功能函數﹑學習演算法﹑樣本等。

[1]、BP網路參數設計

(1)、BP網路輸入與輸出參數的確定

A、輸入量的選擇:

a、輸入量必須選擇那些對輸出影響大且能夠檢測或提取的變數;

b、各輸入量之間互不相關或相關性很小。從輸入、輸出量性質分類來看,可以分為兩類:數值變數和語言變數。數值變數又分為連續變數或離散變數。如常見的溫度,壓力,電壓,電流等就是連續變數;語言變數是用自然語言表示的概念。如紅,綠,藍;男,女;大,中,小,開,關,亮,暗等。一般來說,語言變數在網路處理時,需要轉化為離散變數。

c、輸入量的表示與提取:多數情況下,直接送給神經網路的輸入量無法直接得到,常常需要用信號處理與特徵提取技術從原始數據中提取能反映其特徵的若干參數作為網路輸入。

B、輸出量選擇與表示:

a、輸出量一般代表系統要實現的功能目標,如分類問題的類別歸屬等;

b、輸出量表示可以是數值也可是語言變數;

(2)、訓練樣本集的設計

網路的性能與訓練用的樣本密切相關,設計一個好的訓練樣本集既要注意樣本規模,又要注意樣本質量。

A、樣本數目的確定:一般來說樣本數n越多,訓練結果越能正確反映其內在規律,但樣本的獲取往往有一定困難,另一方面,當樣本數n達到一定數量后,網路的精度也很難提高。

選擇原則:網路規模越大,網路映射關係越複雜,樣本數越多。一般說來,訓練樣本數是網路連接權總數的5~10倍,但許多情況難以達到這樣的要求。

B、樣本的選擇和組織:

a、樣本要有代表性,注意樣本類別的均衡;

b、樣本的組織要注意將不同類別的樣本交叉輸入;

c、網路的訓練測試,測試標準是看網路是否有好的泛化能力。測試做法:不用樣本訓練集中數據測試。一般是將收集到的可用樣本隨機地分成兩部分,一部分為訓練集,另一部分為測試集。若訓練樣本誤差很小,而對測試集的樣本誤差很大,泛化能力差。

(3)、初始權值的設計

網路權值的初始化決定了網路的訓練從誤差曲面的哪一點開始,因此初始化方法對縮短網路的訓練時間至關重要。

神經元的作用函數是關於坐標點對稱的,若每個節點的凈輸入均在零點附近,則輸出均出在作用函數的中點,這個位置不僅遠離作用函數的飽和區,而且是其變化最靈敏的區域,必使網路學習加快。從神經網路凈輸入表達式來看,為了使各節點的初始凈輸入在零點附近,如下兩種方法被常常使用:

A、取足夠小的初始權值;

B、使初始值為+1和-1的權值數相等。

[2]、BP網路結構參數設計

隱層結構設計

(1)、隱層數設計:理論證明,具有單隱層的前饋網路可以映射所有連續函數,只有當學習不連續函數時才需要兩個隱層,故一般情況隱層最多需要兩層。一般方法是先設一個隱層,當一個隱層的節點數很多,仍不能改善網路性能時,再增加一個隱層。最常用的BP神經網路結構是3層結構,即輸入層﹑輸出層和1個隱層。

(2)、隱層節點數設計:隱層節點數目對神經網路的性能有一定的影響。隱層節點數過少時,學習的容量有限,不足以存儲訓練樣本中蘊涵的所有規律;隱層節點過多不僅會增加網路訓練時間,而且會將樣本中非規律性的內容如干擾和雜訊存儲進去。反而降低泛化能力。一般方法是湊試法:

6. Hopfield模型:

Hopfield模型是霍普菲爾德分別於1982年及1984提出的兩個神經網路模型。1982年提出的是離散型,1984年提出的是連續型,但它們都是反饋網路結構。

Hopfield網路離散模型有兩種工作模式:

(1)、串列方式,是指在任一時刻t,只有一個神經元i發生狀態變化,而其餘的神經元保持狀態不變。

(2)、并行方式,是指在任一時刻t,都有部分或全體神經元同時改變狀態。

有關離散的Hopfield網路的穩定性問題,已於1983年由Cohen和Grossberg給於了證明。而Hopfield等人又進一步證明,只要連接權值構成的矩陣是非負對角元的對稱矩陣,則該網路就具有串列穩定性。

Hopfield遞歸網路是美國加洲理工學院物理學家J.J.Hopfield教授於1983年提出的。Hopfield網路按網路輸入和輸出的數字形式不同可分為離散型和連續型兩種網路,即:離散型Hopfield神經網路----DHNN(Discrete Hopfield Neural Network);連續型Hopfield神經網路----CHNN(ContinuesHopfield Neural Network)。

DHNN結構:它是一種單層全反饋網路,共有n個神經元。每個神經元都通過連接權接收所有其它神經元輸出反饋來的信息,其目的是為了讓任一神經元的輸出能接受所有神經元輸出的控制,從而使各神經元能相互制約。

DHNN的設計原則:吸引子的分佈是由網路的權值(包括閥值)決定的,設計吸引子的核心就是如何設計一組合適的權值。為了使所設計的權值滿足要求,權值矩陣應符合以下要求:(1)、為保證非同步方式工作時網路收斂,W應為對稱陣;(2)、為保證同步方式工作時網路收斂,W應為非負定對稱陣;(3)、保證給定的樣本是網路的吸引子,並且要有一定的吸引域。

具體設計時,可以採用不同的方法:(1)、聯立方程法;(2)、外積和法。

CHNN:在連續型Hopfield神經網路中,所有神經元都隨時間t并行更新,網路狀態隨時間連續改變。

Hopfield網路的主要功能

Hopfield神經網路的提出就是與其實際應用密切相關。其主要功能在以下兩個方面。

(1)、聯想記憶:輸入--輸出模式的各元素之間,並不存在一對一的映射關係,輸入--輸出模式的維數也不要求相同;聯想記憶時,只給出輸入模式部分信息,就能聯想出完整的輸出模式。即具有容錯性。

(2)、CHNN的優化計算功能.

應用Hopfield 神經網路來解決優化計算問題的一般步驟為:

A、分析問題:網路輸出與問題的解相對應。

B、構造網路能量函數:構造合適的網路能量函數,使其最小值對應問題最佳解。

C、設計網路結構:將能量函數與標準式相比較,定出權矩陣與偏置電流。

D、由網路結構建立網路的電子線路並運行,穩態--優化解或計算機模擬運行。

7. BAM模型

神經網路的聯想記憶功能可以分為兩種,一是自聯想記憶,另一種是異聯想記憶。Hopfield神經網路就屬於自聯想記憶。由Kosko B.1988 年提出的雙向聯想記憶神經網路BAM(Bidirectional Associative Memory)屬於異聯想記憶。BAM有離散型﹑連續型和自適應型等多種形式。

8. CMAC模型

BP神經網路﹑Hopfield神經網路和BAM雙向聯想記憶神經網路分別屬於前饋和反饋神經網路,這主要是從網路的結構來劃分的。如果從神經網路的函數逼近功能這個角度來分,神經網路可以分為全局逼近網路和局部逼近網路。當神經網路的一個或多個可調參數(權值和閾值)在輸入空間的每一點對任何一個輸出都有影響,則稱該神經網路為全局逼近網路,多層前饋BP網路是全局逼近網路的典型例子。

CMAC 網路有三個特點:

(1)、作為一種具有聯想功能的神經網路,它的聯想具有局部推廣(或稱泛化)能力,因此相似的輸入將產生相似的輸出,遠離的輸入將產生獨立的輸出;

(2)、對於網路的每一個輸出,只有很少的神經元所對應的權值對其有影響,哪些神經元對輸出有影響則有輸入決定;

(3)、CMAC的每個神經元的輸入輸出是一種線性關係,但其總體上可看做一種表達非線性映射的表格系統。由於CMAC網路的學習只在線性映射部分,因此可採用簡單的δ演算法,其收斂速度比BP演算法快得多,且不存在局部極小問題。CMAC最初主要用來求解機械手的關節運動,其後進一步用於機械人控制、模式識別、信號處理以及自適應控制等領域。

9. RBF模型

對局部逼近神經網路,除CMAC神經網路外,常用的還有徑向基函數RBF網路和B樣條網路等。徑向基函數(RBF,Radial Basis Function)神經網路,是由J.Moody 和C.Darken於20世紀80年代末提出的一種神經網路,徑向基函數方法在某種程度上利用了多維空間中傳統的嚴格插值法的研究成果。

RBF網路的常規學習演算法,一般包括兩個不同的階段:

(1)、隱層徑向基函數的中心的確定階段。常見方法有隨機選取固定中心法;中心的自組織選擇法等。

(2)、徑向基函數權值學習調整階段。常見方法有中心的監督選擇法;正則化嚴格插值法等。

10. SOM模型

芬蘭Helsink大學Kohonen T.教授提出一種自組織特徵映射網路SOM(Self-organizing feature Map),又稱Kohonen網路。Kohonen認為,一個神經網路接受外界輸入模式時,將會分為不同的對應區域,各區域對輸入模式有不同的響應特徵,而這個過程是自動完成的。SOM網路正是根據這一看法提出的,其特點與人腦的自組織特性相類似。

自組織神經網路結構

(1)、定義:自組織神經網路是無導師學習網路。它通過自動尋找樣本中的內在規律和本質屬性,自組織、自適應地改變網路參數與結構。

(2)、結構:層次型結構,具有競爭層。典型結構:輸入層+競爭層。

輸入層:接受外界信息,將輸入模式向競爭層傳遞,起「觀察」作用。

競爭層:負責對輸入模式進行「分析比較,尋找規律,並歸類。

自組織神經網路的原理

(1)、分類與輸入模式的相似性:分類是在類別知識等導師信號的指導下,將待識別的輸入模式分配到各自的模式類中,無導師指導的分類稱為聚類,聚類的目的是將相似的模式樣本劃歸一類,而將不相似的分離開來。

(2)、相似性測量:神經網路的輸入模式向量的相似性測量可用向量之間的距離來衡量。常用的方法有歐氏距離法和餘弦法兩種。

(3)、競爭學習原理:競爭學習規則的生理學基礎是神經細胞的側抑制現象:當一個神經細胞興奮后,會對其周圍的神經細胞產生抑制作用。最強的抑制作用是競爭獲勝的「唯我獨興」,這種做法稱為「勝者為王」,(Winner-Take-All)。競爭學習規則就是從神經細胞的側抑制現象獲得的。它的學習步驟為:A、向量歸一化;B、尋找獲勝神經元;C、網路輸出與權調整;D、重新歸一化處理。

SOM網路的拓撲結構:SOM網路共有兩層。即:輸入層和輸出層。

(1)、輸入層:通過權向量將外界信息彙集到輸出層各神經元。輸入層的形式與BP網相同,節點數與樣本維數相同。

(2)、輸出層:輸出層也是競爭層。其神經元的排列有多種形式。分為一維線陣,二維平面陣和三維柵格陣。最典型的結構是二維形式。它更具大腦皮層的形象。

輸出層的每個神經元同它周圍的其他神經元側向連接,排列成棋盤狀平面;輸入層為單層神經元排列。

SOM權值調整域

SOM網採用的演算法,稱為Kohonen演算法,它是在勝者為王WTA(Winner-Take-All)學習規則基礎上加以改進的,主要區別是調整權向量與側抑制的方式不同:WTA:側抑制是「封殺」式的。只有獲勝神經元可以調整其權值,其他神經元都無權調整。Kohonen演算法:獲勝神經元對其鄰近神經元的影響是由近及遠,由興奮逐漸變為抑制。換句話說,不僅獲勝神經元要調整權值,它周圍神經元也要不同程度調整權向量。

SOM網路運行原理

SOM網路的運行分訓練和工作兩個階段。在訓練階段,網路隨機輸入訓練集中的樣本,對某個特定的輸入模式,輸出層會有某個節點產生最大響應而獲勝,而在訓練開始階段,輸出層哪個位置的節點將對哪類輸入模式產生最大響應是不確定的。

11. CPN模型

1987年美國學者RobertHecht —Nielson提出了對偶傳播神經網路(Counter--propagation Networks,簡記為CPN)。CPN最早是用來實現樣本選擇匹配系統的。它能存儲二進位或模擬值的模式對,因此CPN網路可以用作聯想存儲﹑模式分類﹑函數逼近和數據壓縮等用途。與BP網相比,CPN的訓練速度要快很多,所需的時間大約是BP網所需時間的1%。但是,它的應用面卻因網路的性能相對來說比較窄。

Kohonen提出的自組織映射由四部分組成,包括一個神經元陣列(用它構成CPN的Kohonen層),一種比較選擇機制,一個局部互聯,一個自適應過程。實際上,這一層將實現對輸入進行分類的功能。所以,該層可以執行無導師的學習,以完成對樣本集中所含的分類信息的提取。

Grossberg層主要用來實現類表示。它的訓練過程就是將輸入向量與相應的輸出向量對應起來。這些向量可以是二值的,也可以是連續的。一旦網路完成了訓練,對一個給定的輸入就可以給出一個對應的輸出。網路的推廣能力表明,當網路遇到一個不太完整的、或者是不完全正確的輸入時,只要該「噪音」是在有限的範圍內,CPN 都可以產生一個正確的輸出。這是因為Kohonen 層可以找到這個含有噪音的輸入應該屬於的分類,而對應的Grossberg層則可以給出該分類的表示。從整個網路來看,就表現出一種泛化能力。這使得網路在模式識別、模式完善、信號處理等方面可以有較好的應用。另外,上述映射的逆映射如果存在的話,可以通過對此網的簡單擴展,來實現相應的逆變換。這被稱為全對傳網。

12. ART模型

1976年,美國Boston大學CarpenterG.A.教授提出了自適應共振理論ART(Adaptive Resonance Theory)。隨後Carpenter G.A.又與他的學生GrossbergS.合作提出了ART神經網路。

經過多年的研究和發展,ART 網路已有幾種基本形式:

(1)、ART1型神經網路:處理雙極性和二進位信號;

(2)、ART2型神經網路:它是ART1型的擴展,用於處理連續型模擬信號;

(3)、ART綜合系統:將ART1和ART2綜合在一起,系統具有識別﹑補充和撤消等綜合功能。即所謂的3R(Recognition﹑Reinforcement﹑Recall)功能。

(4)、ART3型神經網路:它是一種分級搜索模型,兼容前兩種結構的功能並將兩層神經網路擴大為任意多層神經元網路,由於ART3型在神經元的模型中納入了生物神經元的生物電-化學反應機制,因而它具備了很強的功能和擴展能力。

13. 量子神經網路

量子神經網路的概念出現於上個世紀90年代後期,一經提出后便引起了不同領域的科學家的關注,人們在這個嶄新的領域進行了不同方向的探索,提出了很多想法和初步的模型,充分體現了量子神經網路研究的巨大潛力。主要研究方向可以概括為:

(1)、量子神經網路採用神經網路的連接思想來構造量子計算機,通過神經網路模型來研究量子計算中的問題;

(2)、量子神經網路在量子計算機或量子器件的基礎上構造神經網路,充分利用量子計算超高速、超并行、指數級容量的特點,來改進神經網路的結構和性能;

(3)、量子神經網路作為一種混合的智能優化演算法在傳統的計算機上的實現,通過引入量子理論中的思想對傳統神經網路改進,利用量子理論中的概念、方法(如態疊加、「多宇宙」觀點等),建立新的網路模型;改善傳統神經網路的結構和性能;

(4)、基於腦科學、認知科學的研究。

以上整理的內容主要摘自:

1. 《人工神經網路原理及應用》,2006,科學出版社

2. 《神經網路郵件分類演算法研究》,2011,碩論,電子科技大學

3. 《人工神經網路原理、分類及應用》,2014,期刊,科技資訊

轉自 機器人2025

按下方二維碼 免費訂閱!

C2

如何加入學會

註冊學會會員:

個人會員:

(c2_china),回復「個人會員」獲取入會申請表,按要求填寫申請表即可,如有問題,可在公眾號內進行留言。通過學會審核後方可在線進行支付寶繳納會費。

單位會員:

(c2_china),回復「單位會員」獲取入會申請表,按要求填寫申請表即可,如有問題,可在公眾號內進行留言。通過學會審核後方可繳納會費。

學會近期活動

1.2016年度「CICC科學技術獎頒獎典禮」

會議時間:2017年3月28日

2. CICC企業會員交流會

會議時間:(具體時間詳見後續通知)

3.2017首屆全國兵棋推演大賽

2017年6月

長按下方學會二維碼,關注學會微信

感謝關注



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦