matlab神经网络工具箱简介和函数及示例-PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
调用其它训练函数,对网络进行训练
trainh
adapt 学习函数 初始化函数 learn int intlay
对权值和阈值进行训练
自适应函数 网络权值和阈值的学习 对网络进行初始化 对多层网络初始化
函数类型
函数名 称
函数用途
输入函数
netsum
netprcd
输入求和函数
输入求积函数
concur
其它 dotprod
④ 训练模式的确定
包括选择合理的测试样本,对网络进行测 试、或者将网络应用于实际问题,检验网络性 能。
⑤ 网络测试 选择合理的测试样本,对网络进行测试, 或者将网络应用于实际问题,检验网络性能。
MATLAB的神经网络工具箱函
函数类型
数
通用函数
函数名 称 函数用途
仿真函数
训练函数
SIM
train
针对给定的输入,得到网络输出
2. 网络的设计 网络的输入层和输出层的神经元个数均为1,网 络的隐含神经元个数应该在3~8之间。 网络设计及运行的代码:
s=3:8; res=1:6; for i=1:6; net=newff(minmax(P),[s(i) 1],{‘tansig‘ ‘logsig’},'traingdx'); net.trainParam.epochs=2000; net.trainParam.goal=0.001; net=train(net,P,T) y=sim(net,P) error=y-T; res(i)=norm(error); end
存资源。如果计算机内存不够大,不建议用trainlm,而建议
采用训练函数trainbfg或trainrp。虽然这两个函数的运行速度 比较慢,但它们的共同特点是内存占用量小,不至于出现训 练过程死机的情况。
例子1: help newff
例子2:设计一个隐含层神经元数目神经元个数
以一个单隐层的BP网络设计为例,介绍利用神经 网络工具箱进行BP网络设计及分析的过程 1. 问题描述 通过对函数进行采样得到了网络的输入变 量P和目标变量T:
P=[-1:0.1:1]; T=[-0.9602 -0.577 -0.0729 0.3771 0.6405 0.6600 0.4609 0.1336 -0.2019 -0.4344 -0.5000 -0.3930 -0.1647 0.0988 0.3072 0.3960 0.3449 0.1816 -0.0312 -0.2189 -0.3201];
目前,神经网络工具箱中提供的神经网络模型主 要应用于: 函数逼近和模型拟合 信息处理和预测 神经网络控制 故障诊断
神经网络实现的具体操作过程:
① ② ③ ④ ⑤ 确定信息表达方式; 网络模型的确定; 网络参数的选择; 训练模式的确定; 网络测试
① 确定信息表达方式:
将领域问题抽象为适合于网络求解所能接受的 某种数据形式。 问题形式的种类: 数据样本已知; 数据样本之间相互关系不明确; 输入/输出模式为连续的或者离散的; 输入数据按照模式进行分类,模式可能会 具有平移、旋转或者伸缩等变化形式; 数据样本的预处理; 将数据样本分为训练样本和测试样本
说明:
参数TFi可以采用任意的可微传递函数,比如transig,
训练函数可以是任意的BP训练函数,如trainm,trainbfg,
logsig和purelin等;
trainrp和traingd等。BTF默认采用trainlm是因为函数的速度 很快,但该函数的一个重要缺陷是运行过程会消耗大量的内
② 网络模型的确定
主要是根据问题的实际情况,选择模型的类 型、结构等。另外,还可以在典型网络模型的基 础上,结合问题的具体情况,对原网络进行变形、 扩充等,同时还可以采用多种网络模型的组合形 式。
③ 网络参数的选择
确定网络的输入输出神经元的数目,如果是 多层网络,还需要进一步确定隐含层神经元的个 数。
神经网络工具箱函数
神经网络函数 权值函数 网络的输入函数 传递函数 初始化函数 性能函数 学习函数 自适应函数 训练函数
神经网络函数newff
功能: Create a feed-forward backpropagation network 格式: net = newff(PR,[S1 S2...SNl],{TF1...TFNlБайду номын сангаас,BTF,BLF,PF)
使权值向量和阈值向量的结构一致
权值求积函数
BP网络的神经网络工具箱函数
函数类型 前向网络创建 函数 函数名称 函数用途
传递函数
学习函数
函数类型
函数名 称
函数用途
性能函数 显示函数
一、BP网络创建函数
1)newcf 用于创建级联前向BP网络
调用格式: net=newcf net=newcf(PR,[S1 S2...SN],[TF1 TF2...TFN],BTF,BLF,PF]) PR:由每组输入(共有R组输入)元素的最大值和最小值 组成的R*2维的矩阵 Si:第i层的长度,共计N层; TFi:第i层的传递函数,默认为“tansig” BTF:BP网络的训练函数,默认为“trainlm” BLF:权值和阈值的BP学习算法,默认为learngdm PF:网络的性能函数,默认为“mse”
人 工 智 能
光电学院
常敏
E-mail:changminusst.edu
changminyahoo
第十一章 神经网络工具 箱函数
MATLAB的神经网络工具箱简
介
构造典型神经网络的激活函数,使设计者对所选 网络输出的计算变成对激活函数的调用。 根据各种典型的修正网络权值的规则,再加上网 络的训练过程,利用matlab编写各种网络设计和训练 的子程序。 设计人员可以根据自己的需要去调用工具箱中有 关的设计和训练程序,将自己从繁琐的编程中解脱出 来,提高工作效率。
代码运行结果: 网络训练误差
结论:隐含层节点设为8
BP网络训练步骤
步骤1: 初始化 步骤2:计算网络各层输出矢量 步骤3:计算网络各层反向传播的误差变化,并计算各 层权值的修正值及修正值 步骤4:再次计算权值修正后的误差 平方和 步骤5:检查误差 平方和是否小于 误差期望值,若是, 停止训练,否则继续.
trainh
adapt 学习函数 初始化函数 learn int intlay
对权值和阈值进行训练
自适应函数 网络权值和阈值的学习 对网络进行初始化 对多层网络初始化
函数类型
函数名 称
函数用途
输入函数
netsum
netprcd
输入求和函数
输入求积函数
concur
其它 dotprod
④ 训练模式的确定
包括选择合理的测试样本,对网络进行测 试、或者将网络应用于实际问题,检验网络性 能。
⑤ 网络测试 选择合理的测试样本,对网络进行测试, 或者将网络应用于实际问题,检验网络性能。
MATLAB的神经网络工具箱函
函数类型
数
通用函数
函数名 称 函数用途
仿真函数
训练函数
SIM
train
针对给定的输入,得到网络输出
2. 网络的设计 网络的输入层和输出层的神经元个数均为1,网 络的隐含神经元个数应该在3~8之间。 网络设计及运行的代码:
s=3:8; res=1:6; for i=1:6; net=newff(minmax(P),[s(i) 1],{‘tansig‘ ‘logsig’},'traingdx'); net.trainParam.epochs=2000; net.trainParam.goal=0.001; net=train(net,P,T) y=sim(net,P) error=y-T; res(i)=norm(error); end
存资源。如果计算机内存不够大,不建议用trainlm,而建议
采用训练函数trainbfg或trainrp。虽然这两个函数的运行速度 比较慢,但它们的共同特点是内存占用量小,不至于出现训 练过程死机的情况。
例子1: help newff
例子2:设计一个隐含层神经元数目神经元个数
以一个单隐层的BP网络设计为例,介绍利用神经 网络工具箱进行BP网络设计及分析的过程 1. 问题描述 通过对函数进行采样得到了网络的输入变 量P和目标变量T:
P=[-1:0.1:1]; T=[-0.9602 -0.577 -0.0729 0.3771 0.6405 0.6600 0.4609 0.1336 -0.2019 -0.4344 -0.5000 -0.3930 -0.1647 0.0988 0.3072 0.3960 0.3449 0.1816 -0.0312 -0.2189 -0.3201];
目前,神经网络工具箱中提供的神经网络模型主 要应用于: 函数逼近和模型拟合 信息处理和预测 神经网络控制 故障诊断
神经网络实现的具体操作过程:
① ② ③ ④ ⑤ 确定信息表达方式; 网络模型的确定; 网络参数的选择; 训练模式的确定; 网络测试
① 确定信息表达方式:
将领域问题抽象为适合于网络求解所能接受的 某种数据形式。 问题形式的种类: 数据样本已知; 数据样本之间相互关系不明确; 输入/输出模式为连续的或者离散的; 输入数据按照模式进行分类,模式可能会 具有平移、旋转或者伸缩等变化形式; 数据样本的预处理; 将数据样本分为训练样本和测试样本
说明:
参数TFi可以采用任意的可微传递函数,比如transig,
训练函数可以是任意的BP训练函数,如trainm,trainbfg,
logsig和purelin等;
trainrp和traingd等。BTF默认采用trainlm是因为函数的速度 很快,但该函数的一个重要缺陷是运行过程会消耗大量的内
② 网络模型的确定
主要是根据问题的实际情况,选择模型的类 型、结构等。另外,还可以在典型网络模型的基 础上,结合问题的具体情况,对原网络进行变形、 扩充等,同时还可以采用多种网络模型的组合形 式。
③ 网络参数的选择
确定网络的输入输出神经元的数目,如果是 多层网络,还需要进一步确定隐含层神经元的个 数。
神经网络工具箱函数
神经网络函数 权值函数 网络的输入函数 传递函数 初始化函数 性能函数 学习函数 自适应函数 训练函数
神经网络函数newff
功能: Create a feed-forward backpropagation network 格式: net = newff(PR,[S1 S2...SNl],{TF1...TFNlБайду номын сангаас,BTF,BLF,PF)
使权值向量和阈值向量的结构一致
权值求积函数
BP网络的神经网络工具箱函数
函数类型 前向网络创建 函数 函数名称 函数用途
传递函数
学习函数
函数类型
函数名 称
函数用途
性能函数 显示函数
一、BP网络创建函数
1)newcf 用于创建级联前向BP网络
调用格式: net=newcf net=newcf(PR,[S1 S2...SN],[TF1 TF2...TFN],BTF,BLF,PF]) PR:由每组输入(共有R组输入)元素的最大值和最小值 组成的R*2维的矩阵 Si:第i层的长度,共计N层; TFi:第i层的传递函数,默认为“tansig” BTF:BP网络的训练函数,默认为“trainlm” BLF:权值和阈值的BP学习算法,默认为learngdm PF:网络的性能函数,默认为“mse”
人 工 智 能
光电学院
常敏
E-mail:changminusst.edu
changminyahoo
第十一章 神经网络工具 箱函数
MATLAB的神经网络工具箱简
介
构造典型神经网络的激活函数,使设计者对所选 网络输出的计算变成对激活函数的调用。 根据各种典型的修正网络权值的规则,再加上网 络的训练过程,利用matlab编写各种网络设计和训练 的子程序。 设计人员可以根据自己的需要去调用工具箱中有 关的设计和训练程序,将自己从繁琐的编程中解脱出 来,提高工作效率。
代码运行结果: 网络训练误差
结论:隐含层节点设为8
BP网络训练步骤
步骤1: 初始化 步骤2:计算网络各层输出矢量 步骤3:计算网络各层反向传播的误差变化,并计算各 层权值的修正值及修正值 步骤4:再次计算权值修正后的误差 平方和 步骤5:检查误差 平方和是否小于 误差期望值,若是, 停止训练,否则继续.