神经网络 – BP神经网络与RBF神经网络模型解决实际问题 – (Matlab建模)

神经网络 – BP神经网络与RBF神经网络模型解决实际问题 – (Matlab建模)目录神经网络模型简述实例:交通运输能力预测设计MATLAB程序及仿真结果由于货物运输、地方经济及企业发展的紧密联系,因此作为反映货物运输需求的一项重要指标,货运量预测研究和分析具有较强的实际意义。常用的货运量预测方法包括时间序列方法、移动平滑法、指数平滑和随机时间序列方法、相关(回归)分析法、灰色预测方法和作为多种方法综合的组合预测方法等.这些方法大都集中在对…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

目录

神经网络模型简述

实例:交通运输能力预测设计

MATLAB程序及仿真结果


    由于货物运输、地方经济及企业发展的紧密联系,因此作为反映货物运输需求的一项重要指标, 货运量预测研究和分析具有较强的实际意义。

    常用的货运量预测方法包括时间序列方法、移动平滑法、指数平滑和随机时间序列方法、相关(回归)分析法、灰色预测方法和作为多种方法综合的组合预测方法等.这些方法大都集中在对其因果关系回归模型和时间序列模型的分析上, 所建立的模型不能全面和本质地反映所预测动态数据的内在结构和复杂特性, 从而丢失了信息量.人工神经网络作为一种并行的计算模型, 具有传统建模方法所不具备的很多优点, 有很好的非线性映射能力, 对被建模对象的经验知识要求不多, 一般不必事先知道有关被建模对象的结参数和动作特性等方面的知识, 只需给出对象的输入和输出数据, 通过网络本身的学习功能就可以达到输入与输出的映射关系.货运量预测可以利用BP 网络模型和径向基网络模型来实现。

神经网络模型简述

BP神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,其激励函数是一般是S函数(即sigmoid函数)。从结构上讲,BP网络具有输入层、隐藏层和输出层;从本质上讲,BP算法就是以网络误差平方为目标函数、采用梯度下降法来计算目标函数的最小值。

径向基神经网络(RBF神经网络)是一种性能良好的前向网络,其激励函数是一般是高斯函数。具有最佳逼近、训练简洁、学习收敛速度快以及克服局部最小值问题的性能,目前已经证明RBF网络能够以任意精度逼近任意连续的函数,且具有全局逼近能力,从根本上解决了BP网络的局部最优问题,而且拓扑结构紧凑,结构参数可实现分离学习,收敛速度快。因此它已经被广泛应用于模式识别、非线性控制和图像处理等领域。

神经网络 - BP神经网络与RBF神经网络模型解决实际问题 - (Matlab建模)

实例:交通运输能力预测设计

    输入的神经元可以根据需要求解的问题和数据表示方式确定。根据对关于货运量影响因素的分析,这里分别取国内生产总值GDP 、工业总产值、铁路运输路线长度、复线里程比重、公路运输线路长度、等级公路比重、铁路货车数量和民用载货车辆数量等8 项指标作为货运量的影响因子, 将它们作为网络的输入.以货运总量、铁轮货运量和公路货运量作为网络输出.由此来构建BP 网络和RBF网络。利用某7 年的历史统计数据作为网络的训练样本, 以后续2 年的历史统计数据作为网络的外推测试样本.输入样本如表1 所示, 目标样本如表2 所示.

表 1  输入的样本数据

GDP

工业

总产

铁路

运输

长度

复线

比重

公路

运输

长度

等级

公路

比重

铁路

货运

数量

民用

载货

车辆

58478

135185

5.30

0.23

16.2

0.21

1015.3

586.4

67884

152369

5.30

0.27

18.5

0.26

1107.6

577

74462

182563

6.21

0.25

21.4

0.28

1214.6

601.2

78345

201587

6.32

0.26

25.7

0.29

1336.5

626.8

82067

225689

6.32

0.26

30.2

0.31

1443.5

675.96

89403

240568

6.47

0.28

