基于在线序列极限学习机的路段行程时间预测算法
2019-11-18阳敏辉
文/阳敏辉
1 在线序列极限学习机算法
极限学习机算法的训练集在训练过程中是固定的,实际运用情况,训练集会在时间推移的过程中有新样本产生,愈来愈多的样本数存在时,会使得计算H广义逆矩阵复杂化,计算时间将会大大增加,针对此情形,研究人员在 ELM算法的基础上做了改进,提出了在线序列极限学习机算法(Online Sequence ELM,OSELM)。
OSELM算法思想是在隐层节点输出矩阵中固化样本数据,在训练集中有新样本被添加后,网络只要对当前产生的新样本进行更新,无需对重复更新之前的样本集,这样计算的时间及工作量大大减少,有效地解决行程时间的实时性要求。
通过上述策略可知,OSELM算法对样本数据的不断更新,让SVR模型在线样本更新时,其动态调整与在线训练得以实现,所以,此方法适用行程时间预测。
如果HTH为奇异矩阵,通过选择较小的隐层节点个数m或增长样例个数n,可以推出:
表1:OSELM-TTP算法
对于给定的训练集
设新一批数据集
输出权值为:
可以得到:
以此类推,当第k+1批数据集
其中
2 基于在线序列极限学习机的路段行程时间预测算法
2.1 算法的基本思想及步骤
基于在线序列极限学习机的路段行程预测算法可分为以下两步:
2.1.1 OSELM-TTP的训练过程
(1)选取行程时间样本集合,将样本数据进行归一化处理;
(2)将样本划分为训练集和测试集;
(3)在训练集上进行算法的训练,选取隐层激活函数,并随机生成隐层神经元激活函数的参数;
(4)用测试集对OSELM-TTP 算法进行测试。
2.1.2 OSELM-TTP的测试与实际预测过程
(1)对新到达的数据X进行归一化处理;
(2)获得X对应更新的网络参数;
(3)得到最终的网络参数。
OSELM-TTP算法的描述如表1所示。
2.2 算法的流程
基于在线序列极限学习机的路段行程预测算法的流程如下所示:
开始→给定数据源:当前交通流量、前一时段路段行程时间、当前时段路段行程时间;并确定隐含层神经元个数→随机生成w和b→初始化网络,计算得到H0和β0→输入新增TTP样本数据→更新网络:更新H和β→所有数据是否更新完毕?
如果更新完毕→结束;如果未更新完毕→更新网络:更新H和β。
3 总结
本文针对行程时间预测要求的实时性问题,通过将实时序列预测与数据更新机制添加到ELM中,将在线序列极限学习机应用到路段行程时间预测中,提出了基于在线序列极限学习机的路段行程算法(OSEML-TTP)。下一步,笔者将采用MATLAB工具箱,基于实际检测的交通参数,采用本文提出的预测算法,对城市快速路进行路段行程时间预测仿真,来验证OSELM-TTP用于路段行程时间预测的有效性和可行性。