《1 引言》
1 引言
在预测实践中, 对于同一预测问题可以采用多种预测方法, 不同的预测方法往往能提供不同的有用信息。如果简单地将预测误差平方和较大的一些方法舍弃, 会丢失一些有用的信息。科学的作法是把不同的预测方法进行适当的组合, 形成组合预测方法。组合预测可以综合利用各单项预测方法提供的信息, 集成不同信息来源的预测结果, 从而有效地提高预测精度。近年来, 组合预测研究一直是国内外预测学界探讨的热点问题。根据集结各单项预测模型的方式, 组合预测可分为线性组合预测和非线性组合预测。线性组合预测相对比较简单, 研究成果较多, 最为人们常用
《2 基于BP-AGA的非线性组合预测方法》
2 基于BP-AGA的非线性组合预测方法
假设有n种方法可用于同一预测问题, 实际统计数据有N期, Yk为第k期统计观测值, Yik为第i种方法第k期的拟合预测值, Fk为基于BP-AGA的非线性组合预测方法的拟合预测值, ek=Yk-Fk为组合预测方法的预测误差, (i=1, 2, …, n;k=1, 2, …, N) ,
人工神经网络 (ANN, artificial neural network) 是基于模仿人类大脑的结构和功能而构成的一种计算机信息处理系统, 它具有记忆、联想、自适应、自组织、容错性、鲁棒性等一系列优点。已经证明
BP算法是一种负梯度优化算法, 虽然简单、直观、易于编制程序在计算机上实现, 但学习速度慢、存在局部最小问题, 影响网络的外推能力。在BP算法训练网络出现收敛速度缓慢时启用加速遗传算法 (AGA) 来优化网络参数, 把AGA的优化结果作为BP算法的初始值再用BP算法训练网络, 如此交替运行BP算法和AGA以加快网络的收敛速度, 同时改善局部最小问题, 基于BP-AGA的非线性组合预测方法分为非线性组合预测BP算法和优化组合预测BP算法的网络参数两部分。
《2.1非线性组合预测BP算法》
2.1非线性组合预测BP算法
以{Y1k, Y2k, …, Ynk}作为输入样本, {Yk}作为输出样本, 输入神经元和输出神经元节点 (即神经元) 数目分别为n和1。隐层神经元节点数目m一般根据问题的复杂程度, 训练样本容量和实际要求由建模者的经验和试验工作确定, 文献
记输入神经元为h、隐层神经元为i、输出神经元j, 隐层节点i、输出层节点j的阈值分别为θi, θj, 输入层节点h与隐层节点i间及稳层节点i与输出层节点j间的接线的权值分别为whi, wij, 各节点的输入、输出分别为x, y。BP算法如下:
Step 1 初始化。设已归一化的输入、输出样本为{xhk, dk (h=1, 2, …, n;k=1, 2, …, N}。给各连接权值、阈值赋予 (-1, 1) 区间上的随机值。
Step 2 置k=1。把样本对 (xhk, dk) 提供给网络。
Step 3 计算隐层各节点的输入xi、输出yi:
Step 4 计算输出层节点的输入xj、输出yj:
Step 5 计算输出层节点所收到的总输入变化时单样本点误差Ek=0.5 (yj-dk) 2 的变化率:
Step 6 计算隐层各节点所收到的总输入变化时单样本点误差Ek的变化率:
Step 7 修正各连接的权值和阈值:
其中, m为修正次数, η为学习速率且η∈ (0, 1) , α为动量因子且α∈ (0, 1) 。
Step 8 置k=k+1, 转 Step 3, 直至全部N个样本点训练完毕, 转Step 9。
Step 9 转 Step2, 进行新一轮学习, 直至网络全局误差函数
小于预先设定的一个较小值或学习次数大于预先设定的值, 结束学习。
《2.2优化组合预测BP算法的网络参数》
2.2优化组合预测BP算法的网络参数
上述BP网络的参数包括θi, θj, whi和wij, BP网络的参数优化问题是指估计网络各连接的权值和阈值, 使式 (1) 极小化, 用于优化BP网络参数的加速遗传算法包括 Step 9
Step 1 BP网络参数的变化区间的构造。设cj是在BP算法训练网络出现收敛速度缓慢时网络的任一参数的值, 则它的变化区间构造为[aj, bj], 其中, aj=cj-d|cj|, bj=cj-d|cj|, d为一正的常数。
Step 2 网络参数的编码。设编码长度为e, 把区间[aj, bj]等分成2e-1个子区间, 于是整个网络参数变化空间被离散成 (2e) p个格网点。其中, p=2n2+n+1。每个格网点称为个体, 它对应网络p个参数的一种可能取值状态, 并用p个e位二进制数表示。这样, p个网络参数、格网点、个体、二进制数一一对应。
Step 3 至 Step 9 同文献
《2.3算法中控制参数的配置[5]》
2.3算法中控制参数的配置[5]
文献
1) 在BP网络中, 学习因子η=0.1, 动量系数α=0.1;
2) 在AGA中, 编码长度e可取定10, 变异率pm可取1.0, 父代个体数目q取300, 优秀个体数目s取10。
《3 实例研究》
3 实例研究
Table 1 Three model′s forecasting values and practice values
《表1》
序号k | 实际值Yk | 方法 1 的预测值Y1k | 方法 2 的预测值Y2k | 方法 3 的预测值Y3k | BP-AGA的预测值Fk |
1 | 2 236.000 0 | 2 796.320 1 | 2 236.000 0 | 2 316.722 7 | 2 058.858 0 |
2 | 2 266.000 0 | 2 766.830 1 | 2 395.466 3 | 2 500.288 8 | 2 113.645 0 |
3 | 2 000.000 0 | 2 757.399 9 | 2 561.502 4 | 2 574.449 2 | 2 268.477 7 |
4 | 2 031.000 0 | 2 768.030 0 | 2 734.379 4 | 2 726.316 9 | 2 438.025 2 |
5 | 2 916.000 0 | 2 798.720 0 | 2 914.378 9 | 2 809.504 2 | 2 723.998 2 |
6 | 3 001.000 0 | 2 849.470 0 | 3 101.794 4 | 2 933.871 4 | 2 993.112 8 |
7 | 3 500.000 0 | 2 920.280 0 | 3 296.931 4 | 3 021.105 0 | 3 304.131 4 |
8 | 3 700.000 0 | 3 011.149 9 | 3 500.107 9 | 3 122.201 9 | 3 573.848 8 |
9 | 3 850.000 0 | 3 122.080 1 | 3 711.655 3 | 3 225.045 2 | 3 807.674 2 |
10 | 4 000.000 0 | 3 253.070 1 | 3 931.918 5 | 3 471.715 3 | 3 900.835 9 |
11 | 4 100.000 0 | 3 404.120 1 | 4 161.256 3 | 3 519.356 2 | 4 124.835 6 |
12 | 4 300.000 0 | 3 575.230 0 | 4 400.043 0 | 3 777.689 0 | 4 201.104 4 |
13 | 4 011.000 0 | 3 766.399 9 | 4 648.668 0 | 4 191.414 1 | 4 193.966 3 |
14 | 4 044.000 0 | 3 977.629 9 | 4 907.536 1 | 4 693.555 2 | 4 125.918 9 |
15 | 4 340.000 0 | 4 208.919 9 | 5 177.068 9 | 4 640.409 7 | 4 422.609 6 |
16 | 4 640.000 0 | 4 460.270 0 | 5 457.708 0 | 4 576.580 6 | 4 649.420 3 |
17 | 4 654.000 0 | 4 731.680 2 | 5 749.908 7 | 5 026.020 5 | 4 705.488 7 |
18 | 4 787.000 0 | 5 023.149 9 | 6 054.147 9 | 5 403.210 4 | 4 804.313 9 |
19 | 4 977.000 0 | 5 334.680 2 | 6 370.921 9 | 5 570.586 4 | 4 997.106 4 |
20 | 5 355.000 0 | 5 666.270 0 | 6 700.747 1 | 5 568.387 7 | 5 236.398 7 |
21 | 5 461.000 0 | 6 017.919 9 | 7 044.160 6 | 5 852.355 5 | 5 452.436 3 |
22 | 5 316.000 0 | 6 389.629 9 | 7 401.723 1 | 6 167.214 4 | 5 714.427 6 |
23 | 6 388.000 0 | 6 781.399 9 | 7 774.017 1 | 6 562.639 6 | 6 034.446 2 |
24 | 6 125.000 0 | 7 193.230 0 | 8 161.649 4 | 6 647.645 0 | 6 437.480 9 |
25 | 7 152.000 0 | 7 625.120 2 | 8 565.252 0 | 7 043.860 4 | 6 926.809 9 |
26 | 7 707.000 0 | 8 077.069 8 | 8 985.483 4 | 7 722.803 7 | 7 542.528 7 |
27 | 8 392.000 0 | 8 549.080 1 | 9 423.028 3 | 8 024.044 9 | 8 248.173 9 |
28 | 8 960.000 0 | 9 041.150 4 | 9 878.599 6 | 9 038.871 1 | 9 084.166 1 |
29 | 9 806.000 0 | 9 553.280 3 | 10 352.940 4 | 9 103.766 6 | 9 895.584 2 |
30 | 10 566.000 0 | 10 085.469 7 | 10 846.824 2 | 9 696.405 3 | 10 672.907 0 |
31 | 11 281.000 0 | 10 637.719 7 | 11 361.056 6 | 10 627.927 7 | 11 312.068 0 |
32 | 12 230.000 0 | 11 210.030 3 | 11 896.475 6 | 11 824.769 5 | 11 720.368 0 |
33 | 11 625.000 0 | 11 802.400 4 | 12 453.953 1 | 12 651.807 6 | 11 966.019 0 |
文献
现用BP-AGA法来进行非线性组合预测, 选择输入层的节点为3个, 隐层节点为3个, 输出层节点为1个。先用BP训练40 000 次, 再用AGA加速寻优10 次, 再用BP训练40 000 次, 其预测值Fk见表1, 网络参数和组合预测误差平方和见表2。
例2 在文献
Table 2 Network parameters in example 1 and combination forecasting error square sum
《表2》
参数 | 隐层神经元i | 组合预测 误差平方和 | ||
1 | 2 | 3 | ||
w1i | -1.944 115 | -12.283 974 | -0.357 164 | |
w2i | -1.698 132 | 28.603 524 | -9.466 318 | |
w3i | -0.746 481 | -13.730 895 | -4.380 855 | 1 361 856 |
θi | 4.581 246 | 0.975 723 | -5.580 472 | |
wi1 | -11.674 119 | 14.075 441 | -2.808 669 | |
θj | -3.659 614 |
文献
现用BP-AGA法来进行非线性组合预测, 选择输入层的节点为3个, 隐层节点为3个, 输出层节点为1个, 其预测值Fk见表3, 网络参数和组合预测误差平方和见表4。
Table 3 Forecasting to society commodity retail month by month in year at certain regain
《表3》
序号k | 实际值Yk | 方法1的预测值Y1k | 方法2的预测值Y2k | 方法3的预测值Y3k | BP-AGA的预测值Fk |
1 | 4.56 | 4.29 | 4.25 | 4.17 | 4.559 414 7 |
2 | 4.40 | 4.24 | 4.23 | 4.34 | 4.398 210 4 |
3 | 4.22 | 4.08 | 4.13 | 4.42 | 4.220 216 2 |
4 | 4.09 | 3.89 | 4.00 | 4.10 | 4.089 160 7 |
5 | 3.89 | 3.82 | 3.92 | 4.00 | 3.882 609 2 |
6 | 4.18 | 3.90 | 3.96 | 3.86 | 4.180 786 9 |
7 | 4.29 | 3.97 | 4.08 | 4.00 | 4.289 862 6 |
8 | 4.44 | 4.17 | 4.22 | 4.23 | 4.441 508 0 |
9 | 4.26 | 4.06 | 4.24 | 4.11 | 4.259 874 6 |
10 | 4.02 | 3.91 | 3.93 | 3.87 | 4.017 258 6 |
11 | 3.85 | 3.86 | 3.91 | 3.94 | 3.869 896 8 |
12 | 4.31 | 4.11 | 4.08 | 4.17 | 4.310 885 9 |
Table 4 Network parameters in exam.2 and combination forecasting error square sum
《表4》
参数 | 隐层神经元i | 组合预测 误差平方和 | ||
1 | 2 | 3 | ||
w1i | 2.507 595 | 9.164 539 | -3.873 299 | |
w2i | -9.187 477 | 1.106 704 | 6.623 136 | |
w3i | 2.323 270 | -9.573 456 | -8.129 233 | 4.660 |
θi | -1.349 5950 | -3.153 131 | -2.295 055 | 313×10-4 |
wi1 | -12.929 947 | 7.917 195 | -7.318 830 | |
θj | 0.429 278 |
基于BP-AGA的非线性组合预测误差平方和SSEmin=4.660 313×10-4, 它大大优于文献