APP下载

改进PCA-BP神经网络模型在公路客运量预测的应用

2016-11-15王浩郭瑞军

大连交通大学学报 2016年2期
关键词:客运量权值次数

王浩,郭瑞军

(大连交通大学 交通运输工程学院,辽宁 大连 116028)



改进PCA-BP神经网络模型在公路客运量预测的应用

王浩,郭瑞军

(大连交通大学 交通运输工程学院,辽宁 大连 116028)

用PCA-BP神经网络模型对公路客运量进行预测,预测精度与收敛速度都不是很理想,为克服PCA-BP神经网络算法存在的非线性逼近、迭代次数过多,易陷入局部极值等不足,提出将PCA-BP神经网络模型与动态陡度因子、附加动量因子和动态调整学习率算法结合的方法,给出具体的网络学习方法,并结合实际调查数据进行对比测试,分析结果证明了改进型PCA-BP神经网络模型对公路客运量预测有效性.

PCA-BP神经网络; 动态陡度因子; 动态调整学习率算法; 客运量; 预测

0 引言

公路客运量预测属于复杂非线性系统问题,早期的预测方法主要有多元线性回归预测模型、自回归模型、自回归滑动平均模型、指数平滑预测模型等.Sherif Ishak等[1]应用实时数据分析和评价了几种交通客运量预测模型的效果;孙煦、陆化普[2]等对公路客运量预测难以建立精确预测模型的问题,引入基于蚁群优化的支持向量机算法对公路客运量进行预测.这些方法可以实现交通客运量的预测工作,但缺点是没有摆脱建立精确数学模型的困扰,其预测效果很大程度上取决于参数的选取,并且非线性拟合能力不突出.Tung、Chrobok、Quek[3-5]等人采用神经网络模型进行预测,证明神经网络得到的结果的精确性较传统预测模型高.董春娇[6]等在传统的BP(Back Propagation)神经络算法中有所改进,采用Elman神经网络的交通流短时预测,通过在前馈网络的隐含层中增加一个承接层,作为延时算子使系统具有适应时变特性的能力.在公路客运量的预测方面,神经网络应用较多,但传统的BP神经网络存在的非线性逼近、迭代次数过多,易陷入局部极值等不足,而且预测结果影响因素分析较少,对预测指标的选取没有进行全面充分的系统考虑.

本文在PCA(Principle Component Analysis)与BP神经网络相结合构成PCA-BP网络模型的基础上,将动态陡度因子、附加动量因子和动态调整学习率等方法融入模型的运作过程,进一步完善算法,提出改进PCA-BP神经网络模型,并将其运用到公路客运量的预测.

1 PCA-BP模型的基本原理

公路客运量受人口总数、区域经济发展水平、居民消费水平等多种因素影响.在用BP神经网络进行模拟预测时,首先要确定对预测指标有影响的主要因素(即系统输入).运用PCA-BP神经网络模型可以实现减少输入变量个数,达到降维目的,并使其包含原输入变量群的绝大部分信息,从而提高神经网络的运行效率和预测精度.PCA-BP神经网络模型流程见图1.

1.1 PCA原理[7]

在所有的线性组合中选取方差最大的p1为第一主成分.若p1不足以代表原来的m个指标的信息,则选取p2即第二个线性组合.为有效反映原来信息,p1已有信息不需出现在p2中,即Cov(p1,p2),则p2为第二主成分.以此类推,可构造第三,第四,……,第n个主成分.

这m个变量中可找到n个变量(n

图1 PCA-BP神经网络拓扑结构图

1.2 BP神经网络原理

模型拓扑结构有三层,即输入层、隐含层和输出层,同一层的节点之间相互不关联,异层的神经元间前向连接.当一对样本学习模式提供网络后,神经元的激活值从输入层经中间层向输出层传播,在输出层各神经元获得网络的输入响应.之后,按减少希望输出与实际输出误差的方向,从输出层经各中间层逐层修正各连接权,最后到输入层.

假设三层BP网络,输入层第i个节点的输入为Xi,隐含层j个节点的输入和输出层分别为Sj和Hj,输出层第k个节点的输入和输出分别为Ck与Ok,输入层、隐含层、输出层节点数为m,l,n.输入层节点与隐含层将节点之间的联接权值为wij,隐含层节点与输出层节点之间的联结权值为wjk,隐含层如输出层各单元的输出阀值分别为aj和bk,输出层第k个节点的期望输出为tk,激活函数为f(x),误差函数为E.各函数分别为:

2 改进PCA-BP神经网络模型的思想

本文基于PCA-BP神经网络模型,采用动态陡度因子、附加动量因子和动态调整学习率算法,将网络模型进行优化,最后将降维的样本集合和优化的权值代入网络,在经过PCA-BP神经网络训练之后,用检验样本集合对其进行检验.

2.1 附加动量法

传统BP 算法在调整权值时, 只按照当前时刻的负梯度方向调整,没有考虑到以前各次运算中的梯度方向, 导致新样本对迭代过程的影响太大,会导致数据训练过程中调整方向发生振荡,导致不稳定和收敛速度慢.附加动量的BP 算法[10]考虑了以前时刻的贡献, 其权值迭代公式如下所示:

其中,D(n)和D(n-1))分别表示n时刻和n-1时刻的负梯度,η为学习率,α为动量因子.加入以前时刻梯度的贡献,使网络忽略误差曲面上的细节特征,减小学习过程的震荡趋势,避免网络陷入局部极小点的问题.

