本書是一本易學易懂的神經(jīng)網(wǎng)絡(luò)教材,主要討論網(wǎng)絡(luò)結(jié)構(gòu)、學習規(guī)則、訓練技巧和工程應(yīng)用,緊緊圍繞“設(shè)計”這一視角組織材料和展開講解,強調(diào)基本原理和訓練方法,概念清晰,數(shù)學論述嚴謹,包含豐富的實例和練習,并配有課件和MATLAB演示程序。本書要求讀者具備線性代數(shù)、概率論和微分方程的基礎(chǔ)知識,可作為高年級本科生或一年級研究生的神經(jīng)網(wǎng)絡(luò)導論課程教材,也可供有興趣的讀者自學或參考。
前言Neural Network Design,Second Edition本書介紹基本的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和學習規(guī)則,重點闡述網(wǎng)絡(luò)的數(shù)學分析、訓練方法,以及網(wǎng)絡(luò)在非線性回歸、模式識別、信號處理、數(shù)據(jù)挖掘和控制系統(tǒng)等領(lǐng)域?qū)嶋H工程問題中的應(yīng)用。
我們盡最大努力以清晰和一致的方式安排本書內(nèi)容,以期本書易懂易用。書中使用了許多例子來解釋每個討論的主題。在書的最后幾章,我們提供了一些學習實例,以展示神經(jīng)網(wǎng)絡(luò)在實際應(yīng)用中可能遇到的問題。
由于本書是關(guān)于神經(jīng)網(wǎng)絡(luò)設(shè)計的,因此在內(nèi)容的選擇上依據(jù)了兩個原則。首先,我們希望提供最有用且實際的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)、學習規(guī)則和訓練技巧。其次,我們希望本書能夠自成體系,并且章節(jié)間的過渡自然流暢。為了實現(xiàn)這個目的,我們將有關(guān)應(yīng)用數(shù)學的各種介紹材料和章節(jié)放在了需要用到這些材料的特定主題之前。簡言之,一些內(nèi)容的選擇是因為它們對神經(jīng)網(wǎng)絡(luò)的實際應(yīng)用有重要作用,而另一些內(nèi)容的選擇則是由于它們對解釋神經(jīng)網(wǎng)絡(luò)的運行機制有重要意義。
我們省略了許多本可以包含的內(nèi)容。例如,我們沒有把本書寫成一個涵蓋所有已知神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和學習規(guī)則的目錄或綱要,而是集中精力介紹基礎(chǔ)概念。其次,我們沒有討論神經(jīng)網(wǎng)絡(luò)的實現(xiàn)技術(shù),如VLSI、光學器件和并行計算機等。再有,我們沒有提供神經(jīng)網(wǎng)絡(luò)的生物學和心理學方面的基礎(chǔ)知識。雖然這些內(nèi)容都是重要的,不過,我們希望重點討論那些我們認為對神經(jīng)網(wǎng)絡(luò)設(shè)計最有用的內(nèi)容,并進行深入闡釋。
本書可作為高年級本科生或一年級研究生一個學期的神經(jīng)網(wǎng)絡(luò)導論課程教材(也適合短期課程、自學或參考)。讀者需要具有一定的線性代數(shù)、概率論和微分方程的基礎(chǔ)知識。
書中每章按如下方式分節(jié):目標、理論與例子、小結(jié)、例題、結(jié)束語、擴展閱讀和習題。理論與例子是每章的主要部分,包含基本思想的發(fā)展以及例子解析。小結(jié)部分提供一個方便的列表,包含重要方程和概念,以易于工程參考。每章將大約1/3的篇幅用在例題部分,為所有關(guān)鍵的概念提供詳細的例題解析。
下頁的框圖說明了各章之間的依賴關(guān)系。
第1~6章涵蓋后面所有章節(jié)需要的基本概念。第1章是本書的引言,簡要介紹神經(jīng)網(wǎng)絡(luò)的歷史背景和一些生物學基礎(chǔ)。第2章描述基本的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),這一章引入的記號體系將貫穿全書。第3章給出一個簡單的模式識別問題,并展示該問題可以分別由三類不同的神經(jīng)網(wǎng)絡(luò)來解決。這三類網(wǎng)絡(luò)是本書后面的網(wǎng)絡(luò)類型的代表。此外,這里的模式識別問題也提供了本書解決問題的一般思路。
本書主要專注于訓練神經(jīng)網(wǎng)絡(luò)完成各種任務(wù)的方法。在第4章中,我們介紹學習算法并給出第一個實際算法:感知機學習規(guī)則。感知機網(wǎng)絡(luò)雖然有其本質(zhì)的局限性,但卻具有重要的歷史意義,并且可作為一個有用的工具來引入后面章節(jié)中強大神經(jīng)網(wǎng)絡(luò)的關(guān)鍵概念。
本書的主要目的之一是闡述神經(jīng)網(wǎng)絡(luò)的工作原理。為此,我們將神經(jīng)網(wǎng)絡(luò)的內(nèi)容和一些重要的輔助材料組織在一起。例如,在第5、6章中提供了線性代數(shù)的相關(guān)材料,這是理解神經(jīng)網(wǎng)絡(luò)所需的核心數(shù)學知識。這兩章討論的概念將廣泛用于本書后面章節(jié)。
第7章和第15章闡述主要受生物學和心理學啟發(fā)的神經(jīng)網(wǎng)絡(luò)及其學習規(guī)則。它們分為兩類:聯(lián)想網(wǎng)絡(luò)和競爭網(wǎng)絡(luò)。聯(lián)想網(wǎng)絡(luò)安排在第7章,而競爭網(wǎng)絡(luò)安排在第15章。
第8~14章以及第16章論述一類稱為性能學習的方法,該方法用于訓練網(wǎng)絡(luò)以優(yōu)化其性能。第8、9章介紹性能學習的基本概念。第10~13章中將這些概念用于逐步強大和復雜的前饋神經(jīng)網(wǎng)絡(luò)。第14章將這些概念用于動態(tài)神經(jīng)網(wǎng)絡(luò)。在第16章中,這些概念則被用于徑向基神經(jīng)網(wǎng)絡(luò),這類網(wǎng)絡(luò)也用到了來自競爭學習的概念。
第17~22章和前面的章節(jié)不同。前面的章節(jié)主要關(guān)注每種網(wǎng)絡(luò)的基礎(chǔ)理論和相應(yīng)的學習規(guī)則,要點是理解核心概念。在第17~22章中,我們討論神經(jīng)網(wǎng)絡(luò)在實際應(yīng)用中的具體問題。第17章闡述許多實際的訓練技巧,第18~22章給出一系列實例研究,這些實例包括將神經(jīng)網(wǎng)絡(luò)用于函數(shù)逼近、概率估計、模式識別、聚類和預測。
軟件MATLAB軟件并非是使用本書所必需的,上機練習可以用任何編程語言來完成。另外,本書提供的神經(jīng)網(wǎng)絡(luò)設(shè)計演示(Neural Network Design Demonstrations)程序雖然有助于理解書中內(nèi)容,但非關(guān)鍵所在。
不過,我們還是采用MATLAB軟件包來提供本書的輔助材料。該軟件使用廣泛,而且由于它的矩陣/向量表示法和圖形化顯示,為神經(jīng)網(wǎng)絡(luò)實驗提供了方便的環(huán)境。我們用兩種不同的方法使用MATLAB。第一種,我們?yōu)樽x者準備了一些用MATLAB去完成的練習。神經(jīng)網(wǎng)絡(luò)的一些重要特性僅在大型問題中才能體現(xiàn)出來,這需要大量計算,不適合手工演算。利用MATLAB可以快速實現(xiàn)神經(jīng)網(wǎng)絡(luò)算法,也可以方便地測試大型問題。(如果沒有MATLAB軟件,可以使用任何其他編程語言來完成這些練習。)第二種使用MATLAB的方法是利用Neural Network Design Demonstrations軟件,你可以從網(wǎng)站hagan.okstate.edu/nnd.html下載它。這些交互式的演示程序解釋了每章中的重要概念。把這個軟件加載到你計算機的MATLAB目錄下之后(或者放在MATLAB路徑上),就可在MATLAB提示符下通過輸入nnd命令進
目 錄
Neural Network Design,Second Edition
出版者的話
譯者序
前言
第1章 引言1
1.1 目標1
1.2 歷史1
1.3 應(yīng)用3
1.4 生物學啟示4
1.5 擴展閱讀5
第2章 神經(jīng)元模型及網(wǎng)絡(luò)結(jié)構(gòu)8
2.1 目標8
2.2 理論與例子8
2.2.1 記號8
2.2.2 神經(jīng)元模型8
2.2.3 網(wǎng)絡(luò)結(jié)構(gòu)11
2.3 小結(jié)15
2.4 例題17
2.5 結(jié)束語18
2.6 習題18
第3章 一個說明性的實例20
3.1 目標20
3.2 理論與例子20
3.2.1 問題描述20
3.2.2 感知機21
3.2.3 Hamming網(wǎng)絡(luò)23
3.2.4 Hopfield網(wǎng)絡(luò)26
3.3 結(jié)束語27
3.4 習題28
第4章 感知機學習規(guī)則31
4.1 目標31
4.2 理論與例子31
4.2.1 學習規(guī)則31
4.2.2 感知機結(jié)構(gòu)32
4.2.3 感知機的學習規(guī)則35
4.2.4 收斂性證明39
4.3 小結(jié)41
4.4 例題42
4.5 結(jié)束語48
4.6 擴展閱讀49
4.7 習題49
第5章 信號與權(quán)值向量空間53
5.1 目標53
5.2 理論與例子53
5.2.1 線性向量空間53
5.2.2 線性無關(guān)54
5.2.3 生成空間55
5.2.4 內(nèi)積56
5.2.5 范數(shù)56
5.2.6 正交性56
5.2.7 向量展開式58
5.3 小結(jié)60
5.4 例題61
5.5 結(jié)束語66
5.6 擴展閱讀67
5.7 習題67
第6章 神經(jīng)網(wǎng)絡(luò)中的線性變換71
6.1 目標71
6.2 理論與例子71
6.2.1 線性變換71
6.2.2 矩陣表示72
6.2.3 基變換74
6.2.4 特征值與特征向量76
6.3 小結(jié)79
6.4 例題79
6.5 結(jié)束語85
6.6 擴展閱讀85
6.7 習題86
第7章 有監(jiān)督的Hebb學習90
7.1 目標90
7.2 理論與例子90
7.2.1 線性聯(lián)想器91
7.2.2 Hebb規(guī)則91
7.2.3 偽逆規(guī)則93
7.2.4 應(yīng)用95
7.2.5 Hebb學習的變形96
7.3 小結(jié)97
7.4 例題98
7.5 結(jié)束語105
7.6 擴展閱讀105
7.7 習題106
第8章 性能曲面和最優(yōu)點108
8.1 目標108
8.2 理論與例子108
8.2.1 泰勒級數(shù)108
8.2.2 方向?qū)?shù)110
8.2.3 極小點111
8.2.4 優(yōu)化的必要條件113
8.2.5 二次函數(shù)114
8.3 小結(jié)119
8.4 例題120
8.5 結(jié)束語127
8.6 擴展閱讀127
8.7 習題128
第9章 性能優(yōu)化131
9.1 目標131
9.2 理論與例子131
9.2.1 最速下降法131
9.2.2 牛頓法136
9.2.3 共軛梯度法139
9.3 小結(jié)142
9.4 例題142
9.5 結(jié)束語150
9.6 擴展閱讀150
9.7 習題151
第10章 Widrow-Hoff學習153
10.1 目標153
10.2 理論與例子153
10.2.1 ADALINE網(wǎng)絡(luò)153
10.2.2 均方誤差154
10.2.3 LMS算法156
10.2.4 收斂性分析157
10.2.5 自適應(yīng)濾波器159
10.3 小結(jié)164
10.4 例題165
10.5 結(jié)束語174
10.6 擴展閱讀174
10.7 習題175
第11章 反向傳播179
11.1 目標179
11.2 理論與例子179
11.2.1 多層感知機179
11.2.2 反向傳播算法182
11.2.3 例子186
11.2.4 批量訓練和增量訓練188
11.2.5 使用反向傳播188
11.3 小結(jié)192
11.4 例題193
11.5 結(jié)束語201
11.6 擴展閱讀201
11.7 習題202
第12章 反向傳播算法的變形210
12.1 目標210
12.2 理論與例子210
12.2.1 反向傳播算法的缺點210
12.2.2 反向傳播算法的啟發(fā)式改進215
12.2.3 數(shù)值優(yōu)化技術(shù)218
12.3 小結(jié)226
12.4 例題228
12.5 結(jié)束語235
12.6 擴展閱讀236
12.7 習題237
第13章 泛化241
13.1 目標241
13.2 理論與例子241
13.2.1 問題描述242
13.2.2 提升泛化能力的方法243
13.3 小結(jié)257
13.4 例題258
13.5 結(jié)束語265
13.6 擴展閱讀265
13.7 習題266
第14章 動態(tài)網(wǎng)絡(luò)270
14.1 目標270
14.2 理論與例子270
14.2.1 分層數(shù)字動態(tài)網(wǎng)絡(luò)271
14.2.2 動態(tài)學習的基本原則273
14.2.3 動態(tài)反向傳播276
14.3 小結(jié)288
14.4 例題290
14.5 結(jié)束語296
14.6 擴展閱讀296
14.7 習題297
第15章 競爭網(wǎng)絡(luò)302
15.1 目標302
15.2 理論與例子302
15.2.1 Hamming網(wǎng)絡(luò)303
15.2.2 競爭層304
15.2.3 生物學中的競爭層307
15.2.4 自組織特征圖308
15.2.5 學習向量量化310
15.3 小結(jié)314
15.4 例題315
15.5 結(jié)束語322
15.6 擴展閱讀322
15.7 習題323
第16章 徑向基網(wǎng)絡(luò)329
16.1 目標329
16.2 理論與例子329
16.2.1 徑向基網(wǎng)絡(luò)329
16.2.2 訓練RBF網(wǎng)絡(luò)333
16.3 小結(jié)343
16.4 例題344
16.5 結(jié)束語347
16.6 擴展閱讀347
16.7 習題348
第17章 實際訓練問題352
17.1 目標352
17.2 理論與例子352
17.2.1 訓練前的步驟353
17.2.2 網(wǎng)絡(luò)訓練359
17.2.3 訓練結(jié)果分析362
17.3 結(jié)束語368
17.4 擴展閱讀368
第18章 實例研究1:函數(shù)逼近370
18.1 目標370
18.2 理論與例子370
18.2.1 智能傳感系統(tǒng)描述370
18.2.2 數(shù)據(jù)收集與預處理371
18.2.3 網(wǎng)絡(luò)結(jié)構(gòu)選擇372
18.2.4 網(wǎng)絡(luò)訓練372
18.2.5 驗證373
18.2.6 數(shù)據(jù)集374
18.3 結(jié)束語375
18.4 擴展閱讀375
第19章 實例研究2:概率估計376
19.1 目標376
19.2 理論與例子376
19.2.1 CVD過程描述376
19.2.2 數(shù)據(jù)收集與預處理377
19.2.3 網(wǎng)絡(luò)結(jié)構(gòu)選擇378
19.2.4 網(wǎng)絡(luò)訓練379
19.2.5 驗證381
19.2.6 數(shù)據(jù)集382
19.3 結(jié)束語382
19.4 擴展閱讀383
第20章 實例研究3:模式識別384
20.1 目標384
20.2 理論與例子384
20.2.1 心肌梗死識別問題描述384
20.2.2 數(shù)據(jù)收集與預處理384
20.2.3 網(wǎng)絡(luò)結(jié)構(gòu)選擇387
20.2.4 網(wǎng)絡(luò)訓練387
20.2.5 驗證388
20.2.6 數(shù)據(jù)集389
20.3 結(jié)束語390
20.4 擴展閱讀390
第21章 實例研究4:聚類391
21.1 目標391
21.2 理論與例子391
21.2.1 森林覆蓋問題描述391
21.2.2 數(shù)據(jù)收集與預處理392
21.2.3 網(wǎng)絡(luò)結(jié)構(gòu)選擇392
21.2.4 網(wǎng)絡(luò)訓練393
21.2.5 驗證394
21.2.6 數(shù)據(jù)集396
21.3 結(jié)束語396
21.4 擴展閱讀396
第22章 實例研究5:預測398
22.1 目標398
22.2 理論與例子398
22.2.1 磁懸浮系統(tǒng)描述398
22.2.2 數(shù)據(jù)收集與預處理399
22.2.3 網(wǎng)絡(luò)結(jié)構(gòu)選擇399
22.2.4 網(wǎng)絡(luò)訓練401
22.2.5 驗證402
22.2.6 數(shù)據(jù)集404
22.3 結(jié)束語404
22.4 擴展閱讀405
附錄A 參考文獻406
附錄B 記號413
附錄C 軟件417
索引420