一种时间序列预测方法及系统的制作方法_3

文档序号:9453281阅读:来源:国知局
从划 分出的每级时间粒度及其对应的第二时间维度中,组合出预测组合;根据所述预测组合生 成多维度时间划分预测模型;
[0083] 具体地,对步骤S402中获取的时间序列可以通过回归模型,ARMA等预测算法进行 预测得出第一预测结果,根据第一预测结果组合出最优的时间维度得到预测组合;
[0084] 例如,步骤S400中时间序列的时间粒度划分出天的时间粒度的工作日,并对工作 日再划分出周一到周五,以及小时的时间粒度的1点到24点,并对1点到24点再划分出午 前AM0点到12点和午后PM0点到12点;那么根据第一预测结果,可以选择组合第二个工作 日10点这个预测组合来生成多维度时间划分预测模型,来预测第二个工作日全天的数据; 又如,可以选择组合第二个工作日15点这个预测组合来生成多维度时间划分预测模型,来 预测第二个工作日全天的数据;又如,可以选择组合周一 10点这个预测组合来生成多维度 时间划分预测模型,来预测周一全天的数据;又如,可以选择组合周一AM0点到12点这个预 测组合来生成多维度时间划分预测模型,来预测周一全天的数据;
[0085] 需要说明的是,预测组合的选取依据可以根据第一预测结果的预测准确率来选 择,比如根据当前时刻之前的数据使用某预测组合来预测的准确率最高,即选取该预测组 合来生成多维度时间划分预测模型。
[0086] 步骤S406 :获取并根据当前时刻的真实时间序列值,通过所述多维度时间划分预 测模型预测在当前时刻之后的下一时刻的时间序列值,得到当前时刻之后的下一时刻的预 测时间序列值。
[0087] 具体地,可以参考图1实施例中的步骤S106,这里不再赘述。
[0088] 再进一步地,本发明实施例还可以对得到的预测时间序列值进行预测修正,具体 地:
[0089] 本发明实施例在根据所述预测组合生成多维度时间划分预测模型之后,还包括: 获取当前时刻的误差修正因子,所述误差修正因子为通过计算当前时刻的预测时间序列值 与真实时间序列值的误差而得出的误差修正因子;所述当前时刻的预测时间序列值为根据 当前时刻之前的上一时刻的真实时间序列值,通过所述多维度时间划分预测模型预测在当 前时刻的时间序列值而得到的预测时间序列值;
[0090] 那么在得到当前时刻之后的下一时刻的预测时间序列值之后,还包括:根据所述 误差修正因子修正所述当前时刻之后的下一时刻的预测时间序列值。
[0091] 详细地,本发明可以在当前时刻t生成真实时间序列值后,通过计算真实值(即真 实时间序列值)和预测值(即预测时间序列值)之间的误差,用来调整下一时刻的预测结 果,当前时刻t的预测时间序列值是使用本发明实施例中的多维度时间划分预测模型进行 预测得到的预测时间序列值,误差预测函数S(t)可以如公式(2)所示:
[0092]
[0093] 其中,为预测当前时刻t的预测时间序列值;x(t)为当前时刻t的真实时间 序列值;本发明实施例使用的计算预测结果误差的方法,是计算不同时间维度划分的预测 结果和对应的真实值之间的误差。
[0094] 然后,可以根据得出的S⑴来生成误差修正因子,比如生成误差修正因子 1/1+S(t),以调整预测方向;即将公式(1)乘以该误差修正因子,当S(t)大于1 (即预测 值大于真实值)时,那么下一时刻的预测值向小的方向调整,否则,向大的方向调整。
[0095] 在具体地,还可以将得到的S(t)通过修正函数来生成误差修正因子,该修正函 数X⑴可以如公式(3)所示:
[0096]入(t) =u( 5 (t))kees(t)公式(3)
[0097] 其中,u(S⑴)为冲击函数,k、P为常量的有理数,k、P可以为0. 1、0. 2等经验 值,该修正函数是为了让误差S (t)收敛,因此本发明实施例不限于上述公式(2)的表达形 式,只要可以使得误差S (t)收敛的修正函数即可;
[0098]然后,可以根据得出的入⑴来生成误差修正因子,比如生成误差修正因子 1/1+A(t),以调整预测方向;即将公式(1)乘以该误差修正因子,可以得到公式(4)如下:
[0099] 公式(4)
[0100] 当AVt-l)大于1(即预测值大于真实值)时,那么下一时刻的预测值向小的方 向调整,否则,向大的方向调整。
[0101] 下面以某网络业务时间序列的实时预测为例说明本发明实施例的时间序列预测 方法。记某网络业务为i(t),其业务可以分钟级时间粒度来实时统计,需要根据该业务的实 时数据,预测该天的业务总量。
[0102] 使用本发明实施例的时间序列预测方法,首先生产需要实时生成并存储时间序 列。假设我们以每小时的时间粒度的业务量来实时预测全天的业务量。对时间序列的存储 按照天存储和小时存储。那么按照小时和天对时间序列的存储属于一个时间维度的划分。
[0103] 然后,使用多维度时间划分预测模型,可以对小时的时间序列划分按照1-24小时 分别使用不同的参数,对天的时间序列按照周一至周日分别使用不同的参数,该划分属于 时间序列在不同级别时间粒度上的划分,是时间序列的另外一个维度维的划分。这两种不 同维度的划分可以表示为:
[0104:
[0105] 其中,t:(t)和t2(t)指示标识,分别表示时间序列在小时和天时间粒度上的特征。 例如,确定组合出周一的10点作为预测组合来进行预测,得到对应的预测结果。那么,可以 使用公式(1),当前时刻为某周一 10点,则使用历史对应的周一 10点数据生成预测模型参 数,对应的,f(t-1)指示要周一 10点之前的时间序列,cT(t-t。)指示之前所有时间序列中 的每个周一的10点的时间序列,fpO^t-t。))是指使用历史所有的周一时间序列参数生成 的预测结果;
[0106] 在生成预测的初步结果后,计算预测结果误差,可以是计算前一天预测结果的误 差。例如,利用当前时刻周一 10点预测周一全天数据,先计算前一天即周日10点的预测值 与对应的真实值的误差,比如为0. 08,说明预测值偏大,则在修改函数中,计算修正参数:
[0107]A(t)=u(0. 08)ke°-08P
[0108]使用该参数作为当前时刻的预测修正参数,使用公式(4)生成更新后的预测结 果。在该网络时间序列的预测结果中,预测准确度可以如图5示出的本发明实施例提供的 对某网络业务的预测准确率趋势图,从准确率结果可以看出,使用该预测方法的预测准确 率逐渐上升,接近99%。
[0109] 实施本发明实施例,通过对时间序列的时间粒度进行多维划分,组成不同时间维 度的预测组合,生成多维度时间划分预测模型,实现了在不同的时间维度上对时间序列进 行预测,解决了现有技术中时间序列在多维时间粒度上预测精度的问题,提高了业务预测 的准确性,同时生成的预测模型复杂度低,容易实现,可以满足实时预测的需求;另外还可 以针对生成的预测模型获取误差修正因子来修正预测时间序列值,从而不断地更新预测模 型的参数,进一步提高业务预测的准确性。
[0110] 为了便于更好地实施本发明实施例的上述方案,本发明还对应提供了一种时间序 列预测系统,如图6示出的本发明提供的时间序列预测系统的结构示意图,时间序列预测 系统60包括:多维划分模块600、时间序列获取模块602、预测模型生成模块604和预测模 块606,其中
[0111] 多维划分模块600用于对时间序列的时间粒度进行多维划分,划分出至少两个时 间维度;
[0112] 时间序列获取模块602用于获取划分出的每个时间维度的时间序列;所述获取的 时间序列为在当前时刻之前的一段时间序列;
[0113] 预测模型生成模块604用于根据所述获取的时间序列通过预测算法进行预测,根 据预测结果组成不同时间维度的预测组合,根据所述预测组合生成多维度时间划分预测模 型;
[0114] 预测模块606用于获取并根据当前时刻的真实时间序列值,通过所述多维度时间 划分预测模型预测在当前时刻之后的下一时刻的时间序列值,得到当前时刻之后的下一时 亥IJ的预测时间序列值。
[0115] 具体地,如图7示出的本发明提供的时间序列预测系统的另一实施例的结构示意 图,时间序列预测系统60包括多维划分模块600、时间序列获取模块602、预测模型生成模 块604和预测模块606外,还可以包括生成存储模块608,用于在多维划分模块600对时间 序列的时间粒度进行多维划分之前,针对业务实时生成时间序列,并存储不同时间粒度对 应的时间序列。
[0116] 再具体地,生成存储模块608存储的时间序列包括第一时间粒度的时间序列,以 及第二时间粒度的时间序列;其中
[0117] 在同一时段中,当所述第一时间粒度中至少两个时间单元的时长之和等于所述第 二时间粒度中的一个时间单元的时长,则所述第一时间粒度中至少两个时间单元对应的真 实时间序列值之和等于所述第二时间粒度中的一个时间单元对应的真实时间序列值。
[0118] 进一步地,如图8示出的本发明提供的时间序列预测系统的另一实施例的结构示 意图,时间序列预测系统60包括多维划分模块600、时间序列获取模块602、预测模型生成 模块604和预测模块606,其中多维划分模块600还可以包括第一划分单兀6000和第二划 分单元6002,时间序列获取模块602可以包括第一获取单元6020和第二获取单元6022,其 中
[0119] 第一划分单元6000用于对时间序列的时间粒度进行划分,划分出至少两级时间 粒度;
[0120] 第二划分单元6002用于根据划分出的
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1