2.2 动态调整学习率[8]

传统BP模型中,学习率是固定的.学习率对模型运算性能影响较大,动态的学习率可以改善训练算法的性能.学习率η与误差函数相关联,在网络的每一步学习过程中动态调整η的值,对不同的误差质的变化,每一步学习后学习率都进行相应的调整.调整公式为:

3 改进PCA-BP模型的预测流程

3.1 网络初始化

对所得的社会经济指标进行主成分分析,得出输入节点数与输出节点数m,n;采用经验公式确定节点数的上下限,隐节点数的上限作为初始隐节点数l.初始化输入层、隐含层和输出层各神经元间权值wij,wjk.隐含层阈值a,输出层阈值b;给定初始化的学习速率η;网络输入和输出为(X,Y).

3.2 计算隐含层输出

根据给定的输入向量X,输入层和隐含层间连接权值wij以及隐含层阀值a,计算隐含层输出H.

式中,l代表隐含层节点数,f代表隐含层神经元刺激函数.

神经元刺激函数为:

具体表现是通过改变刺激函数中的陡度因子P[9-10].如图2,当P很大时S型线比较平坦,当P很小时,S型曲线比较陡峭,当P趋近于0时,S型曲线趋向阶跃函数.

图2 激励函数随P变化图

P的衰减方式决定着最终算法的速度和准确性.采用下列指数方式对P的衰减进行改进:

P=qtP0

式中:P0>0是初始值,t是迭代次数,而常数q∈(0,1),可以看出,P为q的单调递减函数,当t减小时,P的下降速度变快;当t变大时,P的下降速度变慢.这样,通过恰当地选择q的值,就可以控制P的下降速度.

3.3 计算输出层输出

根据隐含层输出H,连接权值wjk和阀值b,计算网络的预测输出O,并计算预测误差e.

3.4 学习速率的改变

根据迭代次数,学习率不断减小,计算当前学习率.

式中,η为学习速率,ηmax为最大学习率,ηmin为最小学习率,tmax为最大迭代次数,t为当前迭代次数.

3.5 附加动量的权值与阀值的更新

根据求得的网络预测误差,更新网络权值wij和wjk,并且更新阀值a和b.

在上述式中,λ为动量因子,取λ=0.005.

3.6 进行判断

根据迭代次数判断算法是否结束,若没有结束,返回3.2处重新开始.

4 改进PCA-BP模型在城市交通流预测中的实际应用

为验证模型预测效果,选取山东潍坊市1996年至2005年10个样本为学习样本,将2006至2012年7个样本作为检验样本,数据见表1.利用SPSS统计工具,对数据进行因子分析,根据实验和经验[11],公式中的参数可以设定为a=1.05,b=0.7,ηmin=0.025; tmax=5000; q=0.85.选取特征值大于1的作为主成分,可以发现当取到3个主成分,其累积贡献率达86.26%>80%,满足要求,即神经网络的输入节点为3个.将各个参数代入模型之后可以得出:P0=90,Pmin=0.1.结果如表2、表3所示.

表1 某区域社会经济指标

表2 因子载荷矩阵表

表3 主成分特征值和贡献率

经主成分分析,可以确定出神经网络的输入节点为3个,即:

第一个主成分分数=0.208×总人口数-0.102×人均旅行次数-0.112×居民消费指数+0.202×居民消费水平+0.162×机动车保有量+0.212×地区生产总值+0.119×人口密度+0.217×消费总额;

第二个主成分分数=0.241×总人口数+0.305×人均旅行次数+0.219×居民消费指数-0.210×居民消费水平-0.253×机动车保有量+0.249×地区生产总值-0.075×人口密度+0.253×消费总额;