34.6

0.33

1516.2

726.31

95933

263856

6.48

0.28

39.5

0.36

1642.6

764.25

104790

285697

6.70

0.30

42.0

0.39

1763.1

852.21

116694

308765

6.70

0.30

46.3

0.41

1867.1

878.23

表 2  目标样本

货运量

铁路货运量

公路货运量

102467

52266

46153

124486

60728

56246

148691

69355

67346

162663

79757

78267

186695

91757

95647

205764

99736

98756

226697

109965

102765

245716

120537

111258

263683

130465

120412

    由于输入的每组样本数据包含8 项, 所以神经网络的输入层设置8个神经元。每组输入样本对应的目标样本包含3 项,所以输出层设置3 个神经元。

    

关于隐含层的设计:

    一般来讲, 一个三层的神经网络可以完成任意n 维输入到m 维输出的映射.但实际上, 隐层的层数和单元数的选择尚无理论上的指导, 一般是根据经验或者反复实验确定.因此, 网络往往存在很大的冗余性, 一定程度上增加了网络学习的负担.隐单元数目太多会导致学习时间过长、误差不一定最佳, 也会导致容错性差、不能识别以前没有看到的样本, 因此一定存在一个最佳的隐单元数.文中建立的BP神经网络模型中, 隐层神经元个数介于5-17.通过训练结果中误差的大小最终确定隐层中神经元的个数为14 .而RBF神经网络采用正规化网络模型,隐单元的个数与训练样本的个数相同,即7个.

MATLAB程序及仿真结果

BP网络程序:

p=[58478 135185 5.30 0.23 16.2 0.21 1015.3 586.4;
67884 152369 5.30 0.27 18.5 0.26 1107.6 577;
74462 182563 6.21 0.25 21.4 0.28 1214.6 601.2;
78345 201587 6.32 0.26 25.7 0.29 1336.5 626.8;
82067 225689 6.32 0.26 30.2 0.31 1443.5 675.96;
89403 240568 6.47 0.28 34.6 0.33 1516.2 726.31;
95933 263856 6.48 0.28 39.5 0.36 1642.6 764.25]';
t=[102467 52266 46153;124486 60728 56246;
148691 69355 67346;162663 79757 78267;
186695 91757 95647;205764 99736 98756;
226697 109965 102765]';
t1=clock;#对应于测试样本的目标输出
TF1 = 'tansig';TF2 = 'logsig'; 
net=newff(p,t,[14,3],{TF1 TF2 },'trainlm');
Net.trainParam.show=500;
net.trainParam.epochs=1000;
net.trainParam.goal=0.0001;
net=train(net,p,t);
date=etime(clock,t1)
y=sim(net,p);
p1=[104790 285697 6.70 0.30 42.0 0.39 1763.1 852.21;116694 308765 6.70 0.30 46.3 0.41 1867.1 878.23]';#测试样本
y1=sim(net,p1)#测试样本p1对应的BP网络实际输出

Jetbrains全家桶1年46,售后保障稳定

BP网络程序运行结果:

神经网络 - BP神经网络与RBF神经网络模型解决实际问题 - (Matlab建模)神经网络 - BP神经网络与RBF神经网络模型解决实际问题 - (Matlab建模)

可以看出, 网络在训练18次(Epoch)后就收敛于目标函数.当带入2 组测试样本P1后, 网络的实际输出为:

y1 =1.0e+05 *
    2.2598    2.2802
    1.1027    1.1147
    1.0390    1.0464
耗时:date =0.6080

RBF网络程序:

