1、第第9章章 人工神經網絡人工神經網絡原理及應用原理及應用王海王海目錄目錄人工神經網絡概述人工神經網絡概述人工神經網絡基礎人工神經網絡基礎前饋人工神經網絡前饋人工神經網絡1.1 什麼是人工神經網絡什麼是人工神經網絡所謂人工神經網絡就是所謂人工神經網絡就是基於模仿生物大腦的結基於模仿生物大腦的結構和功能而構成的一種資訊處理系統構和功能而構成的一種資訊處理系統(電腦電腦)。)。需要指出,儘管人工神經網絡是對大腦結構的需要指出,儘管人工神經網絡是對大腦結構的模仿,但模仿,但這種模仿目前還處於極低的水準。這種模仿目前還處於極低的水準。1 概述概述1.2 人工神經網絡的人工神經網絡的兩種操作過程兩種操作過
2、程 訓練學習訓練學習 訓練時,把訓練時,把要教給神經網絡的資訊要教給神經網絡的資訊(外部輸入外部輸入)作為)作為網網絡的輸入絡的輸入和和要求的輸出要求的輸出,使網絡按某種規則使網絡按某種規則(稱為(稱為訓練訓練演算法演算法)調節各處理單元間的連接權值調節各處理單元間的連接權值,直至直至加上給定加上給定輸入,網絡就能產生給定輸出為止。輸入,網絡就能產生給定輸出為止。這時,各連接權已調接好,網絡的訓練就完成了。這時,各連接權已調接好,網絡的訓練就完成了。正常操作(回憶操作)正常操作(回憶操作)對訓練好的網絡輸入一個信號,它就可以正確回憶出相對訓練好的網絡輸入一個信號,它就可以正確回憶出相應輸出,得
3、到識別結果。應輸出,得到識別結果。1 概述概述1 概述概述1.3 人工神經網絡的發展人工神經網絡的發展 -初始(萌發)期初始(萌發)期 MP模型模型的提出和人工神經網絡的的提出和人工神經網絡的興起。興起。1943年,美國神經生理學家年,美國神經生理學家Warren Mcculloch和和數學家數學家Walter Pitts合寫了一篇關於神經元如何工作的開合寫了一篇關於神經元如何工作的開拓性文章:拓性文章:“A Logical Calculus of Ideas Immanent in Nervous Activity”。該文指出,該文指出,腦細胞的活動像斷腦細胞的活動像斷/通開關通開關,這些細
4、胞這些細胞可以按各種方式相互結合,進行各種邏輯運算可以按各種方式相互結合,進行各種邏輯運算。按。按此想法,他們用電路構成了簡單的神經網絡模型,此想法,他們用電路構成了簡單的神經網絡模型,並預言大腦的所有活動最終將被解釋清楚。並預言大腦的所有活動最終將被解釋清楚。雖然問雖然問題並非如此簡單題並非如此簡單,但它給,但它給人們一個信念人們一個信念,即,即大腦的大腦的活動是靠腦細胞的組合連接實現的。活動是靠腦細胞的組合連接實現的。1.3 人工神經網絡的發展人工神經網絡的發展第一次高潮期第一次高潮期感知器模型感知器模型和人工神經網絡和人工神經網絡 1957年年,電腦專家電腦專家Frank Rosenbl
5、att開始從事開始從事感知器感知器的的研究,並製成硬體,通常被認為是最早的神經網絡模型。研究,並製成硬體,通常被認為是最早的神經網絡模型。1959年年,兩位電機工程師兩位電機工程師Bernard Widrow和和Marcian Haff開發出一種叫作開發出一種叫作自適應線性單元自適應線性單元(ADALINE)的)的網絡模型,並在他們的論文網絡模型,並在他們的論文“Adaptive Switching Circuits”中描述了該模型和它的學習演算法(中描述了該模型和它的學習演算法(Widrow-Haff演算法演算法)。)。該網絡通過訓練,可以成功用於抵消通信中的回波和雜該網絡通過訓練,可以成功
6、用於抵消通信中的回波和雜訊,也可用于天氣預報,成為第一個用於實際問題的神訊,也可用于天氣預報,成為第一個用於實際問題的神經網絡。經網絡。1 概述概述1.3 人工神經網絡的發展人工神經網絡的發展反思期反思期神經網絡的低潮神經網絡的低潮 1969年年,Marvin Minsky和和Seymour Papert合著了一本合著了一本書書“Perception”,分析了當時的簡單感知器,分析了當時的簡單感知器,指出它指出它有非常嚴重的局限性有非常嚴重的局限性,甚至不能解決簡單的,甚至不能解決簡單的“異或異或”問問題,題,為為Rosenblatt的感知器判了的感知器判了“死刑死刑”。此時,批評的聲音高漲,
7、導致了停止對人工神經網絡研此時,批評的聲音高漲,導致了停止對人工神經網絡研究所需的大量投資。究所需的大量投資。不少研究人員把注意力轉向了人工智慧,不少研究人員把注意力轉向了人工智慧,導致對人工神導致對人工神經網絡的研究陷入低潮。經網絡的研究陷入低潮。1 概述概述1.3 人工神經網絡的發展人工神經網絡的發展第二次高潮期第二次高潮期Hopfield網絡模型的出現和人工網絡模型的出現和人工神經網絡的復蘇神經網絡的復蘇 1984年年,Hopfield設計研製了後來被人們稱為設計研製了後來被人們稱為Hopfield網的電路網的電路,較好地解決了較好地解決了TCP問題問題,找到了,找到了最佳解的近似解,引
8、起了較大轟動。最佳解的近似解,引起了較大轟動。1985年年,Hinton、Sejnowsky、Rumelhart等研究者等研究者在在Hopfield網絡中引入隨機機制,提出了所謂的網絡中引入隨機機制,提出了所謂的Bolziman機。機。1986年年,Rumelhart等研究者等研究者獨立地提出多層網絡的獨立地提出多層網絡的學習演算法學習演算法BP演算法演算法,較好地解決了多層網絡的較好地解決了多層網絡的學習問題。學習問題。1990年年12月,國內首屆神經網絡大會在北京舉行。月,國內首屆神經網絡大會在北京舉行。1 概述概述1.3 人工神經網絡的發展人工神經網絡的發展再認識與應用研究期再認識與應用
9、研究期 主要研究內容主要研究內容 開發現有模型的應用開發現有模型的應用,並在應用中,並在應用中根據實際運行根據實際運行情況對模型、演算法加以改造,以提高網絡的情況對模型、演算法加以改造,以提高網絡的訓訓練速度練速度和和運行的準確度運行的準確度。充分發揮每種技術各自的優勢,尋找更有效的解充分發揮每種技術各自的優勢,尋找更有效的解決方法。決方法。希望在理論上尋找新的突破,建立新的專用或通希望在理論上尋找新的突破,建立新的專用或通用模型和演算法。用模型和演算法。進一步對生物神經系統進行研究,不斷豐富對人進一步對生物神經系統進行研究,不斷豐富對人腦的認識。腦的認識。1 概述概述1.4 人工神經網絡的特
10、點人工神經網絡的特點容錯性容錯性 人類大腦具有很強的容錯能力人類大腦具有很強的容錯能力,這正是,這正是由於大腦中知由於大腦中知識是存儲在很多處理單元和它們的連接上的。識是存儲在很多處理單元和它們的連接上的。每天大腦的一些細胞都可能會自動死亡,但這並沒有影響人每天大腦的一些細胞都可能會自動死亡,但這並沒有影響人們的記憶和思考能力。們的記憶和思考能力。人工神經網絡可以從不完善的數據和圖形進行學習和人工神經網絡可以從不完善的數據和圖形進行學習和做出決定做出決定 由於知識存在整個系統中,而不是在一個存儲單元內由於知識存在整個系統中,而不是在一個存儲單元內,因此因此一定比例的結點不參與運算,對整個系統的
11、性能不會產生重一定比例的結點不參與運算,對整個系統的性能不會產生重大影響。大影響。神經網絡中承受硬體損壞的能力比一般計算機要強得多。神經網絡中承受硬體損壞的能力比一般計算機要強得多。1 概述概述1.4 人工神經網絡的特點人工神經網絡的特點自適應性自適應性 人工神經網絡也具有學習能力人工神經網絡也具有學習能力 有指導的訓練有指導的訓練:將輸入樣本加到網絡輸入並給出相應將輸入樣本加到網絡輸入並給出相應的輸出,通過多次訓練迭代獲得連接權值。的輸出,通過多次訓練迭代獲得連接權值。好像告訴網絡:好像告訴網絡:“當你看到這個圖形(比如當你看到這個圖形(比如5)時,請給我)時,請給我指示指示5”。無指導的訓
12、練無指導的訓練:網絡通過訓練自行調節連接加權,從網絡通過訓練自行調節連接加權,從而對輸入樣本分類而對輸入樣本分類。在網絡訓練時,有時只能給出大量的輸入圖形,沒有指定它在網絡訓練時,有時只能給出大量的輸入圖形,沒有指定它們的輸出,網絡就自行按輸入圖形的特徵對它們進行分類。們的輸出,網絡就自行按輸入圖形的特徵對它們進行分類。如小孩通過大量觀察可以分辨出哪是狗、哪是貓一樣。如小孩通過大量觀察可以分辨出哪是狗、哪是貓一樣。1 概述概述1.4 人工神經網絡的特點人工神經網絡的特點人工神經網絡的局限性人工神經網絡的局限性 人工神經網絡不適於高精度的計算人工神經網絡不適於高精度的計算 正像很多人不善於直接計
13、算類似資金的問題一樣,人工神正像很多人不善於直接計算類似資金的問題一樣,人工神經網絡不用於計算資金方面的問題。經網絡不用於計算資金方面的問題。人工神經網絡的學習和訓練往往是一個艱難的過程人工神經網絡的學習和訓練往往是一個艱難的過程 網絡的設計沒有嚴格確定的方法(一般憑經驗),所以選網絡的設計沒有嚴格確定的方法(一般憑經驗),所以選擇訓練方法和所需網絡結構沒有統一標準。擇訓練方法和所需網絡結構沒有統一標準。離線訓練往往需要很長時間,為了獲得最佳效果,常常要離線訓練往往需要很長時間,為了獲得最佳效果,常常要重複試驗多次。重複試驗多次。網絡收斂性的問題。網絡收斂性的問題。1 概述概述2.1 人工神經
14、網絡的生物原型人工神經網絡的生物原型大腦大腦簡單的神經元簡單的神經元2 人工神經網絡基礎人工神經網絡基礎2.1 人工神經網絡的生物原型人工神經網絡的生物原型大腦大腦簡單的神經元簡單的神經元 神經元就是神經細胞,它是動物的重要特徵之一,在人神經元就是神經細胞,它是動物的重要特徵之一,在人體內從大腦到全身存在大約體內從大腦到全身存在大約1010個神經元。個神經元。神經元間的神經元間的信號通過突觸傳遞。信號通過突觸傳遞。神經元的組成神經元的組成 細胞體細胞體:它是神經元的本體,內有細胞核和細胞質,完成普通:它是神經元的本體,內有細胞核和細胞質,完成普通細胞的生存功能。細胞的生存功能。樹突樹突:它有大
15、量的分枝,多達:它有大量的分枝,多達103數量級,長度較短(通常不超數量級,長度較短(通常不超過過1毫米),用以接收來自其它神經元的信號。毫米),用以接收來自其它神經元的信號。軸突軸突:它用以輸出信號,有些較長(可達:它用以輸出信號,有些較長(可達1米以上),軸突的遠米以上),軸突的遠端也有分枝,可與多個神經元相連。端也有分枝,可與多個神經元相連。突觸突觸:它是一個神經元與另一個神經元相聯繫的特殊部位,通:它是一個神經元與另一個神經元相聯繫的特殊部位,通常是一個神經元軸突的端部靠化學接觸或電接觸將信號傳遞給常是一個神經元軸突的端部靠化學接觸或電接觸將信號傳遞給下一個神經元的樹突或細胞體。下一個
16、神經元的樹突或細胞體。2 人工神經網絡基礎人工神經網絡基礎2.1 人工神經網絡的生物原型人工神經網絡的生物原型大腦大腦神經元的基本工作機制神經元的基本工作機制 一個神經元有兩種狀態一個神經元有兩種狀態興奮興奮和和抑制抑制 平時處於抑制狀態的神經元,當接收到其它神經元經平時處於抑制狀態的神經元,當接收到其它神經元經由突觸傳來的衝擊信號時,由突觸傳來的衝擊信號時,多個輸入在神經元中以代多個輸入在神經元中以代數和的方式疊加。數和的方式疊加。進入突觸的信號會被加權,起興奮作用的信號為正,起抑制進入突觸的信號會被加權,起興奮作用的信號為正,起抑制作用的信號為負。作用的信號為負。如果疊加總量超過某個閾值,
17、神經元就會被激發進入如果疊加總量超過某個閾值,神經元就會被激發進入興奮狀態,發出輸出脈衝,並由軸突的突觸傳遞給其興奮狀態,發出輸出脈衝,並由軸突的突觸傳遞給其它神經元。它神經元。神經元被觸發後有一個不應期,在此期間內不能被觸神經元被觸發後有一個不應期,在此期間內不能被觸發,然後閾值逐漸下降,恢復原來狀態。發,然後閾值逐漸下降,恢復原來狀態。2 人工神經網絡基礎人工神經網絡基礎2.1 人工神經網絡的生物原型人工神經網絡的生物原型大腦大腦神經元的基本工作機制神經元的基本工作機制 神經元是按照神經元是按照“全或無全或無”的原則工作的,只有興奮和的原則工作的,只有興奮和抑制兩種狀態抑制兩種狀態,但也不
18、能認為神經元只能表達或傳遞但也不能認為神經元只能表達或傳遞二值邏輯信號。二值邏輯信號。神經元興奮時往往不是只發一個脈衝,而是發出一串神經元興奮時往往不是只發一個脈衝,而是發出一串脈衝,如果把一串脈衝看成是一個調頻信號,脈衝的脈衝,如果把一串脈衝看成是一個調頻信號,脈衝的密度是可以表達連續量的。密度是可以表達連續量的。2 人工神經網絡基礎人工神經網絡基礎2.1 人工神經網絡的生物原型人工神經網絡的生物原型大腦大腦大腦及大腦皮層的結構大腦及大腦皮層的結構 研究證明,大腦中大約有研究證明,大腦中大約有1000個不同的模組,每個模組包含有個不同的模組,每個模組包含有50*106個神經元。個神經元。我們
19、可以假設每個模組就是眾多神經網絡中的一類我們可以假設每個模組就是眾多神經網絡中的一類。大腦的主要計算機构是大腦皮層,在其斷面上一般有大腦的主要計算機构是大腦皮層,在其斷面上一般有36層神經細層神經細胞排列,大約胞排列,大約10萬個神經元組成一組。萬個神經元組成一組。在一個典型的腦模型中,大約有在一個典型的腦模型中,大約有500個神經網絡進行計算工作,平個神經網絡進行計算工作,平均一個神經元向其它神經元發出均一個神經元向其它神經元發出2000個突觸。個突觸。不同層間神經元的連接方式有平行型、發散型、收斂型和回饋型,不同層間神經元的連接方式有平行型、發散型、收斂型和回饋型,這些連接的強度是隨機的,
20、隨著對外部世界的回應而逐漸形成。這些連接的強度是隨機的,隨著對外部世界的回應而逐漸形成。2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元(處理單元(PE)就是人工神經元,也稱為)就是人工神經元,也稱為結點,通常用圓圈表示。結點,通常用圓圈表示。2 人工神經網絡基礎人工神經網絡基礎12N輸輸出出輸輸入入2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的結構和功能與生物神經元有類似之處,處理單元的結構和功能與生物神經元有類似之處,可以說是生物神經元的簡單近似。可以說是生物神經元的簡單近似。處理單元只模擬了生物神經元所能執行的處理單元只模擬了生物神
21、經元所能執行的150多個處理多個處理功能中的若干個。功能中的若干個。處理單元的功能處理單元的功能 對每個輸入信號進行處理以確定其強度(加權);對每個輸入信號進行處理以確定其強度(加權);確定所有輸入信號的組合效果(求和);確定所有輸入信號的組合效果(求和);確定其輸出(轉移特性)。確定其輸出(轉移特性)。2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元對生物神經元的模擬對生物神經元的模擬 就像生物神經元中有很多輸入(激勵)一樣,處理單元就像生物神經元中有很多輸入(激勵)一樣,處理單元也有很多輸入信號,並且同時加到處理單元上,處理單也有很多輸入信號,並且同時加
22、到處理單元上,處理單元以輸出作為回應。元以輸出作為回應。處理單元的輸出像實際神經元一樣,處理單元的輸出像實際神經元一樣,輸出回應不但受輸輸出回應不但受輸入信號的影響,同時也受內部其它因素的影響。入信號的影響,同時也受內部其它因素的影響。內部因素內部因素:內部閾值或一個額外輸入(稱為偏置項)內部閾值或一個額外輸入(稱為偏置項)2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能 輸入信號
23、輸入信號來自外部(用黑色圓點表示輸入端點)來自外部(用黑色圓點表示輸入端點)或別的處理單元的輸出,或別的處理單元的輸出,在數學上表示為行向量在數學上表示為行向量x x=(x1,x2,xN)其中其中xi為第為第i個輸入的激勵電平,個輸入的激勵電平,N表示輸入數目。表示輸入數目。2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能 連接到結點連接到結點j的加權表示為加權向量的加權表示為加權向量Wj=(W1j,W2j,WNj)其中其中Wij表示從結點表示從結點i(或第(或第i個輸入點)到結點個輸入點)到結點j的加權,或稱
24、的加權,或稱i與與j結點之間的連接強度。結點之間的連接強度。2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能 考慮到內部閾值考慮到內部閾值j,用,用x0=-1的固定偏置輸入點的固定偏置輸入點表示,其連接強度取表示,其連接強度取W0j=j。於是,可得輸入。於是,可得輸入的加權和為的加權和為2 人工神經網絡基礎人工神經網絡基礎jijNiiijNiijWxWxs102.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能 如果向量如果向量x和和Wj分別包含了分別包含了x0和和W
25、0j,則有,則有x=(x0,x1,xN)Wj=(W0j,W1j,WNj)2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能 於是於是sj可表示為可表示為x和和Wj的的點積點積或或內積內積 sj=xWj 這一結果是標量,它由兩個向量的內積得到,這一結果是標量,它由兩個向量的內積得到,可以作為兩個向量相似程度的測量可以作為兩個向量相似程度的測量。如果如果向量處於相同的方向向量處於相同的方向,則其,則其內積最大內積最大;如果如果向量處於相反的方向向量處於相反的方向,則其,則其內積最小內積最小。2 人工神經網絡基礎人工神
26、經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元處理單元的基本結構和功能處理單元的基本結構和功能 處理單元的激勵電平處理單元的激勵電平sj通過一個轉移函通過一個轉移函數數F(),得到處理單元的最後輸出值,得到處理單元的最後輸出值yj2 人工神經網絡基礎人工神經網絡基礎)()()(0jijNiijjWxFWxFsFy2.2 人工神經網絡處理單元人工神經網絡處理單元轉移函數轉移函數 轉移函數轉移函數F()也稱也稱激勵函數激勵函數、傳輸函數傳輸函數或或限幅函數限幅函數,其,其作用就是將可能的無限域變換到一指定的有限範圍內輸作用就是將可能的無限域變換到一指定的有限範圍內輸出,這類似於生物神經
27、元具有的非線性轉移特性。出,這類似於生物神經元具有的非線性轉移特性。常用的轉移函數常用的轉移函數 線性函數線性函數 斜坡函數斜坡函數 階躍函數階躍函數 符號函數符號函數 Sigmoid函數函數 雙曲正切函數雙曲正切函數2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元線性函數線性函數 最簡單的轉移函數最簡單的轉移函數y=F(s)=ks其中其中y為輸出值為輸出值,s為輸入信號的加權和為輸入信號的加權和,k是一個常數,表示直線的斜率。是一個常數,表示直線的斜率。2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元斜坡函數斜坡函數2
28、人工神經網絡基礎人工神經網絡基礎r和和-r分別是處理單元的最大分別是處理單元的最大值和最小值,稱為飽和值,一般值和最小值,稱為飽和值,一般|r|=1。rsrrssrsrsFywhen|whenwhen2.2 人工神經網絡處理單元人工神經網絡處理單元階躍函數階躍函數 硬限幅函數硬限幅函數的一種的一種2 人工神經網絡基礎人工神經網絡基礎 0when00when1sssFy2.2 人工神經網絡處理單元人工神經網絡處理單元符號函數(符號函數(sgn())硬限幅函數的一種硬限幅函數的一種2 人工神經網絡基礎人工神經網絡基礎 0when1-0when1sssFy2.2 人工神經網絡處理單元人工神經網絡處理
29、單元Sigmoid函數函數 S型函數的一種型函數的一種y=F(s)=1/(1+e-s)2 人工神經網絡基礎人工神經網絡基礎2.2 人工神經網絡處理單元人工神經網絡處理單元雙曲正切函數雙曲正切函數 S型函數的一種型函數的一種 y=tand(s)=(es-e-s)/(es+e-s)相對於相對於Sigmoid函數,它是原點對稱的。函數,它是原點對稱的。當當s=0時有時有y=0,即同時具有雙級輸出。,即同時具有雙級輸出。當要求輸出當要求輸出(-1 1)範圍的信號時,它常被採用。範圍的信號時,它常被採用。2 人工神經網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構雖然單個處理
30、單元可以處理簡單的圖形檢測功雖然單個處理單元可以處理簡單的圖形檢測功能,但能,但更強的識別處理能力是來自多個結點更強的識別處理能力是來自多個結點“連成連成”的網絡的網絡,即,即人工神經網絡人工神經網絡。這裡的這裡的“連成連成”,是靠輸入至結點或者結點至是靠輸入至結點或者結點至結點間的信號傳輸通路實現的結點間的信號傳輸通路實現的,這一通路相當,這一通路相當於生物神經系統中的軸突和突觸,它們影響著於生物神經系統中的軸突和突觸,它們影響著輸入信號。輸入信號。以後我們把這種信號傳輸通路稱為以後我們把這種信號傳輸通路稱為“連接連接”,每一個連接都具有一個加權值,稱為每一個連接都具有一個加權值,稱為“連接
31、連接權權”,反映連接的強度。反映連接的強度。2 人工神經網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構單層網絡單層網絡 最簡單的網絡是把一組結點形成一層最簡單的網絡是把一組結點形成一層。左邊的黑色圓點隻起著分配輸入信號的作用,左邊的黑色圓點隻起著分配輸入信號的作用,沒有計算作用,不看作是網絡的一層。沒有計算作用,不看作是網絡的一層。右邊用圓圈表示的一組結點被看作一層。右邊用圓圈表示的一組結點被看作一層。2 人工神經網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構單層網絡單層網絡 輸入信號表示為行向量:輸入信號表示為行向量:x=(x1,x
32、2,xN),其中每一分量通,其中每一分量通過加權連接到各結點。過加權連接到各結點。每一個結點均可產生一個加權和。每一個結點均可產生一個加權和。輸入和結點間採用全連接,並且都是前饋連接。輸入和結點間採用全連接,並且都是前饋連接。在這種單層網絡中可把各加權表示為加權矩陣在這種單層網絡中可把各加權表示為加權矩陣W。矩陣的維數是矩陣的維數是N n,N是輸入信號向量的分量數,是輸入信號向量的分量數,n是該層是該層內的結點數。內的結點數。由第三個輸入連接到第二個結點的連接權表示為由第三個輸入連接到第二個結點的連接權表示為W32。2 人工神經網絡基礎人工神經網絡基礎NnNNnnWWWWWWWWW212222
33、111211W2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構單層網絡單層網絡 輸入信號的輸入信號的加權和表示為:加權和表示為:s是各結點加權和的行向量,是各結點加權和的行向量,s=(s1,s2,sn)。輸出向量輸出向量 y=(y1,y2,yn),其中,其中yj=F(sj)。2 人工神經網絡基礎人工神經網絡基礎NnNNnnNWWWWWWWWWxxxxs21222211121121W2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構多層網絡多層網絡 一般來說,一般來說,大而複雜的網絡能提供更強的計算大而複雜的網絡能提供更強的計算能力。能力。雖然目前已構成了很多網絡模型,但雖然目前已構成了很
34、多網絡模型,但它們的結它們的結點都是按層排列的點都是按層排列的,這一點正是模仿了大腦皮這一點正是模仿了大腦皮層中的網絡模組。層中的網絡模組。多層網絡是由單層網絡進行級聯構成的多層網絡是由單層網絡進行級聯構成的,即上即上一層的輸出作為下一層的輸入一層的輸出作為下一層的輸入。2 人工神經網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構多層網絡多層網絡 兩層網絡(前饋全連接網絡)兩層網絡(前饋全連接網絡)2 人工神經網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構多層網絡多層網絡 三層網絡(前饋全連接網絡)三層網絡(前饋全連接網絡)2 人工神經
35、網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構多層網絡多層網絡 注意注意:在構成多層網絡時,層間的轉移函數應在構成多層網絡時,層間的轉移函數應是非線性的,否則多層網絡的計算能力並不比是非線性的,否則多層網絡的計算能力並不比單層網絡強。單層網絡強。在線性轉移函數的情況下在線性轉移函數的情況下,兩層網絡輸出的計算是,兩層網絡輸出的計算是第一層的輸出第一層的輸出xW1作為第二層的輸入作為第二層的輸入,通過第二個,通過第二個加權矩陣得到網絡的輸出加權矩陣得到網絡的輸出y=(xW1)W2=x(W1W2)這表明兩層線性網絡等效于單層網絡,只是後者的這表明兩層線性網絡等效于單層
36、網絡,只是後者的加權矩陣為兩個加權矩陣的乘積。加權矩陣為兩個加權矩陣的乘積。2 人工神經網絡基礎人工神經網絡基礎2.3 人工神經網絡的拓撲結構人工神經網絡的拓撲結構多層網絡多層網絡 多層網絡中,接收輸入信號的層稱為多層網絡中,接收輸入信號的層稱為輸入層輸入層。它不計入網絡層數它不計入網絡層數,因為它只起著輸入信號緩衝器的因為它只起著輸入信號緩衝器的作用,沒有處理功能。作用,沒有處理功能。產生輸出信號的層稱為產生輸出信號的層稱為輸出層輸出層。除此之外的中間層稱為除此之外的中間層稱為隱藏層隱藏層(或隱蔽層),(或隱蔽層),它不直接與外部環境打交道。它不直接與外部環境打交道。隱藏層的層數可從零到若干
37、層隱藏層的層數可從零到若干層。2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)人工神經網絡的人工神經網絡的最主要特徵之一最主要特徵之一是它可以學習。是它可以學習。任何一個人工神經網絡模型要實現某種功能的任何一個人工神經網絡模型要實現某種功能的操作,就操作,就必須對它進行訓練必須對它進行訓練,讓它學會要做的,讓它學會要做的事情,並事情,並把這些知識記憶(存儲)在網絡的加把這些知識記憶(存儲)在網絡的加權中。權中。學習或訓練的實質學習或訓練的實質就是加權矩陣隨外部激勵就是加權矩陣隨外部激勵(環境)做自我調整的變化(環境)做自我調整的變化。2 人工神經
38、網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)人工神經網絡被訓練後,它每加入一組輸入就會人工神經網絡被訓練後,它每加入一組輸入就會產生一組要求的輸出。產生一組要求的輸出。一組輸入(或輸出)就是所謂的向量或圖形。一組輸入(或輸出)就是所謂的向量或圖形。訓練就是相繼加入輸入向量,並按預定規則調整訓練就是相繼加入輸入向量,並按預定規則調整網絡加權。網絡加權。在進行訓練後,網絡的各加權都收斂到一個確定在進行訓練後,網絡的各加權都收斂到一個確定值,以便每個輸入向量都會產生一個要求的輸出值,以便每個輸入向量都會產生一個要求的輸出向量。向量。調整加權所遵循的預定規則就是
39、調整加權所遵循的預定規則就是訓練演算法訓練演算法。有指導的訓練有指導的訓練 無指導的訓練無指導的訓練2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)有指導的訓練有指導的訓練 對有指導的訓練演算法,不但需要訓練用的輸入向對有指導的訓練演算法,不但需要訓練用的輸入向量,同時還要求與之對應的表示所需要輸出的目標量,同時還要求與之對應的表示所需要輸出的目標向量。向量。輸入向量輸入向量與與對應的目標向量對應的目標向量一起稱作一個一起稱作一個訓練對訓練對。通常訓練一個網絡需要很多訓練對,這些訓練對組通常訓練一個網絡需要很多訓練對,這些訓練對組成成訓練組訓練組
40、。當加上一個輸入向量時,要計算網絡的實際輸出,當加上一個輸入向量時,要計算網絡的實際輸出,並同相應的目標向量做比較,根據比較結果的誤差,並同相應的目標向量做比較,根據比較結果的誤差,按規定的演算法改變加權。按規定的演算法改變加權。把訓練組中的每個向量對相繼加入,對每個向量都把訓練組中的每個向量對相繼加入,對每個向量都計算誤差並調節加權,計算誤差並調節加權,直到訓練組中的誤差都達到直到訓練組中的誤差都達到可接受的最低值為止。可接受的最低值為止。2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)無指導的訓練無指導的訓練 無指導的訓練不要求有目標向量,網
41、絡通過自無指導的訓練不要求有目標向量,網絡通過自身的身的“經歷經歷”來學會某種功能。來學會某種功能。人們發現在幼兒的早期發育中,存在有自組織的能人們發現在幼兒的早期發育中,存在有自組織的能力,據此,認為無指導的訓練是在生物上更有道理力,據此,認為無指導的訓練是在生物上更有道理的訓練演算法。的訓練演算法。1984年,年,Kohonen等人提出了無指導的訓練演算法。等人提出了無指導的訓練演算法。2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)訓練演算法訓練演算法 目前應用的訓練演算法很多,其中有目前應用的訓練演算法很多,其中有很大部很大部分是早期的分
42、是早期的Hebb演算法的變形。演算法的變形。人們仍在以生物學習訓練的模式作為目標,人們仍在以生物學習訓練的模式作為目標,繼續探索新的演算法。繼續探索新的演算法。可以相信,真正的生物學習訓練過程肯定比可以相信,真正的生物學習訓練過程肯定比目前常用的訓練演算法複雜得多。目前常用的訓練演算法複雜得多。2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)訓練演算法之一訓練演算法之一 Hebb演算法演算法 Hebb演算法是由演算法是由Donald Hebb提出的一種最提出的一種最早的訓練演算法。早的訓練演算法。Hebb認為,如果源和目的神經元都被啟動(或抑認為
43、,如果源和目的神經元都被啟動(或抑制),它們之間的突觸的強度就會增強。制),它們之間的突觸的強度就會增強。人工神經網絡中人工神經網絡中Hebb演算法的簡單描述演算法的簡單描述:如果一個處理單元從另一個處理單元接收激勵信號,如果一個處理單元從另一個處理單元接收激勵信號,而且兩者處於相同的激勵電平(數學上具有相同的而且兩者處於相同的激勵電平(數學上具有相同的符號),那麼處理單元之間的加權就應當增強符號),那麼處理單元之間的加權就應當增強。2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)訓練演算法之一訓練演算法之一 Hebb演算法演算法 人工神經網絡中
44、人工神經網絡中Hebb演算法的簡單描述:演算法的簡單描述:按數學表示,就是兩結點的連接權將按兩結點的按數學表示,就是兩結點的連接權將按兩結點的激勵電平的乘積來改變激勵電平的乘積來改變其中,其中,Wij(n)是第是第(n+1)次調節前從結點次調節前從結點i到結點到結點j的的連接權值連接權值;Wij(n+1)是第是第(n+1)次調節後從結點次調節後從結點i到到結點結點j的連接權值;的連接權值;為訓練速率係數為訓練速率係數;yi為結點為結點i的輸出,並輸入到結點的輸出,並輸入到結點j;yj為結點為結點j的輸出的輸出。2 人工神經網絡基礎人工神經網絡基礎 jiijijyynWnW12.4 人工神經網絡
45、的訓練(學習)人工神經網絡的訓練(學習)訓練演算法之二訓練演算法之二 訓練演算法訓練演算法 這種演算法的基本思路是:這種演算法的基本思路是:按差值(按差值(值)最值)最小準則連續地修正各連接權的強度。小準則連續地修正各連接權的強度。所謂所謂差值最小差值最小,就是,就是指處理單元所要求的輸指處理單元所要求的輸出與當前實際輸出間的差值,靠調節各加權出與當前實際輸出間的差值,靠調節各加權以達到最小。以達到最小。該演算法也稱為該演算法也稱為Widdrow-Hoff訓練演算法或訓練演算法或最小均方(最小均方(LMS)演算法。)演算法。2 人工神經網絡基礎人工神經網絡基礎2.4 人工神經網絡的訓練(學習)
46、人工神經網絡的訓練(學習)訓練演算法之三訓練演算法之三 梯度下降演算法梯度下降演算法 這是將數學上的優化方法用於使要求的輸出與實際這是將數學上的優化方法用於使要求的輸出與實際輸出之差最小。輸出之差最小。在該方法中,加權的修正量正比於誤差對加權的一在該方法中,加權的修正量正比於誤差對加權的一階導數,數學表示如下:階導數,數學表示如下:其中,其中,E是描述誤差的誤差函數是描述誤差的誤差函數,Wij(n)是結點是結點i到結到結點點j的連接權的連接權,為訓練速率係數為訓練速率係數。訓練演算法是梯度下降演算法的一個特例。訓練演算法是梯度下降演算法的一個特例。該演算法收斂到穩定點較慢,但它是一種比較該演算
47、法收斂到穩定點較慢,但它是一種比較有效和普遍應用的訓練演算法。有效和普遍應用的訓練演算法。2 人工神經網絡基礎人工神經網絡基礎ijijWEW2.4 人工神經網絡的訓練(學習)人工神經網絡的訓練(學習)訓練演算法之四訓練演算法之四 隨機訓練演算法隨機訓練演算法 該演算法該演算法利用了隨機過程利用了隨機過程,用,用概率和能量關係概率和能量關係來調節來調節連接權連接權。基本思路:基本思路:在訓練過程中,在訓練過程中,隨機改變一個權值隨機改變一個權值,確定確定權值改變後產生的最終能量權值改變後產生的最終能量,並,並按如下準則來確定按如下準則來確定是是否保留此加權的變化否保留此加權的變化。若改變加權後,
48、若改變加權後,人工神經網絡的人工神經網絡的能量降低了能量降低了,則,則保留這一改保留這一改變變。若改變加權後若改變加權後,能量,能量沒有降低沒有降低,則,則根據一個根據一個預選的概率分佈預選的概率分佈來保留這一改變。(來保留這一改變。(這一步的目的是為了保證人工神經網絡這一步的目的是為了保證人工神經網絡能夠獲得全域能量最小點,而不是局部能量最小點。)能夠獲得全域能量最小點,而不是局部能量最小點。)否則,拒絕這一改變,使權值恢復到原來的值。否則,拒絕這一改變,使權值恢復到原來的值。典型的隨機訓練演算法:典型的隨機訓練演算法:模擬退火演算法模擬退火演算法2 人工神經網絡基礎人工神經網絡基礎3 前饋
49、神經網絡前饋神經網絡神經生理學和神經解剖學的研究表明,神經生理學和神經解剖學的研究表明,大腦中實大腦中實際的神經網絡一般具有層次結構,同時際的神經網絡一般具有層次結構,同時結點間的結點間的連接很多屬於前饋連接連接很多屬於前饋連接,同時這種前饋連接構成同時這種前饋連接構成的網絡的網絡(前饋網絡)學習過程比較容易(前饋網絡)學習過程比較容易,所以首,所以首先討論前饋網絡模型。先討論前饋網絡模型。1958年年心理學家心理學家Frank Rosenblatt及其合作者首先及其合作者首先研究了這種前饋層次網絡模型,將其稱為研究了這種前饋層次網絡模型,將其稱為感知器感知器(Perception)。在感知器
50、模型中,在感知器模型中,輸入向量輸入向量x=(x1,x2,xN)通過各輸入通過各輸入端點分配給下一層的各結點端點分配給下一層的各結點,這下一層稱為中間層這下一層稱為中間層,它它可以是一層可以是一層,也可以是多層也可以是多層,最後通過輸出層結點得到最後通過輸出層結點得到輸出向量輸出向量y=(y1,y2,yn)。在這種前饋網絡模型中在這種前饋網絡模型中,沒有層內聯接沒有層內聯接,也,也沒有隔層的沒有隔層的前饋聯接前饋聯接,每一個結點只能前饋聯接到其下一層的所有每一個結點只能前饋聯接到其下一層的所有結點。結點。由於在早期對於含有隱蔽層的多層感知器沒有可行的訓由於在早期對於含有隱蔽層的多層感知器沒有可