法律状态公告日
法律状态信息
法律状态
2017-11-03
授权
授权
2015-07-01
实质审查的生效 IPC(主分类):G06F19/00 申请日:20150127
实质审查的生效
2015-06-03
公开
公开
技术领域
本发明涉及原子钟数据处理领域,特别涉及一种基于改进型BP(Back Propagation)神经网络的氢原子钟钟差预测方法。
背景技术
钟差预测是指运用一种或多种算法通过对原子钟的历史钟差数据进行分析学习后,算出下一刻或下一段时间内的钟差数据。原子钟钟差预测是原子钟权重分配、预测原子钟的运行状态和对原子钟进行预调节、系统驾驭的重要依据。因此,精准的原子钟钟差预测对提高原子时时标精度和原子钟系统驾驭精度有着重要作用。
目前,常用的钟差预测算法有一次线性回归预测算法、基于支持向量机(SVM)预测算法、小波神经网络预测算法、灰色模型和ARIMA模型的钟差预测算法、切比雪夫多项式模型预测算法等。但是,针对钟差的预测算法主要运用在卫星钟(铷原子钟)当中,用于优化导航电文的钟差参数、满足实时动态精密单点定位的需求和提供卫星自主导航所需的先验信息。而针对地面氢原子钟钟差的预测算法较少,主要有一次线性回归算法和基于支持向量机(SVM)预测算法。其中一次线性回归预测算法主要是拟合出钟差的变化趋势,算法简单,容易实现,但预测精度比较低,SVM预测算法的预测精度较一次线性回归算法预测精度要高。
发明内容
为进一步提高对原子钟钟差数据的预测精度,为提高原子时时标精度和原子钟驾驭精度提供依据,本文根据氢原子钟钟差特性、地面原子钟钟差数据与卫星钟钟差数据以及与日长数据的相似性,在卫星钟差小波神经网络预测算法和小波神经网络对日长预报算法中BP神经网络算法思想基础上,针对BP神经网络算法的不足,运用SVM算法中的预测惩罚模型,提出了基于改进BP神经网络算法对氢原子钟钟差数据进行预测方法。
改进型BP神经网络算法是在BP神经网络算法的基础之上,针对BP神经网络算法的不足之处,运用SVM算法中的预测惩罚思想提出了改进方案,主要从以下两个方面进行了算法的改进:
1、)针对BP神经网络权值收敛到某个值,并不保证其为误差平面的全局最小值的问题,本文通过增加惩罚性措施来提高预测精度,通过上一步预测误差δ(n-1)即实测值y(n-1)预测值与yr(n-1)之间的差值,来修正下一步预测值。2、)针对预测数据中出现大幅度的变化 的问题,在本文当中,使用限制预测数据变化幅度的措施来提高预测数据的稳定性和预测精度。
本发明的特征如下:
步骤1:给系统参数Wij、Vij、θi、Φi及学习率η赋初值并选定传递函数形式,一般使f1=f2(简写为f),通常选择
其中W1ij为对应输入的连接权值,W2ij为对应输出单元的连接权值,f1为输入单元到隐层单元的传递函数,f2为隐层单元到输出单元的传递函数,θi为隐层单元的阈值即隐层单元输入的最小氢钟钟差值,Φi为输出单元的阈值即预测单元输出的最小氢钟钟差值。
步骤2:输入训练样本数据,根据如下公式求出各个神经元的实际输出:
Γ=f(Wx-θ) (1)
其中Γ为每个神经元的实际输出的氢钟钟差值,f为神经元的激励函数(传递函数),x为对应神经元输入的氢钟钟差值,W为对应的连接权值,θ为对应神经元的阈值。
步骤3:根据给定的误差公式,求出系统性能误差:
其中outputs为输出钟差值的单元个数,tk为输出单元的钟差期望值,Γk为输出单元的钟差实际输出值。判断钟差的预测误差或训练次数是否达到预设值,如果达到退出训练,否则进行下一步。
步骤4:计算输出层每个输出单元的钟差误差项:
σk=Γk(1-Γk)(tk-Γk) (3)
步骤5:计算隐层中每个单元的钟差误差项:
步骤6:根据设定的学习率η,调整各层的连接权值:
W(n+1)=W(n)+ηxσk (5)
步骤7:返回第二步,重复计算,不断调整各连接权值,直到输出的钟差误差到达预设值为止。
步骤8:使用训练好的网络进行钟差预测。
步骤9:计算钟差预测误差
δ(n)=y(n)-yr(n) (6)
步骤10:修正钟差预测值
yr(n)=yr(n)+μδ(n-1) (7)
其中μ为惩罚系数,
步骤11:判断钟差预测值变化幅度,设置限制幅度ξ,
如果
|yr(n)-yr(n-1)|≥ξ (8)
则最终的钟差预测值yr(n)修改为:
否则,最终的钟差预测值yr(n)保持不变;
步骤12:从第二步开始重复以上步骤,直到完成预测;
通过以上步骤,改进型BP神经网络即完成了针对氢钟钟差数据的预测。
与现有技术相比,本发明具有以下有益效果:
本发明提出了一种基于改进型BP神经网络的氢钟钟差预测方法,该方法与现行的SVM预测算法和一次线性回归预测算法相比,其氢钟钟差预测精度有明显提高,为提高氢原子钟的原子时标和驾驭精度提供了更高的依据。
附图说明
图1改进型BP神经网络算法流程图;
图2第一组数据的预测效果图:图2-1改进BP神经网络钟差预测图;图2-2改进BP神经网络钟差预测放大图;图2-3线性回归钟差预测图;图2-4线性回归钟差预测放大图;图2-5SVM钟差预测图;图2-6SVM钟差预测图放大图;图2-7相对预测误差图
图3第二组数据的预测效果图:图3-1改进BP神经网络钟差预测图;图3-2改进BP神经网络钟差预测放大图;图3-3线性回归钟差预测图;图3-4线性回归钟差预测放大图;图3-5SVM钟差预测图;图3-6SVM钟差预测图放大图;图3-7相对预测误差图;
图4BP神经网络原理图。
具体实施方式
如图1-4所示,一种基于BP神经网络的氢钟钟差预测方法。首先,根据氢钟钟差数据,确定钟差数据正常波动范围,确定限制幅度值和预测惩罚系数,并对改进型BP神经网络系统参数赋初值;然后,输入氢钟钟差数据的历史数据,对钟差数据进行学习得到系统函数;最后,输入要预测点,根据系统函数输出预测值,根据限制幅度值和预测惩罚系数对预测值进行修正,完成预测。
上述基于改进型BP神经网络的氢钟钟差预测方法,包括下述步骤:
步骤1,根据氢钟钟差特性分析钟差的正常波动范围,确定限制幅度值为0.00125ns和预测惩罚系数0.4;
步骤2:给系统参数Wij、Vij、θi、Φi及权值学习率η赋初值并选定传递函数形式,一般使f1=f2(简写为f),通常选择
步骤3:输入训练样本数据,根据如下公式求出各个神经元的实际输出:
Γ=f(Wx-θ) (1)
其中Γ为每个神经元的实际输出,f为神经元的激励函数(传递函数),x为对应神经元的输入,W为对应的连接权值,θ为对应神经元的阈值。
步骤4:根据给定的误差公式,求出系统性能误差:
其中outputs为输出单元的个数,tk为输出单元的期望输出值,Γk为输出单元的实际输出值。判断系统误差或训练次数是否达到预设值,如果达到退出训练,否则进行下一步。
步骤5:计算输出层每个输出单元的误差项:
σk=Γk(1-Γk)(tk-Γk) (3)
步骤6:计算隐层中每个单元的误差项:
步骤7:根据设定的学习η,调整各层的连接权值:
W(n+1)=W(n)+ηxσk (5)
步骤8:返回第二步,重复计算,不断调整各连接权值,直到输出误差到达预设值为止。
步骤9:使用训练好的网络进行预测。
步骤10:计算预测误差
δ(n)=y(n)-yr(n) (6)
步骤11:修正预测值
yr(n)=yr(n)+μδ(n-1) (7)
其中μ=0.4为惩罚系数,
步骤12:判断预测值变化幅度,设置限制幅度ξ=0.00125ns,
如果
|yr(n)-yr(n-1)|≥ξ (8)
则最终预测值yr(n)修改为:
否则,最终预测值yr(n)保持不变;
步骤13:从第二步开始重复以上步骤,直到完成预测。
机译: 原子钟组件,配备有原子钟组件的电子烟以及用于组装原子钟组件的方法
机译: 基于BP神经网络的中央空调冷却负荷预测方法。
机译: 原子钟和相关方法和原子钟的烤箱