p=[58478 135185 5.30 0.23 16.2 0.21 1015.3 586.4;
67884 152369 5.30 0.27 18.5 0.26 1107.6 577;
74462 182563 6.21 0.25 21.4 0.28 1214.6 601.2;
78345 201587 6.32 0.26 25.7 0.29 1336.5 626.8;
82067 225689 6.32 0.26 30.2 0.31 1443.5 675.96;
89403 240568 6.47 0.28 34.6 0.33 1516.2 726.31;
95933 263856 6.48 0.28 39.5 0.36 1642.6 764.25]';
t=[102467 52266 46153;
124486 60728 56246;
148691 69355 67346;
162663 79757 78267;
186695 91757 95647;
205764 99736 98756;
226697 109965 102765]';
t2=clock;
net=newrb(p,t);
datet=etime(clock,t2)
p1=[104790 285697 6.70 0.30 42.0 0.39 1763.1 852.21;
116694 308765 6.70 0.30 46.3 0.41 1867.1 878.23]';
y1=sim(net,p1)

RBF网络程序执行结果:

y1 =1.0e+05 *
    2.2670    2.2670
    1.0996    1.0996
    1.0277    1.0277
耗时:date = 0.0780

由于训练样本容量比较小,只有7 组数据, 所以预测精度不是很高.考虑到这些因素, 这里得到的预测结果还是可以接受的。

但从耗时来看,RBF网络的耗时远远小于BP网络,随着样本数据量加大,两者在耗时上的差距会越来越明显。

RBF网络的优点:
①  它具有唯一最佳逼近的特性,且无局部极小问题存在。
②  RBF神经网络具有较强的输入和输出映射功能,并且理论证明在前向网络中RBF网络是完成映射功能的最优网络。
③  网络连接权值与输出呈线性关系。
④  分类能力好。
⑤  学习过程收敛速度快。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/222951.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • sparksql 概述

    sparksql 概述

    2021年11月27日
  • 等价类划分法-案例剖析-设计测试用例「建议收藏」

    等价类划分法-案例剖析-设计测试用例「建议收藏」目录等价类划分法概念有效等价类和无效等价类等价类设计测试用例步骤案例1案例2案例3等价类划分法概念等价类划分法是把所有可能的输入数据,即程序的输入数据集合划分成若干个子集即等价类,然后从每个等价类中选取少量具有代表性的数据作为测试用例。有效等价类和无效等价类有效等价类:只完全满足产品规则说明的输入数据,即有效的、有意义的输入数据的集合。利用有效等价类可以检验程序是否满足规则说明所规定的功能性要求。无效等价类:不满足程序输入要求或者无效的…

    2022年10月10日
  • SPPNet(2015)

    SPPNet(2015)introductionRCNN首次将卷积操作引入检测领域用于提取特征,然而现有的深度卷积网络需要输入固定尺寸的图片,这个需求可能会导致对于任意scale/size的图片的识别精确度下降。【**深度卷积神经网络由卷积层和全连接层组成,卷积层对于任意大小的图片都可以进行卷积运算提取特征,输出任意大小的特征映射,而全连接层由于本身的性质需要输入固定大小的特征尺度,所以固定尺寸的需求来自于FC层,即使对输入图片进行裁剪、扭曲等变换,调整到统一的size,也会导致原图有不同程度失真、识别精度受到影响**】SP.

  • 界面库分享_wpf界面库

    界面库分享_wpf界面库在网上收集了一份免费的界面库,测试效果如下库中文件包括:.LIB文件.DLL文件.h文件使用方法:1.利用MFC向导创建一个对话框窗口(或视图窗口等)2.在stdafx.h中添加#include”../skinH/SkinH.h”#pragmacomment(lib,”../skinLib/SkinH.lib

  • 视频文件无效怎么修复_google chrome怎么设置兼容模式

    视频文件无效怎么修复_google chrome怎么设置兼容模式发现问题以Ubuntu系统为例,我们通过genpac生成autoproxy.pac文件,然后点击系统设置->网络->代理设置->自动,在输入框中输入file://绝对路径/autoproxy.pac。设置好以后,Chrome应当可以自动切换网络,但是Chrome无法访问google的搜索引擎,而火狐浏览器可以正常访问。分析问题出现上面问题的唯一可能就是Chrome设置有误,…

    2022年10月18日
  • nginx多域名配置

    nginx多域名配置

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号