第三个主成分分数=-0.160×总人口数-0.090×人均旅行次数+0.840×居民消费指数+0.222×居民消费水平-0.097×机动车保有量-0.114×地区生产总值+0.651×人口密度-0.077×消费总额;

运用MATLAB等软件分别对传统PCA-BP神经网络以及改进型PCA-BP神经网络模型进行运算.后七年的公路客运量实际值与预测值数据比较见图3.

图3 预测值比较

从上述表格数据可知,改进型PCA-BP模型的迭代次数2361次,准确率为88.91%比传统的PCA-BP模型更为理想,预测效果较好.

5 结论

本文将传统的PCA-BP神经网络模型进行改进,将附加动量因子、动态陡度因子、动态调整学习率算法等方法加入模型,使改进后模型不仅对预测指标进行全面充分的系统考虑,而且有效解决BP神经网络存在的非线性逼近、迭代次数过多,易陷入局部极值等缺点,并把预测结果与传统PCA-BP神经网络预测结果相比较,从结果看出,不仅预测精度有了提高,而且收敛速度也得到加快.由此可见,改进PCA-BP神经网络比传统的PCA-BP模型更具优越性,能较好的得到预测结果,可以为相关企业和部门的决策提供一定的技术支持.

[1]SHREIF ISHAK, HAITHAM AI-DEEK. Performance Evaluation of Short-Term Time-Series Traffic Prediction Model [J]. Journal of Transportation Engineering, 2002, 128(6): 490-498.

[2]孙煦,陆化普,吴娟. 基于蚁群优化支持向量机模型的公路客运量预测[J]. 合肥工业大学,2012,35(1):124-129.

[3]TUNG BUI, JINTAE LEE. An agent-based frame work for systems[J].Decision Support System,1999:225-237.

[4]YIN HONGBIN, WONG S C, XU J IANMIN.Urban traffic flow prediction using a fuzzy-neural approach [J].Transportation Research Part C,2002,13(8):85-98.

[5]QUCK C, SINGH A,POP-YAGE. A novel self-organizing fuzzy neural network based on the Yager inference[J]. Expert Systems with Application,2005,7(1):229-242.

[6]董春娇,邵春福. 基于Elman神经网络的道路网短时交通流预测方法[J].交通运输系统工程与信息,2010,10(1):145-151.

[7]肖汉,曹军. 基于PCA的BP神经网络模型在城市供水预测中的应用[J]. 山东农业大学学报,2013,44(2):266-270.

[8]BRIAN L. Comparison of Parametric and Nonparametric Models for Traffic Flow Forecasting [J].Transportation Research Part C: Emerging Technologies,2002,10(4):303 -321.

[9]COOK D, RAGSDALE,MAJOR R I. Combining a neural network with a genetic algorithm for process parameter optimization[J].Engineering Application of Artificial Intelligence,2000(3):391-396.

[10]蔡志雄. 基于神经网络的中心城市常规公交车客运量预测研究[D].成都:西南交通大学,2013:42.

[11]朱英. 改进BP神经网络预测模型及其应用[J].武汉理工大学学报,2012,36(12):1252 -1255.

Forecasting of Highway Passenger Transportation Volume based on Improved PCA-BP Neural Network Model

WANG Hao, GUO Ruijun

(School of Traffic and Transportation Engineering, Dalian Jiaotong University, Dalian 116028, China)

In order to overcome the defects of nonlinear approximation, too much iterations and easy to fall into local minimum of the PCA-BP neural network , an improved PCA-BP neural network forecasting model was proposed, which combined steepness factor, the method of momentum item addition and the learning algorithm of variable learning rate. This forecasting model is constructed based on the PCA-BP neural network by detailed learning algorithm. Comparative test and analysis show that the PCA-BP neural model is valid for highway passenger transportation volume forecasting.

PCA-BP neural model; steepness factor; learning algorithm of variable learning rate; Matlab

1673- 9590(2016)02- 0001- 05

2014-11-04

王浩(1990-),男,硕士研究生;郭瑞军(1977-),男,副教授,博士,从事道路通行能力的研究E- mail:858911569@qq.com.

A

猜你喜欢

客运量权值次数
一种融合时间权值和用户行为序列的电影推荐模型
机场航站楼年雷击次数计算
2020年,我国汽车召回次数同比减少10.8%,召回数量同比增长3.9%
CONTENTS
一类无界算子的二次数值域和谱
2018年北京市城市公共交通运行特征分析
2018年北京市城际交通运行特征分析
2018年北京市轨道交通运行特征分析
基于权值动量的RBM加速学习算法研究
依据“次数”求概率