MATLAB神经网络超级学习手册
出版时间:2014年版
内容简介
《MATLAB神经网络超级学习手册》以新近推出的MATLAB R2013a神经网络工具箱为基础,系统全面地介绍了神经网络的各种概念和应用。《MATLAB神经网络超级学习手册》按逻辑编排,自始至终采用实例描述;内容完整且每章相对独立,是一本不可多得的掌握MATLAB神经网络的学习用书。全书共分为16章,从MATLAB简介开始,详细介绍了MATLAB的基础知识、MATLAB程序设计、人工神经网络概述、感知器、线性神经网络、BP神经网络、RBF神经网络、反馈型神经网络、竞争型神经网络、神经网络在Simulink中的应用、神经网络GUI、自定义神经网络及函数等内容。在本书最后,还详细介绍了神经网络在MATLAB中的几种应用方法。《MATLAB神经网络超级学习手册》以神经网络结构为主线,以学习算法为副线,结合各种实例,目的是使读者易看懂、会应用。本书是一本简明介绍MATLAB神经网络设计技能的综合性用书。《MATLAB神经网络超级学习手册》深入浅出,实例引导,讲解详实,既可以作为高等院校理工科的研究生、本科生的教材,也可作为广大科研工程技术人员的参考用书。
目 录
第1章 MATLAB简介 1
1.1 MATLAB的发展 1
1.2 MATLAB的特点及应用领域 2
1.3 MATLAB R2013a的安装 3
1.4 MATLAB R2013a的工作环境 5
1.4.1 操作界面简介 5
1.4.2 Workspace(命令窗口) 6
1.4.3 Command History(历史命令窗口) 9
1.4.4 输入变量 11
1.4.5 路径管理 12
1.4.6 搜索路径 13
1.4.7 Workspace(工作空间) 14
1.4.8 变量的编辑命令 15
1.4.9 存取数据文件 17
1.5 MATLAB R2013a的帮助系统 17
1.5.1 纯文本帮助 18
1.5.2 演示帮助 19
1.5.3 帮助导航 21
1.5.4 帮助文件目录窗 22
1.5.5 帮助文件索引窗 22
1.6 本章小结 23
第2章 MATLAB基础 24
2.1 基本概念 24
2.1.1 MATLAB数据类型概述 24
2.1.2 常量与变量 25
2.1.3 标量、向量、矩阵与数组 26
2.1.4 运算符 28
2.1.5 命令、函数、表达式和语句 30
2.2 MATLAB中的数组 31
2.2.1 数组的保存和装载 31
2.2.2 数组索引和寻址 32
2.2.3 数组的扩展和裁剪 34
2.2.4 数组形状的改变 40
2.2.5 数组运算 43
2.2.6 数组的查找 46
2.2.7 数组的排序 47
2.2.8 高维数组的降维操作 48
2.3 曲线拟合 49
2.3.1 多项式拟合 49
2.3.2 加权最小方差(WLS)拟合原理及实例 50
2.4 M文件 52
2.4.1 M文件概述 53
2.4.2 局部变量与全局变量 54
2.4.3 M文件的编辑与运行 55
2.4.4 脚本文件 56
2.4.5 函数文件 57
2.4.6 函数调用 58
2.4.7 M文件调试工具 61
2.4.8 M文件分析工具 63
2.5 本章小结 65
第3章 MATLAB程序设计 66
3.1 MATLAB的程序结构 66
3.1.1 if分支结构 66
3.1.2 switch分支结构 68
3.1.3 while循环结构 68
3.1.4 for循环结构 70
3.2 MATLAB的控制语句 71
3.2.1 continue命令 71
3.2.2 break命令 72
3.2.3 return命令 73
3.2.4 input命令 73
3.2.5 keyboard命令 74
3.2.6 error和warning命令 74
3.3 数据的输入输出 75
3.3.1 键盘输入语句(input) 75
3.3.2 屏幕输出语句(disp) 76
3.3.3 M数据文件的存储/加载(save/load) 76
3.3.4 格式化文本文件的存储/读取(fprintf/fscanf) 76
3.3.5 二进制数据文件的存储/读取(fwrite/fread) 76
3.3.6 数据文件行存储/读取(fgetl/fgets) 77
3.4 MATLAB文件操作 77
3.5 MATLAB程序优化 79
3.5.1 效率优化(时间优化) 79
3.5.2 内存优化(空间优化) 80
3.5.3 编程注意事项 85
3.5.4 几个常用数学方法的算法程序 86
3.6 程序调试 94
3.6.1 程序调试命令 94
3.6.2 程序剖析 95
3.7 本章小结 99
第4章 人工神经网络概述 100
4.1 人工神经网络 100
4.1.1 人工神经网络的发展 100
4.1.2 人工神经网络研究内容 101
4.1.3 人工神经网络研究方向 102
4.1.4 人工神经网络发展趋势 102
4.2 神经元 105
4.2.1 神经元细胞 105
4.2.2 MP模型 106
4.2.3 一般神经元模型 107
4.3 神经网络的结构及学习 108
4.3.1 神经网络结构 108
4.3.2 神经网络学习 110
4.4 MATLAB神经网络工具箱 111
4.4.1 神经网络工具箱函数 112
4.4.2 神经网络工具箱的使用 113
4.5 本章小结 118
第5章 感知器 119
5.1 感知器原理 119
5.1.1 感知器模型 119
5.1.2 感知器初始化 120
5.1.3 感知器学习规则 121
5.1.4 感知器训练 121
5.2 感知器的局限性 122
5.3 感知器工具箱的函数 122
5.4 感知器的MATLAB仿真程序设计 130
5.4.1 单层感知器MATLAB仿真程序设计 130
5.4.2 多层感知器MATLAB仿真程序设计 135
5.5 本章小结 139
第6章 线性神经网络 140
6.1 线性神经网络原理 140
6.1.1 线性神经网络模型 140
6.1.2 线性神经网络初始化 141
6.1.3 线性神经网络学习规则 142
6.1.4 线性神经网络的训练 144
6.2 线性神经网络工具箱函数 147
6.3 线性神经网络的MATLAB仿真程序设计 153
6.3.1 线性神经网络设计的基本方法 153
6.3.2 线性神经网络的设计 153
6.4 本章小结 158
第7章 BP神经网络 159
7.1 BP神经网络原理 159
7.1.1 BP神经网络模型 159
7.1.2 BP神经网络算法 161
7.1.3 BP神经网络的训练 164
7.1.4 BP神经网络功能 167
7.2 网络的设计 167
7.2.1 网络的层数 167
7.2.2 隐含层的神经元数 168
7.2.3 初始权值的选取 168
7.2.4 学习速率 168
7.3 BP神经网络工具箱函数 168
7.4 BP神经网络的工程应用 173
7.4.1 BP网络在函数逼近中的应用 173
7.4.2 nntool神经网络工具箱的应用 181
7.4.3 BP神经网络在语音特征信号分类中的应用 184
7.4.4 BP神经网络的非线性函数拟合应用 190
7.5 本章小结 193
第8章 RBF神经网络 194
8.1 RBF网络模型 194
8.1.1 RBF神经网络模型 194
8.1.2 RBF网络的工作原理 195
8.1.3 RBF神经网络的具体实现 196
8.2 RBF神经网络的学习算法 196
8.3 RBF网络工具箱函数 198
8.3.1 RBF工具箱函数 198
8.3.2 转换函数 200
8.3.3 传递函数 201
8.4 基于RBF网络的非线性滤波 202
8.4.1 非线性滤波 202
8.4.2 RBF神经网络用于非线性滤波 202
8.5 RBF网络MATLAB应用实例 207
8.6 本章小结 216
第9章 反馈型神经网络 217
9.1 反馈型神经网络的基本概念 217
9.2 Hopfield网络模型 219
9.2.1 Hopfield网络模型 220
9.2.2 状态轨迹 221
9.2.3 状态轨迹发散 221
9.3 Hopfield网络工具箱函数 222
9.3.1 Hopfield网络创建函数 223
9.3.2 Hopfield网络传递函数 227
9.4 离散型Hopfield网络 228
9.4.1 DHNN模型结构 228
9.4.2 联想记忆 229
9.4.3 DHNN的海布(Hebb)学习规则 232
9.4.4 DHNN权值设计的其他方法 233
9.5 连续型Hopfield网络 235
9.6 Elman网络 242
9.6.1 Elman网络结构 243
9.6.2 Elman网络创建函数 243
9.6.3 Elman网络的工程应用 245
9.7 本章小结 252
第10章 竞争型神经网络 253
10.1 自组织型竞争神经网络 253
10.1.1 几种联想学习规则 253
10.1.2 网络结构 258
10.1.3 自组织神经网络的原理 260
10.1.4 竞争学习规则 265
10.1.5 竞争网络的训练过程 265
10.2 自组织特征映射神经网络 266
10.2.1 自组织特征映射神经网络拓扑结构 267
10.2.2 SOM权值调整域 268
10.2.3 SOM网络运行原理 269
10.2.4 网络的训练过程 270
10.3 自适应共振理论神经网络 272
10.3.1 自适应共振理论神经网络概述 272
10.3.2 ART网络的结构及特点 272
10.4 学习向量量化神经网络 273
10.4.1 LVQ神经网络结构 273
10.4.2 LVQ神经网络算法 274
10.5 竞争型神经网络工具箱函数 274
10.6 竞争型神经网络的应用 286
10.7 本章小结 294
第11章 神经网络的Simulink应用 295
11.1 基于Simulink的神经网络模块 295
11.1.1 神经网络模块 295
11.1.2 模块的生成 302
11.2 基于Simulink的神经网络控制系统 306
11.2.1 神经网络模型预测控制 307
11.2.2 反馈线性化控制 310
11.2.3 模型参考控制 313
11.3 本章小结 315
第12章 神经网络GUI 316
12.1 GUI简介 316
12.1.1 GUI设计工具 316
12.1.2 启动GUIDE 318
12.1.3 添加控件组件 319
12.1.4 设置控件组件的属性 322
12.1.5 编写相应的程序代码 326
12.1.6 GUIDE创建GUI的注意事项 331
12.1.7 定制标准菜单 333
12.2 神经网络GUI 334
12.2.1 常规神经网络GUI 334
12.2.2 神经网络拟合GUI 339
12.2.3 神经网络模式识别GUI 346
12.2.4 神经网络聚类GUI 351
12.3 GUI数据操作 358
12.3.1 从Workspace导入数据到GUI 358
12.3.2 从GUI中导出数据到Workspace 360
12.3.3 数据的存储和读取 363
12.3.4 数据的删除 365
12.4 本章小结 365
第13章 自定义神经网络及函数 366
13.1 自定义神经网络 366
13.1.1 网络的创建 367
13.1.2 网络的初始化、训练和仿真 382
13.2 自定义函数 386
13.2.1 初始化函数 386
13.2.2 学习函数 387
13.2.3 仿真函数 389
13.3 本章小结 390
第14章 随机神经网络 391
14.1 随机神经网络的基本思想 391
14.2 模拟退火算法 392
14.2.1 模拟退火算法的原理 393
14.2.2 模拟退火算法用于组合优化问题 394
14.2.3 退火算法的参数控制 395
14.3 Boltzmann机 396
14.3.1 Boltzmann机的网络结构 396
14.3.2 Boltzmann机的工作原理 398
14.3.3 Boltzmann机的运行步骤 399
14.3.4 Boltzmann机的学习规则 400
14.3.5 Boltzmann机的改进 401
14.4 随机神经网络的应用 404
14.5 本章小结 407
第15章 神经网络基础运用 408
15.1 感知器神经网络的应用 408
15.2 线性神经网络的应用 409
15.3 BP神经网络的应用 411
15.4 RBF神经网络的应用 413
15.5 本章小结 415
第16章 神经网络综合运用 416
16.1 BP神经网络的应用 416
16.1.1 数据拟合 416
16.1.2 数据预测 423
16.1.3 函数逼近 429
16.2 PID神经网络控制 433
16.3 遗传算法优化神经网络 441
16.4 模糊神经网络控制 447
16.5 概率神经网络分类预测 456
16.6 本章小结 460
附录 461
参考文献 463