第1章 人工神經網絡概述 1
1.1 人工智能與神經網絡簡史 1
1.1.1 人工智能的誕生:1943~1956年 2
1.1.2 黃金發展期:1956~1974年 3
1.1.3 第一次低榖期:1974~1980年 4
1.1.4 繁榮期:1980~1987年 5
1.1.5 第二次低榖期:1987~1993年 5
1.1.6 再次崛起:1993年至今 6
1.2 生物學研究對神經網絡的影響 6
1.3 大數據對人工智能的影響 8
1.4 計算機硬件發展對人工智能的影響 9
1.5 計算機軟件發展對人工智能的影響 9
1.6 人工智能的廣泛應用 10
第2章 人工神經元模型與感知機 12
2.1 人工神經元組成要素 12
2.1.1 人工神經元的基本結構 12
2.1.2 傳輸函數類型 13
2.2 感知機 15
2.2.1 使用感知機識彆水果 15
2.2.2 讓感知機記憶邏輯與 17
2.2.3 感知機的學習算法 18
2.3 總結 20
第3章 神經網絡框架Neuroph介紹 21
3.1 Neuroph是什麼 21
3.2 Neuroph係統的構成 22
3.3 Neuroph Studio的功能展示 22
3.3.1 使用Neuroph Studio構造感知機處理邏輯與 23
3.3.2 使用Neuroph Studio進行動物分類實驗 28
3.4 Neuroph Library架構分析 34
3.4.1 Neuroph Library核心架構 35
3.4.2 Neuron神經元 35
3.4.3 Layer層 36
3.4.4 NeuralNetwork神經網絡 37
3.4.5 LearningRule學習算法 37
3.4.6 DataSet和DataSetRow 38
3.5 Neuroph開發環境搭建 38
3.5.1 基礎平颱——Java介紹以及安裝 39
3.5.2 包管理工具——Maven安裝 39
3.5.3 開發工具——Eclipse安裝 40
3.6 總結 41
第4章 使用Java實現感知機及其應用 42
4.1 第一個Neuroph程序——使用感知機記憶邏輯與 42
4.1.1 創建感知機網絡 42
4.1.2 理解輸入神經元InputNeuron 45
4.1.3 理解貝葉斯神經元BiasNeuron 45
4.1.4 step傳輸函數是如何實現的 46
4.2 讓感知機理解坐標係統 47
4.2.1 感知機網絡的設計 47
4.2.2 感知機網絡的實現 47
4.3 感知機學習算法與Java實現 49
4.3.1 感知機學習規則的實現 50
4.3.2 一個自學習的感知機實現——SimplePerceptron 51
4.3.3 小試牛刀——SimplePerceptron學習邏輯與 52
4.3.4 訓練何時停止 53
4.4 再看坐標點位置識彆 55
4.5 感知機的極限——異或問題 57
4.6 總結 58
第5章 ADALINE網絡及其應用 59
5.1 ADALINE網絡與LMS算法 59
5.2 ADALINE網絡的Java實現 60
5.3 使用ADALINE網絡識彆數字 62
5.3.1 印刷體數字識彆問題概述 62
5.3.2 代碼實現 63
5.3.3 加入噪點後再嘗試 66
5.4 總結 67
第6章 多層感知機和BP學習算法 68
6.1 多層感知機的結構與簡單實現 68
6.1.1 多層感知機結構的提齣 68
6.1.2 定義多層感知機處理異或問題 69
6.1.3 多層感知機的簡單實現 71
6.2 多層感知機學習算法——BP學習算法 74
6.2.1 BP學習算法理論介紹 74
6.2.2 BP學習算法與BP神經網絡的實現 77
6.3 BP神經網絡細節優化 84
6.3.1 隨機化權值的方式 84
6.3.2 Sigmoid函數導數的探討 86
6.4 帶著算法重迴異或問題 87
6.5 總結 89
第7章 BP神經網絡的案例 90
7.1 奇偶性判彆問題 90
7.1.1 問題描述 90
7.1.2 代碼實現 90
7.2 函數逼近 94
7.2.1 問題描述 94
7.2.2 代碼實現 94
7.3 動物分類 99
7.3.1 問題描述 99
7.3.2 問題分析 100
7.3.3 代碼實現 102
7.4 簡單的語音識彆 104
7.4.1 問題描述 104
7.4.2 代碼實現 104
7.5 MNIST手寫體識彆 106
7.5.1 問題描述 106
7.5.2 問題分析 108
7.5.3 代碼實現 108
7.6 總結 112
第8章 Hopfield神經網絡 113
8.1 Hopfield神經網絡的結構和原理 113
8.1.1 Hopfield網絡的結構 113
8.1.2 網絡吸引子 114
8.1.3 網絡權值的設計 115
8.2 網絡的存儲容量 117
8.3 Hopfield神經網絡的Java實現 118
8.3.1 Hopfield網絡構造函數 118
8.3.2 Hopfield網絡的神經及其特點 119
8.3.3 Hopfield網絡學習算法 120
8.4 Hopfield網絡還原帶有噪點的字符 121
8.5 Hopfield網絡的自聯想案例 123
8.6 總結 126
第9章 BAM雙嚮聯想記憶網絡 127
9.1 BAM網絡的結構與原理 127
9.2 BAM網絡的學習算法 128
9.3 使用Java實現BAM網絡 129
9.3.1 BAM網絡的靜態結構 129
9.3.2 BAM網絡學習算法 130
9.3.3 BAM網絡的運行 131
9.4 BAM網絡的應用 133
9.4.1 場景描述——人名與電話 133
9.4.2 數據編碼設計 134
9.4.3 具體實現 136
9.5 總結 140
第10章 競爭學習網絡 141
10.1 競爭學習的基本原理 141
10.1.1 嚮量的相似性 142
10.1.2 競爭學習規則 143
10.2 自組織映射網絡SOM的原理 144
10.2.1 SOM網絡的生物學意義 144
10.2.2 SOM網絡的結構 144
10.2.3 SOM網絡的運行原理 145
10.2.4 有關初始化權重的問題 146
10.3 SOM網絡的Java實現 147
10.3.1 SOM網絡拓撲結構的實現 147
10.3.2 SOM網絡的初始權值設置 150
10.3.3 Kohonen算法的實現 153
10.4 SOM網絡的應用 157
10.4.1 使用SOM網絡進行動物聚類 158
10.4.2 使用SOM網絡進行城市聚類 161
10.5 總結 164
第11章 PCA神經網絡 165
11.1 PCA方法概述 165
11.1.1 PCA方法數學背景 166
11.1.2 PCA計算示例 167
11.2 PCA神經網絡學習算法 170
11.2.1 Oja算法 170
11.2.2 Sanger算法 171
11.3 基於Neuroph實現PCA網絡 172
11.3.1 Oja算法的實現 172
11.3.2 Sanger算法的實現 177
11.4 使用PCA網絡預處理MNIST手寫體數據集 178
11.5 總結 181
· · · · · · (
收起)