新版Matlab中神经网络训练函数Newff的详细讲解-新版Matlab中神经网络训练函数Newff的使用方法.doc

新版Matlab中神经网络训练函数Newff的详细讲解-新版Matlab中神经网络训练函数Newff的使用方法.doc 本帖最后由 小小2008鸟 于 2013-1-15 21:42 编辑 新版Matlab中神经网络训练函数Newff的详细讲解 一、 介绍新版newffSyntax· net = newff],{TF1 TF2...TFNl}, BTF,BLF,PF,IPF,OPF,DDF) Descriptionnewff],{TF1 TF2...TFNl}, BTF,BLF,PF,IPF,OPF,DDF) takes several arguments PR x Q1 matrix of Q1 sample R-element input vectorsTSN x Q2 matrix of Q2 sample SN-element target vectorsSiSize of ith layer, for N-1 layers, default = [ ]. TFiTransfer function of ith layer. (Default = 'tansig' for hidden layers and 'purelin' for output layer.)BTFBackpropagation network training function BLFBackpropagation weight/bias learning function IPFRow cell array of input processing functions. OPFRow cell array of output processing functions. DDFData divison function ExamplesHere is a problem consisting of inputs P and targets T to be solved with a network.· P = [0 1 2 3 4 5 6 7 8 9 10];T = [0 1 2 3 4 3 2 1 2 3 4];Here a network is created with one hidden layer of five neurons.· net = newff;The network is simulated and its output plotted against the targets.· Y = sim;plotThe network is trained for 50 epochs. Again the network's output is plotted.· net.trainParam.epochs = 50;net = train;Y = sim; plot 二、 新版newff与旧版newff调用语法对比 Example1比如输入input(6*1000),输出output为(4*1000),那么旧版定义:net=newff,[14,4],{'tansig','purelin'},'trainlm');新版定义:net=newff; Example2比如输入input(6*1000),输出output为(4*1000),那么旧版定义:net=newff,[49,10,4],{'tansig','tansig','tansig'},'traingdx');新版定义:net=newff; 更详细请看word文档 新版Matlab中神经网络训练函数Newff的使用方法.doc 在新版的Matlab中,神经网络训练函数`newff`是一个强大的工具,用于构建和训练前馈神经网络。本文将详细介绍`newff`的使用方法,包括其语法、参数以及与旧版的区别。 一、`newff`函数的介绍与语法 `newff`函数的基本语法如下: ```matlab net = newff(P, T, [S1 S2... S(N-l)], {TF1 TF2... TFNl}, BTF, BLF, PF, IPF, OPF, DDF) ``` - `P`: PR x Q1维矩阵,包含Q1个R元素的输入向量。 - `T`: TSN x Q2维矩阵,包含Q2个SN元素的目标向量。 - `[S1 S2... S(N-l)]`: 层的大小,用于N-1层,默认值为[]。输出层大小SN由目标向量T决定。 - `{TF1 TF2... TFNl}`: 各层的转换函数,默认隐藏层为`tansig`,输出层为`purelin`。 - `BTF`: 反向传播网络训练函数,默认为`trainlm`。 - `BLF`: 反向传播权重/偏置学习函数,默认为`learngdm`。 - `PF`: 输入处理函数的行cell数组,默认为`{'fixunknowns','removeconstantrows','mapminmax'}`。 - `IPF`: 输出处理函数的行cell数组,默认为`{'removeconstantrows','mapminmax'}`。 - `DDF`: 数据分割函数,默认为`dividerand`。 例如,创建一个包含一个隐藏层(五个人工神经元)的网络,输入P和目标T的数据,可以这样调用: ```matlab P = [0 1 2 3 4 5 6 7 8 9 10]; T = [0 1 2 3 4 3 2 1 2 3 4]; net = newff(P, T, 5); ``` 然后,可以模拟网络并将其输出与目标进行比较: ```matlab Y = sim(net, P); plot(P, T, P, Y, 'o'); ``` 训练网络50个周期,并再次绘制输出: ```matlab net.trainParam.epochs = 50; net = train(net, P, T); Y = sim(net, P); plot(P, T, P, Y, 'o'); ``` 二、新版`newff`与旧版`newff`的调用语法对比 新版`newff`的调用方式更加直观,不再需要对输入数据进行预处理,如`minmax`。以下是两个示例: - 旧版定义: ```matlab net = newff(minmax(input), [14,4], {'tansig','purelin'}, 'trainlm'); ``` 新版定义: ```matlab net = newff(input, output, 14, {'tansig','purelin'}, 'trainlm'); ``` - 旧版定义: ```matlab net = newff(minmax(input), [49,14,4], {'tansig','tansig','tansig'}, 'traingdx'); ``` 新版定义: ```matlab net = newff(input, output, [49,14], {'tansig','tansig','tansig'}, 'traingdx'); ``` 三、旧版`newff`在新版中的使用 虽然旧版的`newff`在新版Matlab中仍可运行,但会发出警告,提示使用方式已过时。为了避免这种警告,建议按照新版的调用方式进行重构。旧版的`minmax`预处理在新版中通常不再需要,因为`newff`现在能直接处理原始数据。 总结,新版的`newff`函数在Matlab中提供了更加灵活和直观的神经网络训练方式,简化了网络结构的定义,并且可以直接处理未经预处理的输入数据。在使用时,可以根据具体问题选择合适的网络结构、训练函数以及转换函数,通过模拟和训练过程优化网络性能。同时,要注意适应新版的调用语法,避免出现警告信息。































剩余6页未读,继续阅读

- m0_463496142020-05-20网上一搜就有的讲解,还要浪费积分下载,太过分了,浪费了我最后一个下载机会,生气

- 粉丝: 411
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于 Python 与 Django 框架,集成 face-recognition、keras、tensorflow 及 opencv 等库的后端项目
- 计算机网络安全与防范喻骏.doc
- 软件开发质量管理层次模型(下).docx
- 《基因工程的基本操作程序》.ppt
- 文科院校大学计算机基础教学改革与实践.docx
- 四层楼电梯的PLC控制设计.doc
- 软考嵌入式系统设计师基础知识复习笔记讲解资料.doc
- 油气田物联网设备在线管理系统研究.doc
- 基于 IMDB 数据集利用 LSTM 和预训练词典向量进行电影评论情感分类分析
- 企业云计算平台虚拟化软件选型方案.doc
- 如何将Photoshop模糊过的图片清晰还原.doc
- c语言课程学生成绩管理.doc
- 《C语言程序设计与数据结构》课件第08章.ppt
- 单片机配电房温湿度测控系统设计方案.doc
- 电子商务对物联网技术的运用.docx
- 基于网络环境的小学信息技术微课教学探究-(3).doc


