当前位置:首页 >> 工学 >>

神经网络-(2)Matlab与神经网络工具箱


Matlab与神经网络工具箱

2.1 Matlab简介
Matlab的首创者Cleve Moler博士在数值分析,特 别是在是指线性代数的领域中很有影响。
Matlab(Matrix Laboratory,即矩阵实验室) Matlab于1984年推出了正式版本。后来Moler组建 了一个名为MathWorks的软件开发公司 (http://www.Mathworks.com)专门扩展并改 进Matlab。 1998年推出5.3版。2000年11月6日推出最新版本 Matlab 6.0。

Matlab 6.0有30个工具箱包,包括 控制系统工具箱(Control System Toolbox) 信号处理工具箱(Signal Processing toolbox) 系统辨识工具箱(System Identification toolbox) 鲁棒控制工具箱(Robust Control toolbox) μ 分析于综合工具箱(μ -analysis and synthesis toolbox) 定量反馈理论工具箱(QFT toolbox) 神经网络工具箱(Neural Network toolbox) 最优化工具箱(Optimisation toolbox) 数据库工具箱(Database toolbox) 网络工具箱(Matlab WebServer)等。

严格的说,Matlab并不是一种计算机语言,因为 用它编写出来的程序并不能脱离Matlab环境而 执行,但从功能上说,Matlab已经完全具备了 计算机语言的结构和性能,因此我们也习惯的 称之为Matlab语言。 Matlab 5.3以上版本提供了C/C++的接口,通过另 外一个工具MatCom,能用Visual C++调用 Matlab编写的程序,从而大大减少C++程序的 编写难度。此工具我已经用过,效果不错。

2. 2 Matlab的基本操作
2.2.1 Matlab的安装 关键是选择合适的工具箱和相应的帮助文件。
2.2.2帮助文件(helpdesk) 两种:(1)pdf格式 (2)html格式 2.2.3演示(demo)

2.2.4退出:exit 或quit命令

2.3 Matlab的基本语句结构
2.3.1 基本的赋值语句 变量名列表=表达式 如:A=[1,2,3;4,5,6;7,8,0] ? 等号右边的表达式可以用分号结束,也可以用 逗号或换行号结束。 ? Matlab区分大小写,Abc,ABC,abc表示不同 的矩阵名。 ? 在矩阵A中,同一行中的内容用逗号分隔,而 采用分号来表示换行。 ? 一般情况下,用于同行中分隔的逗号是可以由 空格来代替的。

2.3.2 Matlab的保留字符串
? 判断0元素用的误差限eps,其默认值为

eps=2.2204×10-16 ? pi表示圆周率 ? Inf表示无穷大。Matlab允许的最大数据为 1.797693×10308;一个数据大于此数则认为是 Inf。1/0产生Inf。 即使在Matlab中保留了若干字符串,它们还可以 重新进行赋值。如果用户想将判0的误差限扩 大10倍,则可以采用eps=10×eps命令来进行修 正。

2.4 矩阵的基本运算
矩阵A有n行m列,称A矩阵为n×m矩阵。 2.4.1 矩阵加减法运算: C=A+B 和C=A-B。
2.4.2 矩阵的转置:AT 在Matlab下,矩阵A的转置(包括复矩阵的转 置)均可以简单地由A’求出。 2.4.3 矩阵乘法 C=A×B 在这里并不需要指定A、B的维数。

2.4.4 矩阵的点乘 两个矩阵对应元素之间的乘积。 C=A.×B 2.4.5 矩阵的除法 Matlab定义了矩阵的除法运算,其意义相当于矩 阵的求逆运算。 如:Ax=B, x=inv(A)×B,也可简单地写成 x=A/B。

2.4.6 单个矩阵元素的赋值与运算
Matlab允许用户对一个矩阵地单个元素进行赋值 和操作。 Matlab还允许对子矩阵进行定义和处理。 A(:,j)表示A矩阵的第j列元素; A(i,:)表示A矩阵的第i行全部元素。 A(:,1)=[1,4,7] A(2,:)=[4,5,6]

2.5 Matlab的控制语句
2.5.1 Matlab的循环语句结构
for语句和while语句 ? for语句的基本格式 for 循环变量i=表达式S1:表达式S3:表达式S2 循环语句组 end 在C语言中,循环体的内容是以大括号{}括起来的,而在 Matlab语言中,循环体的内容是以循环语句和end语句 括起来的,所以在使用Matlab时应注意这一点。

求取S1的值=>i

求取S2的值

i在S1、S2之间

否 是 循环体语句

结 束 循 环

i+S3=>i

for循环体的程序框图

? while语句的结构

while (条件式) 循环语句组 end

条件式成立?



循 环 结 束

是 执行循环体内容

while语句的框图

2.5.2 Matlab的条件转移语句结构 ? 基本格式: if(条件式) 条件块语句组 end

条件式成立?

是 执行循环体内容

结构框图

? 绝对转移

由于Matlab没有提供绝对转移的指令,所以这样的功能可 通过if和while的组合来完成。见例3。

? 复杂的条件结构

if(条件式) 条件块语句组1 else 条件语句组2 end



条件



语句1

语句2

if(条件式1) 条件块语句组1 elseif (条件式2) 条件块语句组2 ……… end

条件1 条件2 是 条件n 是 语句1 语句2 语句n 语句n+1

2.6 Matlab的编程基础
2.6.1 Matlab允许的文件类型 ? Matlab编写的程序分为M函数和M文件,其后 缀名均为.m。 ? Matlab允许用户调用可执行文件.exe。其调用 方式是在>>下键入“!”,再接可执行文件的 文件名。 ? Matlab通过Mex功能可以实现对C或Fortran语言 编写的程序的调用。

2.6.2 Matlab变量的管理
Size(A)得到A的维数,包括行数和列数,此时A是矩阵; Length(A) Who 得到A的长度,此时A是向量;

查看当前工作空间有哪些变量名;

Whos 了解这些变量的具体细节,包括名称(name),大小(size), 元素数(element),字节数(bytes)等 Clear 删除变量;

Save 文件名 变量列表 其它选项 :将工作空间的变量保存到文件中。 -assii:ASCII码格式
Load 文件名:将save命令存储起来的数据再从文件调入工作空间。

2.7 Matlab的绘图功能
2.7.1 建立和控制图形窗口
figure clf close 建立新的图形窗口 清除当前图形 关闭图形

2.7.2 基本X-Y图形 plot 线性图形 title 图形标题 xlabel X轴标记 ylable Y轴标记 text 文本注释 grid 网格线 hold 保持当前图形 subplot 在一个图形窗口画多个坐标图。 例:subplot(2,3,2);plot(X)表示在2行3 列的大图形中的第2号图中画X的形状。

2.8神经网络工具箱常用函数列表
2.8.1重要的感知器神经网络函数
初始化: 训练: 仿真: 学习规则: initp trainp simup learnp

2.8.2线性神经网络函数
初始化: 设计: 仿真: 离线训练: 在线自适应训练: 学习规则: initlin solvelin simulin trainwh adaptwh learnwh

2.8.3 BP网络函数
Initff: Simuff: 初始化不超过3层的前向网络; 仿真不超过3层的前向网络;

Trainbp,trainbpx,trainlm: 训练BP(Trainbp:最慢;trainbpx:次之; trainlm:速度最快,但需要更多的存储空间。) Learnbp: 学习规则

2.8.4自组织网络 初始化: 仿真: 训练: initsm simuc trainc:利用竞争规则训练 trainsm:利用Kohonen规则训练

2.8.5反馈网络(Hopfield网络) 仿真: 设计: simuhop solvehop

2.9 Matlab编程举例

作业: 2002年5月8日 分块矩阵求逆法:A= A11 A12 A21 A22 上面的矩阵是一个分块矩阵,这时 B=A-1= B11 B12 B21 B22 其中,B22=(A22-A21A11-1A12)-1, B12=-A11-1A12B22 B21=-B22A21A11-1, B11=A11-1-B12A21A11-1。

根据上述算法,计算: A= 2 1 4 -2 -1 -4 3 0 -1 -3 0 1 2 3 4 -2 -3 -4 4 2 8 6 3 12 6 0 -2 9 0 -3 4 6 8 6 9 12 的逆矩阵。(分块维数n1取3) 【允许用inv()求A11-1】


相关文章:
神经网络-(2)Matlab与神经网络工具箱_图文.ppt
神经网络-(2)Matlab与神经网络工具箱_电子/电路_工程科技_专业资料。神
神经网络-(2)Matlab与神经网络工具箱_图文.ppt
神经网络-(2)Matlab与神经网络工具箱 - Matlab与神经网络工具箱
人工神经网络-第1B章 Matlab与神经网络工具箱_图文.ppt
人工神经网络-第1B章 Matlab与神经网络工具箱_工学...第一章B Matlab神经网络工具箱 何东健 2.1 Matlab...
Matlab的神经网络工具箱实用指南(2).pdf
Matlab神经网络工具箱实用指南(2) - 多层神经元网络 一个网络可以有几
第2章MATLAB神经网络工具箱函数_图文.ppt
MATLAB神经网络工具箱函数 2.2 MATLAB神经网络工具箱的图形用户界面 1 利用神经网络能解决许多用传统方法无法...
神经网络与MATLAB神经网络工具箱-liu_图文.ppt
神经网络MATLAB神经网络工具箱-liu - PPT类容分三大块,介绍的是神经网络与BP神经网络以及在实际生活中的应用实例和在MATLAT工具箱中的编程实现(这个介绍较简略)...
Matlab神经网络工具箱学习之一.doc
Matlab神经网络工具箱学习之一_学习总结_总结/汇报_实用文档。MATLAB 神经网络工具箱学习之一 1、神经网络设计的流程 2神经网络设计四个层次 3、神经网络模型 4...
MATLAB神经网络工具箱中的神经网络模型_图文.ppt
MATLAB神经网络工具箱中的神经网络模型_理学_高等教育...[ w , w1
Matlab的神经网络工具箱实用指南.pdf
这本书介绍了神经网络的理论和它们的设计和应用,并给出了相当可观的 MATLAB 和 神经网络工具箱的使用。 2.准备工作 基本章节 第一章是神经网络的基本介绍,第二...
不错的Matlab神经网络工具箱实用指南.pdf
不错的Matlab神经网络工具箱实用指南 - Matlab神经网络工具箱实用指南 文章摘要:第一章是神经网络的基本介绍,第二章包括了由工具箱指定的有关网络结 构和符号...
Matlab神经网络工具箱(经典教程).pdf
这本书介绍了神经网络的理论和它们的设计和应用, 并给出了相当可观的MATLAB和神经 网络工具箱的使用。 2.准备工作 基本章节 第一章是神经网络的基本介绍, 第二...
第02讲 Matlab与神经网络工具箱.ppt
第02讲 02讲 Matlab与神经网络工具箱神经网络工具箱电信系 邹江 2
Matlab与神经网络工具箱(经典资料-免费分享)_图文.ppt
Matlab与神经网络工具箱(经典资料-免费分享)_广告/传媒_人文社科_专业资料。具体介绍Matlab与神经网络工具箱 Matlab与神经网络工具箱 2.1 Matlab简介 Matlab的首创者...
Matlab神经网络工具箱_图文.ppt
MATLAB神经网络工具箱 人工神经网络的特点自学习自适应 并行处理 分布表达与计算 人工神经网络的应用 ? ANN...
人工神经网络-第1B章Matlab与神经网络工具箱资料_图文.ppt
人工神经网络-第1B章Matlab与神经网络工具箱资料 - 第一章B Matlab神经网络工具箱 何东健 2.1 Matlab简介 Matlab的首创者Cleve Moler博士在数值分析...
第5章_人工神经网络_matlab工具箱_图文.ppt
模式识别讲义第5章 人工神经网络 matlab神经网络工具箱 黄可坤嘉应学院 主要内容 ?0 引例:神经网络函数拟合(预测) ?1 matlab神经网络工具箱 ?2 人工神经网络...
MATLAB神经网络工具箱_图文.pdf
MATLAB神经网络工 具箱中的神经网络 模型 神经网络工具箱简介 MATLAB 7对应的...2 R 、权值矩阵 w = [ w1,1 , w1, 2 , Λ,, w1, R ] 与阈值的...
基于MATLAB神经网络工具箱的线性神经网络实现_温浩.pdf
下面给出线性神经网络的结构及模型: 图 1 给出了单个神经元模型 (Adaline) ,图 2 为线 26 基于 MATLAB 神经网络工具箱的线性神经网络实现 性神经网络结构示意...
Matlab神经网络工具箱BP算法比较_图文.pdf
北京 100084 ) BP 前馈网络, 应用的最为广泛的神经网络, 目前拥有许多算法。研究...2 Matlab 神经网络工具箱中各种 BP 算法函数 1) traingd: 最基本的 BP 算法...
Matlab神经网络工具箱介绍与数值试验.doc
现要求训练这一网络,使其具有解决“异或”问题 的能力。 第四章 Matlab 神经网络工具箱与数值试验 2 “异或”问题的训练输入和期望输出如表 5-1。表 5-1 ...