BP神经网络算法
研究的具体过程
1. 指标的选择及数据收集
考虑到数据的可得到性和有效性,选取了旅游资源、人力资源、交通、服务质量、环境、费用的相关指标, 详见表1
尼坤关注宋茜
2. 神经网络的确定
MATLAB R2010b 平台上选用Feed- forward backprop 网络类型(即函数newff)训练函数选取了TRAINLM, 阈值学习函数选取了LERRNGDM, 性能函数选取了MSE, 网络层数选择四层个输入层,个隐层和个输出层),第二、三层隐层)选取传递函数为TANSIG 第四层输出层选取传递函数为PURELIN神经元个数为1预测过程中要创建两个网络, 即旅游总收入预测的网络和旅游人次数预测的网络两个网络其他方面完全相同唯一不同的是隐层神经元个数不同隐层神经元个数选取原则为P- 1[5]( P 为期望输入[6]的变量数)本文中期望输入变量个数为6,因此确定隐层神经元个数初值为5,而后来在
实际训练后发现旅游收入预测网络的隐层神经元个数依次为6、5个时最优旅游人次数网络的隐层神经元个数依次为5、5个时最优。
3. 数据的转化与输入
以旅客总量/万人次、旅游总收入/亿元为神经网络的期望输出[6], 以旅游资源、人力资源、交通、服务质量、环境、费用为期望输入[6](见表1)。为让数据更加具备典型性和更优良的泛化能力,故把数据重新打乱顺序进行输入并分类为:训练输入数据、变量数据、测试数据,每类数据的选用是随机的。其中,测试数据用来评价神经网络预测的科学性。表2中的数据浮动范围太大如果直接输入神经网络则网络训练时间太长则需要将数据进行归一化处理后再进行调用,并在最终结果输出时再进行反归一化。将测试数据仿真后的结果数据反归一化,并与实际值的原值进行比较, 求出误差确定神经网络的实际预测效果。在此贴出其中一次的运行结果,详见表3和表4。
蔡紫个人资料
表1 杭州市旅游需求预测的相关指标
影响因素
相关指标构成
旅游资源
A级景区数量/个、
交通
服务质量
旅行社数量/个、星级宾馆数量/个
环境
费用
人力资源
导游数量/人
旅游需求总量
旅客总量/万人次、旅游总收入/亿元
2 年各变量数据
指标
2001
2002
2003
2004
2005
2006
2007
2008
2009
122
115
135
135
139
145
149
149
176
2238
2775
3176
3847
4186
4514
4696
5903
6271
395
413
449
520
569
628
640
683
716
69
24
44
33
41
41
41
44
42
782
801
860
951
981
950
970
996
1023
3140
3376
4579
6368
7812
9246
9814
11071
12685
2592.04
2758.02
2862.11
3139.51
3417.25
3875.02
4320.5
4773.03
5324.34
242.49
288.19
320.44
402.99
456.66
534.83
626.93
707.92
805.5
表3 训练数据的预测值和实际值对比
指标
2001
2002
2003
2004
2005
2006
2007
2008
2592.04
2758.02
2862.11
3139.51
小学生庆国庆手抄报3417.25
3875.02
4320.50
4773.03
2592.04
2758.02
2862.11
3139.51
3417.25
3875.02
4320.50
4773.03
误差%
0
0
新破天一剑加点0
0
0
0
0
0
242.4900
288.1900
刘九儒320.4400
402.9900
456.6600
534.8300
626.9300
707.9200
244.6745
288.7014
316.6160
399.5628
462.7006
549.6985
610.4722
706.6331
误差%
0.90%
0.18%
-1.19%
-0.85%
1.32%
2.78%
-2.63%
-0.18%
表4 旅游需求总量仿真值( 预测值) 与实际值的对比
指标
误差%
周东雨
误差%
2009
5324.3400
5324.3400
0
805.5000
806.7468
0.15%