如何用MATLAB的神经网络工具箱实现三层BP网络
更新时间:2023-09-28 14:34:01 阅读量: 综合文库 文档下载
如何用MATLAB的神经网络工具箱实现三层BP网络?
% 读入训练数据和测试数据 Input = []; Output = []; str = {'Test','Check'}; Data = textread([str{1},'.txt']); % 读训练数据 Input = Data(:,1:end-1);
% 取数据表的前五列(主从成分) Output = Data(:,end);
% 取数据表的最后一列(输出值) Data = textread([str{2},'.txt']); % 读测试数据
CheckIn = Data(:,1:end-1); % 取数据表的前五列(主从成分) CheckOut = Data(:,end);
% 取数据表的最后一列(输出值) Input = Input'; Output = Output'; CheckIn = CheckIn'; CheckOut = CheckOut'; % 矩阵赚置
[Input,minp,maxp,Output,mint,maxt] = premnmx(Input,Output); % 标准化数据
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 神经网络参数设置 %====可以修正处 Para.Goal = 0.0001; % 网络训练目标误差 Para.Epochs = 800; % 网络训练代数 Para.LearnRate = 0.1; % 网络学习速率 %==== Para.Show = 5; % 网络训练显示间隔
Para.InRange = repmat([-1 1],size(Input,1),1); % 网络的输入变量区间
Para.Neurons = [size(Input,1)*2+1 1]; % 网络后两层神经元配置
Para.TransferFcn= {'logsig' 'purelin'}; % 各层的阈值函数 Para.TrainFcn = 'trainlm'; % 网络训练函数赋值
% traingd : 梯度下降后向传播法
% traingda : 自适应学习速率的梯度下降法 % traingdm : 带动量的梯度下降法 % traingdx :
% 带动量,自适应学习速率的梯度下降法 Para.LearnFcn = 'learngdm'; % 网络学习函数 Para.PerformFcn = 'sse'; % 网络的误差函数 Para.InNum = size(Input,1); % 输入量维数
Para.IWNum = Para.InNum*Para.Neurons(1); % 输入权重个数
Para.LWNum = prod(Para.Neurons); % 层权重个数
Para.BiasNum = sum(Para.Neurons); % 偏置个数
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Net = newff(Para.InRange,Para.Neurons,Para.TransferFcn,... Para.TrainFcn,Para.LearnFcn,Para.PerformFcn); % 建立网络
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Net.trainParam.show = Para.Show; % 训练显示间隔赋值
Net.trainParam.goal = Para.Goal; % 训练目标误差赋值
Net.trainParam.lr = Para.LearnRate; % 网络学习速率赋值
Net.trainParam.epochs = Para.Epochs; % 训练代数赋值
Net.trainParam.lr = Para.LearnRate;
Net.performFcn = Para.PerformFcn; % 误差函数赋值
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 调试
Out1 =sim(Net,Input); % 仿真刚建立的网络 Sse1 =sse(Output-Out1); % 刚建立的网络误差
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% [Net TR] = train(Net,Input,Output); % 训练网络并返回
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Out3 =sim(Net,Input); % 对学习训练后的网络仿真
正在阅读:
如何用MATLAB的神经网络工具箱实现三层BP网络09-28
C语言 - 实验六+指针11-04
数字测图实习报告06-22
东华工程科技股份有限公司化工工艺施工图设计指导手册08-29
羟基磷灰石合成方案03-29
中西方古代建筑文化差异05-30
党课结业典礼主持稿01-22
在课改的阳光下浅谈生活中的物理知识10-17
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 神经网络
- 何用
- 工具箱
- 实现
- MATLAB
- 网络
- 生理复习题(带答案)
- 青岛版六年级数学上册《第二单元过关检测卷》(附答案)
- 永乐镇人民政府关于印发2012年食品药品知识“五进”宣传活动实施方案的通知
- 山东陕西商会章程
- 徐州物流业发展现状及思路
- 网格管理员工作例会制度和规定
- 第一学期朗诵兴趣小组活动简案
- 安全题集
- 幼儿园做做玩玩教案
- GEN2--MR产品说明 - 图文
- 甲醇制氢装置操作规程
- ABB变频器培训讲义
- 工程造价工程量计算规则
- 2019年秋季高中英语Unit4WildlifeprotectionPeriod1WarmingUp
- 工程师必须掌握的20个模拟电路
- Unit 4 The American Dream.练习答案doc
- 强化依法治企工作 促进公司健康发展
- 贵州省2016年百万公众网络学习工程学习测试答案
- 保育员定复习题
- 国际航空货物运输实务