一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据预测方法、系统、设备及存储介质与流程

2022-09-07 14:33:33 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及数据预测方法、系统、设备及存储介质。


背景技术:

2.随着云计算技术的发展,云计算应用场景越来越多,云资源的调度工作也变得越来越复杂。
3.为了满足市场上不同用户的各种各样的任务需求,会相应提供各种各样的云资源,种类繁多。虽然能为用户提供多样化云资源方案,但是也会使得云资源调度会变得复杂起来。在现有技术当中,云服务提供方虽然具有一定的云资源调度的预测能力,但是各种预测算法或者预测模型,对用于参与运算的数据类型要求较高,或者对任务场景有一定限制。比如,对于规律性不强的云资源调度相关数据难以实现云资源调度相关的准确预测。因此,这些云服务提供方所提出的云资源调度预测方案都具有一定局限性,无法满足多种多样调度事件的云资源调度中的预测需求。


技术实现要素:

4.为解决或改善现有技术中存在的问题,本技术各实施例提供了数据预测方法、系统、设备及存储介质。
5.第一方面,在本技术的一个实施例中,提供了一种数据预测方法。该方法包括:
6.获取目标事件的时间序列数据;
7.分析所述时间序列数据,以判别是否能基于所述时间序列数据进行事件预测;
8.若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件。
9.第二方面,在本技术的一个实施例中,提供了一种数据预测方法。该方法包括:
10.获取目标事件的时间序列数据;
11.分析所述时间序列数据,以判别是否能基于所述时间序列数据进行事件预测;
12.若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件;
13.响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息;
14.若包含有所述时序层级信息,则对所述预测事件进行层级预测修正。
15.第三方面,在本技术的一个实施例中,提供了一种数据预测方法。该方法包括:
16.获取目标事件的时间序列数据;
17.响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息;
18.若包含有所述时序层级信息,则对目标事件进行层级预测。
19.第四方面,在本技术的一个实施例中,提供了一种数据预测系统,所述系统包括:
20.算法选择器,用于获取目标事件的时间序列数据;分析所述时间序列数据,以判别是否能基于所述时间序列数据进行事件预测;若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件;
21.知识库模块,用于若不能进行事件预测,则利用知识库,从时间序列数据中挖掘异常事件。
22.第五方面,在本技术的一个实施例中,提供了一种电子设备,包括存储器及处理器;其中,
23.所述存储器,用于存储程序;
24.所述处理器,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于实现第一方面所述的一种数据预测方法或第二方面所述的一种数据预测方法或第三方面所述的一种数据预测方法。
25.第六方面,在本技术的一个实施例中,提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如第一方面所述的一种数据预测方法或第二方面所述的一种数据预测方法或第三方面所述的一种数据预测方法。
26.本技术实施例提供的技术方案中,在云资源调度场景中,云资源是动态变化的,能够获取到云资源调度场景相关的事件,这些事件具有明显的动态时序特性,因此,为了便于对相关事件进行预测,可以获取到该相关事件的时间序列数据。通过对时间序列数据的分析,判断该时间序列数据是否为可预测事件。若可预测,则需要为其确定合适的预测算法,并利用该预测算法对时间序列数据进行预测处理得到预测事件,从而更好的对后续工作进行指导。本方案是依据时间序列数据对事件进行预测处理的,而不受事件类型因素、场景类型等的限制,使得本方案的能够被更广泛应用。
27.此外,若经过分析确定该时间序列数据为不可预测,则可以利用预先建立的知识库对时间序列数据挖掘异常事件。基于上述方案,可以对各种可预测和不可预测事件所呈现出的时间序列数据进行分析处理后,都能够确定或挖掘出对应的事件模式,具有更好的通用效果。
附图说明
28.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
29.图1为本技术实施例提供的数据预测方法的流程示意图;
30.图2为本技术实施例提供的确定预测算法的流程示意图;
31.图3为本技术实施例提供的一种挖掘异常事件方法的流程示意图;
32.图4为本技术实施例举例说明的时序异常类型的示意图;
33.图5为本技术实施例提供的一种异常事件挖掘方法的流程示意图;
34.图6为本技术实施例提供的一种层级预测方法的流程示意图;
35.图7为本技术实施例提供的一种基于父子层级关系进行层级预测方法的流程示意
图;
36.图8为本技术实施例提供的一种子层级关系进行层级预测方法的流程示意图;
37.图9为本技术实施例提供的一种三层层级关系示意图;
38.图10为本技术实施例提供的另一种数据预测方法的流程示意图;
39.图11为本技术实施例提供的再一种数据预测方法的流程示意图;
40.图12为本技术实施例提供的一种数据预测系统的结构示意图;
41.图13为本技术实施例提供的算法选择器的结构示意图;
42.图14为本技术实施例提供的知识库模块的结构示意图;
43.图15为本技术实施例提供的一种层级预测结构示意图;
44.图16为本技术实施例提供的一种数据预测装置的结构示意图;
45.图17为本技术实施例提供的一种电子设备的结构示意图;
46.图18为本技术实施例提供的另一种数据预测装置的结构示意图;
47.图19为本技术实施例提供的另一种电子设备的结构示意图;
48.图20为本技术实施例提供的再一种数据预测装置的结构示意图;
49.图21为本技术实施例提供的再一种电子设备的结构示意图。
具体实施方式
50.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
51.在本技术的说明书、权利要求书及上述附图中描述的一些流程中,包含了按照特定顺序出现的多个操作,这些操作可以不按照其在本文中出现的顺序来执行或并行执行。操作的序号如101、102等,仅仅是用于区分各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。此外,下文描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
52.随着云计算技术的发展,越来越多的场景中。大规模云计算服务需要将云资源合理及时的供应、调配、规划、经营运营等等。从而才可以为云的用户提供优质高效的服务。云资源所应用的场景不同,对外所呈现出的场景特性也不同。比如,在电商应用场景中,对云资源的调度具有较明显的节假日暴增的特性;在流媒体应用场景中,对云资源的调度具有较明显的时段增减特性。因此,有的预测模型,是利用某些具有明显场景特性的场景参数训练得到的,很难适用于其他场景,也就不具有很好的通用性。但是,在实际应用中,云资源会根据实际需求被调用到各种不同场景中,若仅对单一场景的云资源调度相关事件进行预测,则无法满足对资源整体统筹调度管理的需求。各种场景类型的云资源调度相关事件都具有时间序列数据,因此,本技术方案提出利用时间序列数据实现对各种不同场景的相关事件预测。
53.在本技术技术方案中,具体工作过程,将在下述实施例中说明。
54.如图1为本技术实施例提供的数据预测方法的流程示意图。该数据预测方法的执
行主体可以是服务端设备如图1所示,该数据预测方法包括如下步骤:
55.101:获取目标事件的时间序列数据。
56.102:分析时间序列数据,以判别是否能基于所述时间序列数据进行事件预测。
57.103:若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件。
58.这里所说的目标事件,比如可以是某存储资源事件、网络流量事件等等。在云资源调度场景中,云资源中随时间变化而云资源的属性值动态变化的特性,所以具有动态时序特性的云上资源属性值,就是一种时间序列数据。这里所说的时间序列数据,可以是在这些事件发生或者执行过程中,按照时间顺序采集到各类相关数据,或者基于日志数据获取到时间序列数据。换言之,时间序列数据表示目标事件的属性值随时间动态变化得到的相关数据。每条时间序列数据都有其唯一对应的身份标识(id)。在各种类型场景中进行云资源调度,都会生成对应的时间序列数据,因此,基于时间序列数据进行事件模式的预测具有更好的通用性。
59.在获取到时间序列数据之后,会先对时间序列数据进行预处理,以消除不可控因素对时间序列数据后续预测工作造成干扰。在进行预处理的时候,可针对明显的大毛刺检测、缺失值检测、周期性检测等问题进行预处理。
60.举例来说,对大毛刺进行检测及平滑处理方式具体如下:
61.首先进行大毛刺异常检测,为了提升时效性,首先采用“上下分位点”来初步过滤疑似异常,然后采用选择性搜索算法(select search,ss)进行大毛刺异常检测,ss算法原理如下,为了检测xi,通过滑动窗口,当前窗口为
62.统计量ssi为:
63.对于“突增异常”的统计量:
64.ssi=count((x
i-x
i-j
)>threshold
spike
),j=1,...,t
65.对于“骤降异常”的统计量:
66.ssi=count((x
i-j-xi)>threshold
dip
),j=1,...,t
67.其中:
[0068][0069]
count(f(.))是统计其中全部f(.)为true的个数。
[0070]
异常检测发现的大毛刺进行剔除,随后采用“线性插值算法”进行平滑处理。除了线性插值外,可以使用基于时序分布的插值算法。
[0071]
对缺失值检测及平滑处理方式具体如下:
[0072]
缺失值检测及平滑算法:对于检测出的缺失值后同样采用“线性插值算法”进行平滑处理。除了线性插值外,可以使用基于时序分布的插值算法。
[0073]
对周期性检测及周期计算算法方式如下:
[0074]
虑到数据规模和时效性,可以采用快速傅立叶变换(fast fourier transform,fft)算法将时序数据从时域转到频域,然后在频域里判断最大振幅是否超过一定阈值。如果最大振幅小于一定阈值则无周期,如果最大振幅大于一定阈值,则计算周期值为:int(t/f),其中t为时序长度,f为最大振幅对应频率。周期检测除了使用fft算法外,也可以使用自
相关算法。
[0075]
上述三种预处理方式,也按照一定的先后顺序依次执行对时间序列数据的预处理操作。
[0076]
在利用上述方式完成对时间序列数据的预处理工作之后,可以对时间序列数据进行进一步的分析处理。具体来说:
[0077]
对时间序列数据进行特征提取,根据提取到的特征内容,确定时间序列数据对应的特征类型以及时序类型。特征类型可以分为:单时序特征、联合变量特征和场景经验特征。其中,单时序特征、联合变量特征可以利用特征提取算法进行智能化提取,经验特征是根据先验后提供的特征。具体的特征内容和提取方式,将在下述实施例中进行具体举例说明,这里就不再重复赘述。进而,根据特征提取结果,进一步判断时间序列数据是否可以用于进行事件预测。
[0078]
在实际应用中,并不是所有的时间序列数据是有价值、有规律的数据。因此,根据具体分析结果,对于可以进行事件预测的,则采用适配的预测算法基于时间序列数据进行预测,具体预测算法的选择以及预测过程,将在下述实施例中进行说明。
[0079]
若经过分析判断结果为不能基于时间序列数据进行事件预测,则可以利用预先建立的知识库从时间序列数据中挖掘出异常事件。这里所说的知识库,可以理解为:存储有各种事件模式及相关时间序列数据,能够用于对各时间序列数据的不可预测性给出能够被需求方理解的白盒化分析解释,又可以对于算法的预测结果做后修正;同时还可以把积累的知识库反馈给需求方,以便帮助需求方更好的完成云资源的调度、协调任务。具体的挖掘异常事件相关方案将在下述实施例中进行举例说明,这里就不再重复赘述。通过上述方案,利用时间序列数据实现对事件的预测,能够有效避免因为场景参数、场景特性不同对预测通用性的限制,适用于各种场景中的事件预测需求,具有更好的通用性。
[0080]
在本技术的一个或者多个实施例中,还包括:利用所述知识库,分析所述时间序列数据所属的事件模式;基于所述事件模式对应的时间序列数据,对预测事件或异常事件进行修正。
[0081]
如前文所述,在知识库中预先存储有各种事件模式及相关时间序列数据。在通过前文所述的方式对时间序列数据进行分析并且确定该目标事件为能够进行预测的事件。进而,为其选择适配的预测算法执行预测工作,预测得到某种事件模式。由于在实际应用中,可能有一些事件模式是比较相近的,为了避免预测错误,或者提高预测准确性,可以对该预测结果进行进一步修正。这里可以利用知识库进行进一步修正。具体来说,可以将此前得到的待预测的时间序列数据与知识库中各事件模式对应的时间序列数据进行相似度计算,进而利用相似度最高的事件模式对此前预测得到的事件模式进行修正。
[0082]
为了便于理解,下面具体举例说明。例如,假设预测结果得到事件模式为:每周周末的网络资源、存储资源都具有明显增长情况,而周一则会明显回落。经过与知识库的时间序列数据进行匹配后,所找到的最为相似的事件模式中,还具有节假日网络资源、存储资源暴增的情况。基于此,对预测得到的事件模式进行修正,得到修正后的事件模式为:每周周末以及节假日网络资源、存储资源都出现明显增长情况,工作日则会明显回落。
[0083]
如图2为本技术实施例提供的确定预测算法的流程示意图。从图2中可以看到,基于所述时间序列数据,确定适配的预测算法,具体包括如下步骤:
[0084]
201:获取所述时间序列数据中包含的数据特征。
[0085]
202:确定所述数据特征的特征类型。
[0086]
203:根据所述特征类型,确定所述时间序列数据的时序类型。
[0087]
204:若所述时序类型为单时序类型,则基于所述单时序类型中包含的第一数据特征,从候补算法库中确定目标单时序预测算法。
[0088]
205:若所述时序类型为多联合变量类型,则基于所述多联合变量类型中包含的第二数据特征,从所述候补算法库中确定目标多联合变量预测算法。
[0089]
需要说明的是,在候补算法库当中存储有多种预测算法,统计类预测算法、机器学习类预测算法和深度学习类预测算法等。可以根据时间序列数据的数据量大小、数据关系、数据类型、场景类型等选择出目标预测算法。
[0090]
如前文所述可知,基于时间序列数据所提取到数据特征的特征类型可以分为:单时序特征、联合变量特征和经验特征。单时序特征对应的时序类型为单时序类型,联合变量特征对应的时序类型为多联合变量类型。
[0091]
其中,单时序特征包含:统计特征:时序的均值、中位数、分位数、方差等;分布特征:峰度、偏度等;时序特征:时序的平稳性、周期性等;熵特征:一阶样本熵、装箱熵等;其他特征:零占比、缺失比例等。
[0092]
多变量联合特征包含:空间相关性特征:pearson相关性、spearman相关性等;时间相关性特征:动态时间归整(dynamic time warping,dtw)相关性、基于相关性的距离(shaped based distance,sbd)相关性等。
[0093]
经验特征包含:动态特征:根据实际经验先验提供的特征是随时间变化的,比如网络流量预测可以加入消费网络流量的资源使用特征(比如cpu核数等),而资源使用特征就是数据特征。静态特征:根据实际经验先验提供的特征长期内不随时间变化,一般都是属性特征,比如预测时序id所属的地区、商品属性等等。
[0094]
如果根据数据特征判断特征类型为单时序特征,则进一步从候补算法库比较并选择出适用于该单时序类型预测需求的目标预测算法。如果根据数据特征判断特征类型为联合变量特征,进一步从候补算法库中比较并选择出适用于该多联合变量类型预测需求的目标预测算法。这里所说的目标预测算法,可以理解为为单时序类型和多联合变量类型分别确定的匹配的预测算法,能够取得预期的预测结果。
[0095]
决策器经过决策后产出目标预测算法,然后使用该预测算法对数据进行预测,如果该算法是单时序预测算法,则直接输入预处理后时序进行预测;如果该单时序预测算法是周期类算法,则可以从前面提取到的数据特征拿到周期特征进行辅助预测。如果单时序预测算法是多变量联合预测,则该算法会取前面数据特征产出的各种特征进行联合预测。
[0096]
上述实施例针对可以预测情况下的事件预测过程进行举例说明。下面将针对通过分析确定事件为不可预测事件的情况下的预测、挖掘等相关技术方案进行举例说明。
[0097]
如图3为本技术实施例提供的一种挖掘异常事件方法的流程示意图。从图3中可以看到,利用知识库,从时间序列数据中挖掘异常事件,具体包括如下步骤:
[0098]
301:确定所述时间序列数据的时序异常类型。
[0099]
302:根据所述时序异常类型对所述时间序列数据进行处理。
[0100]
303:利用所述知识库,从处理后的时间序列数据中挖掘异常事件。
[0101]
知识库中存储的事件模式,可以基于先验经验总结获取,也可以基于算法挖掘。这里所说的先验经验,可以是通过用户报备得到的经验、节假日特殊场景模式经验等等。
[0102]
在实际应用中,一般时间序列数据不可预测多是因为时间序列数据无明显周期且不平稳导致。而时序无周期且不平稳,往往是由于突发的时序异常导致,这些时序异常类型可以分为“断层异常”、“频率波动异常”和“大毛刺异常”等,对应的事件则可以称为异常事件。在通过针对上述各种异常的挖掘工作,确定时序异常类型后,可以进一步生成针对该时间序列数据的白盒化解释,并将该白盒化解释提供给需求方,以便需求方了解到不可预测以及发生异常的原因。以便需求方可以根据白盒化解释进一步分析该异常发生是否为某种场景中的正常现象,还是需要进步排查并解决。
[0103]
如图4为本技术实施例举例说明的时序异常类型的示意图,从左到右异常为“断层异常”示意图、“频率波动异常”示意图和“大毛刺异常”示意图。
[0104]
针对各种时序异常类型所采取的挖掘算法如下:
[0105]
断层异常检测算法t-test:通过滑动窗口方式,将窗口切分成前后两个窗口{x
pre
}和{x
post
},上升断层异常和下降断层异常统计量t分别为:
[0106][0107][0108]
其中sp计算如下,var是样本方差:
[0109][0110]
频率波动异常算法f-test:
[0111]
对于“低频转高频异常”的统计量:
[0112][0113]
对于“高频转低频异常”的统计量:
[0114][0115]
大毛刺异常检测算法使用ss算法。
[0116]
需要说明的是,虽然前文表述中有对时间序列数据的预处理操作,但是预处理操作中,仅仅是对比较明显的毛刺、缺失值等进行简单处理,以便后续能够明确区分哪些是可预测的时间序列数据,哪些是不可预测的时间序列数据。预处理工作并不会对时序异常类型的识别以及挖掘相关工作造成负面影响。
[0117]
如图5为本技术实施例提供的一种异常事件挖掘方法的流程示意图。从图5中可以
看到,所述利用所述知识库,从处理后的时间序列数据中挖掘异常事件,具体包括如下步骤:
[0118]
501:确定所述处理后的时间序列数据对应的异常时刻。
[0119]
502:将所述异常时刻前的时间窗口作为目标时段。
[0120]
503:确定所述目标时段对应的目标时间序列数据。
[0121]
504:利用所述知识库,从所述目标时间序列数据中挖掘异常事件。
[0122]
如前文所述可知,有些时间序列数据之所以无法进行预测是因为其中某些时序异常导致的。因此,为了消除该时序异常对预测工作的影响,可以结合异常发生时刻及以前的历史时序进行综合预测。具体来说,
[0123]
发现异常后,提取该异常发生时间,也就是异常时刻t及之前一段时间窗口t的时间序列数据。然后与知识库里存储的事件模式一一进行时间序列数据的相似度分析。相似度算法基于经典的时序dtw算法(也可以是sbd算法)。若查找到了相似度满足阈值的事件模式,则将该事件模式作为异常事件挖掘得到的预测结果。需要说明的是,利用本实施例方式对异常事件进行挖掘的时候,若目标时间序列数据中也有相同的异常时刻,那么可以直接进行相似度分析,而不需要对异常时刻对应的时间序列数据进行处理。
[0124]
例如,假设发生异常的时刻为t,对应的往前推的时间窗口为t。将时间窗口t作为目标时段。该目标时段对应的时间序列数据为目标时间序列数据。进而,依据目标时间序列数据和知识库挖掘异常事件。由于在时间序列数据中存在影响分析的异常事件,因此,可以通过在历史记录的时间窗口t对应的时间序列数据进行事件模式的挖掘。需要说明的是,这里所说的时间窗口t可以是较长一段时间,从而能够更好地挖掘出时间序列数据的规律或者周期。
[0125]
若基于知识库为得到想要的挖掘结果,则还可以采用其他方式进行异常事件挖掘,具体如下:
[0126]
若利用所述目标时间序列数据,从所述知识库中未适配到对应的事件模式,则从历史数据中确定所述异常时刻对应的历史时间序列数据;
[0127]
确定所述目标时间序列数据与所述历史时间序列数据之间的相似度;
[0128]
若所述相似度满足相似度阈值,则将所述目标时间序列数据对应的事件模式作为新增事件模式添加到所述知识库。
[0129]
在实际应用中,如果没有在知识库中找到相似的事件模式,则把该时间序列数据历史同期相同时间段内时间序列数据拿出来进行相似度分析,如果相似则确定为某种隐藏的事件模式。将首先反馈给需求方进行确认,确认确实为新发现的隐藏的事件模式后,则将该事件模式新增到知识库里,以便为后续进行预测结果修正,或者为不可预测事件挖掘提供参考。具体如下:
[0130]
由于目标时间序列数据是基于时间窗口随机选择的一段数据,可能由于t时间窗口对应的时间序列数据过多等原因,导致无法利用目标时间序列数据从知识库中匹配到合适的事件模式。因此,根据异常时刻t从历史数据中找到对应时刻的历史时间序列数据。进而,分析目标时间序列数据与历史时间序列数据之间的相似度。此外,也可以将此前得到的时间序列数据与异常时刻t对应的历史时间序列数据进行相似度分析。当分析结果为,相似度满足相似度阈值时,则将该分析结果以及目标时间序列数据发送给需求方进行确认。由
需求方判断该目标时间序列数据是否表示一种新的事件模式,若是,则将目标时间序列数据和/或对应的事件模式添加到知识库当中,丰富知识库内容,以便后续进行事件预测处理的时候能够提供预测依据。
[0131]
如图6为本技术实施例提供的一种层级预测方法的流程示意图。从图6中可以看到,包括如下步骤:
[0132]
601:响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息。
[0133]
602:若包含有所述时序层级信息,则对所述预测事件和异常事件进行层级预测修正。
[0134]
需要说明的是,这里所说的层级关系,可以是云资源对应的各种不同的属性信息,这些属性信息具有层级关系。时间序列数据是基于各种不同属性信息在时间维度上组合得到的。比如,地区属性对应的地区层级关系,省市县的层级关系;商品属性对应的商品层级关系等等。随着事件的执行,层级关系可能会随时间发生变化,得到又各种不同属性信息在时间维度上组成的时间序列数据。
[0135]
在实际应用中,进行层级预测修正的方式有两种:一种是基于父子层级关系进行层级预测,另一种是参考同一层级中其他子层级的事件模式进行层级预测。
[0136]
下面将分别具体举例说明。
[0137]
如图7为本技术实施例提供的一种基于父子层级关系进行层级预测方法的流程示意图。从图7中可以看到,所述若包含有所述时序层级信息,则基于所述时间序列数据进行层级预测,具体包括如下步骤:
[0138]
6021a:确定所述时间序列数据对应的层级,以及父子层级关系。
[0139]
6021b:基于所述父子层级关系确定父层级对应的事件模式。
[0140]
6021c:根据所述事件模式对应的所述时间序列数据对所述异常事件进行层级预测修正。
[0141]
参考同一个父层级下的其他兄弟层级事件模式:一旦同属于某个父层级下的其他时间序列数据都具有相同的事件模式(比如,具有相同或相似的周期性等),则该时间序列数据很大程度也具有该事件模式。
[0142]
由于低层级的数据特征(比如周期性特征)往往在高层级可以有更明显的体现。这是因为事件会在同一个父层级下的各个子层级间出现跳跃的特点例如,网络流量预测场景中,在两个region之间的流量可能随时间变化而走两个region下面的不同路径,这样在region这个高层级下面的不同路径的低层级就具有“事件模式跳跃”的特点。
[0143]
如图8为本技术实施例提供的一种子层级关系进行层级预测方法的流程示意图。从图8中可以看到,所述若包含有所述时序层级信息,则基于所述时间序列数据进行层级预测,包括:
[0144]
6022a:确定所述时间序列数据对应的层级,以及父子层级关系。
[0145]
6022b:基于所述父子层级关系确定同一子层级中其他子层级对应的事件模式。
[0146]
6022c:根据所述事件模式对应的所述时间序列数据对所述异常事件进行层级预测修正。
[0147]
同一个父层级下的各个子层级的时序模式也可以互相参考,因为隶属同一父层级
的各个子层级都属于相似时间序列数据,所以也具有相似的事件模式。假如,有多个子层级所具有的周期为t,那么该子层级大概率的周期也为t。基于这种在同一子层级当中利用横向参考的方式进行层级预测及修正。
[0148]
下面将对进行层级预测的预测算法进行举例说明。
[0149]
层级预测算法可以是“hierarchical forecasting”,该算法考虑到每个层级之前的关系,做全局优化的联合预测。如图9为本技术实施例提供的一种三层层级关系示意图。
[0150]
一般上层预测时序是下层时序简单加和关系:
[0151]
ya=y
aa
y
ab
y
aaa
y
aab
y
aac
y
aba
y
abb

yabc
ꢀꢀꢀ
(1)
[0152]
有:
[0153]
yb={y
aaa
,y
aab
,y
aac
,y
aba
,y
abb

yabc
}

[0154]

[0155]
y={ya,y
aa
,y
ab
,y
aaa
,y
aab
,y
aac
,y
aba
,y
abb
,y
abc
}

[0156]
所以算式(1)可以写作:
[0157]
y=syb[0158]
s为:
[0159][0160]
假设通过层级修正后我们可以把算式(2)改写为:
[0161][0162]
g就是原始预测结果经过修正的优化映射线性关系矩阵,目标化结果:
[0163][0164]
而wh为:
[0165][0166]
e就是预测残差:
[0167][0168]
进行层级预测的预测算法除了前文所说的“hierarchical forecasting”之外,还可以有“top-down”(只预测最高层级,然后根据历史低层级在高层级的比例逐层往下拆分),“bottom-up”(只预测低层级,然后根据聚合关系逐层往上聚合)等。
[0169]
基于同样的思路,本技术实施例还提出一种数据预测方法。如图10为本技术实施例提供的另一种数据预测方法的流程示意图。从图10中可以看到,所述方法包括:
[0170]
1001:获取目标事件的时间序列数据。
[0171]
1002:分析时间序列数据,以判别是否能基于所述时间序列数据进行事件预测。
[0172]
1003:若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预
测事件。
[0173]
1004:响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息。
[0174]
1005:若包含有所述时序层级信息,则对所述预测事件和所述异常事件进行层级预测修正。
[0175]
在实际应用中,在利用时间序列数据完成事件的可预测性判断工作后,可以进一步对事件预测结果进行层级预测修正。需要说明的是,进行层级预测的前提是时间序列数据具有时序层级信息,而且需求方(用户)提出有层级预测的需求。
[0176]
例如,获取到时间序列数据包括:周末华北中心站存储资源需求明显增多、节假日华北中心子站1存储资源需求明显增多。可见,在时间序列数据中存在时序层级信息。当接收到需求方对预测到的事件的层级预测需求之后,则基于时间序列数据对事件模式进行进一步预测修正。比如,得到子站的修正结果为:周末、节假日华北中心子站1存储资源需求明显增多。
[0177]
需要说明的是,这里所说的基于时间序列数据进行事件可预测性判断以及为可预测事件选择适配预测算法、层级预测算法选择以及计算过程,可以参考图1至图9对应的实施例,这里就不再重复赘述。
[0178]
基于同样的思路,本技术实施例还提供一种数据预测方法。如图11为本技术实施例提供的再一种数据预测方法的流程示意图。从图11中可以看到,该方法具体包括如下步骤:
[0179]
1101:获取目标事件的时间序列数据。
[0180]
1102:响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息。
[0181]
1103:若包含有所述时序层级信息,则对目标事件进行层级预测。
[0182]
获取到场景相关的时间序列数据之后,可以基于该时间序列数据进行进一步事件预测。
[0183]
在实际应用中,难免会遇到由于存在某些干扰因素,导致时间序列数据不可预测。因此,可以在进行层级预测之前,先基于时间序列数据进行分析。
[0184]
具体如下:
[0185]
获取目标事件的时间序列数据之后,还包括:分析时间序列数据,以判别是否能基于所述时间序列数据进行事件预测。若能进行事件预测,则基于所述时间序列数据,确定适配的预测算法,以利用所述预测算法对所述时间序列数据进行处理得到预测事件。若不能进行事件预测,则利用知识库,从时间序列数据中挖掘异常事件。
[0186]
需要说明的是,这里所说的基于时间序列数据进行事件可预测性判断以及为可预测事件选择适配预测算法、层级预测算法选择以及计算过程,可以参考图1至图9对应的实施例,这里就不再重复赘述。
[0187]
基于同样的思路,本技术实施例还提出一种数据预测系统。如图12为本技术实施例提供的一种数据预测系统的结构示意图。从图12中可以看到,所述系统包括:
[0188]
算法选择器121,用于获取目标事件的时间序列数据;分析所述时间序列数据,以判别是否能基于所述时间序列数据进行事件预测;若能进行事件预测,则利用预测算法对
所述时间序列数据进行处理得到预测事件;
[0189]
知识库模块122,用于若不能进行事件预测,则利用知识库,从时间序列数据中挖掘异常事件。
[0190]
除此之外,还包括输入数据格式转换模块123、预处理模块124、层级预测模块125、输出结果格式转换模块126、配置模块127。下面将针对各个模块进行展开说明。
[0191]
由于需求方的数据格式多样,为了方便需求方的快速接入,不需要工作人员单独提供指定格式数据,而是只要用户配置了对应的数据格式信息,就可以由本系统中的输入数据格式转换模块123和输出结果格式转换模块126自动进行格式转换。
[0192]
为了增强本系统的可扩展性,可以方便快速的接入各种需求场景,又可以让不同的需求场景保持个性化服务,本系统可以利用配置模块127以json配置文件的形式为每种需求场景单独配置个性化算法服务信息。
[0193]
如图13为本技术实施例提供的算法选择器的结构示意图。从图13中可以看到,在算法选择器中包含有特征模块、算法决策器、候补算法库。其中,特征模块用于提取数据特征并确定对应的特征类型及时序类型。经过特征提取后经过分析,可以分为可预测事件和不可预测事件。其中,可预测事件根据时序类型可以分为单时序类型和多联合变量类型。算法决策器则用于根据时序类型从候补算法库中为其适配目标算法。
[0194]
如图14为本技术实施例提供的知识库模块的结构示意图。从图14中可以看到,包括:异常分析(bad case analyzer,bca)模块、识别修正模块、知识库、挖掘模块。
[0195]
其中,识别修正模块用于利用所述知识库,分析所述时间序列数据所属的事件模式。基于所述事件模式对应的时间序列数据,对预测事件或异常事件进行修正。
[0196]
异常分析模块用于确定所述时间序列数据的时序异常类型。
[0197]
挖掘模块用于根据所述时序异常类型对所述时间序列数据进行处理;利用所述知识库,从处理后的时间序列数据中挖掘异常事件。
[0198]
具体挖掘方式包括:确定所述处理后的时间序列数据对应的异常时刻;将所述异常时刻前的时间窗口作为目标时段;确定所述目标时段对应的目标时间序列数据;利用所述知识库,从所述目标时间序列数据中挖掘异常事件。若利用所述目标时间序列数据,从所述知识库中未适配到对应的事件模式,则从历史数据中确定所述异常时刻对应的历史时间序列数据;确定所述目标时间序列数据与所述历史时间序列数据之间的相似度;若所述相似度满足相似度阈值,则将所述目标时间序列数据对应的事件模式作为新增事件模式添加到所述知识库。
[0199]
如图15为本技术实施例提供的一种层级预测结构示意图。从图15中可以看到,包括:利用层级关系修正模块和预测算法模块。
[0200]
利用层级关系修正有两种方式,分别为:响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息;若包含有所述时序层级信息,则对所述预测事件和异常事件进行层级预测修正。一种层级关系修正方式为:确定所述时间序列数据对应的层级,以及父子层级关系;基于所述父子层级关系确定父层级对应的事件模式;根据所述事件模式对应的所述时间序列数据对所述异常事件进行层级预测修正。
[0201]
另一种利用层级关系修正方式为:确定所述时间序列数据对应的层级,以及父子层级关系;基于所述父子层级关系确定同一子层级中其他子层级对应的事件模式;根据所
述事件模式对应的所述时间序列数据对所述异常事件进行层级预测修正。
[0202]
基于同样的思路,本技术实施例还提供一种数据预测装置。如图16为本技术实施例提供的一种数据预测装置的结构示意图。该数据预测装置包括:
[0203]
获取模块161,用于获取目标事件的时间序列数据。
[0204]
分析模块162,用于分析时间序列数据,以判别是否能基于所述时间序列数据进行事件预测。
[0205]
算法确定模块163,用于若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件。
[0206]
可选地,还包括:挖掘模块164,用于若不能进行事件预测,则利用知识库,从时间序列数据中挖掘异常事件。
[0207]
可选地,还包括修正模块165,用于利用所述知识库,分析所述时间序列数据所属的事件模式;基于所述事件模式对应的时间序列数据,对预测事件或异常事件进行修正。
[0208]
可选地,算法确定模块163,还用于获取所述时间序列数据中包含的数据特征;确定所述数据特征的特征类型;根据所述特征类型,确定所述时间序列数据的时序类型;若所述时序类型为单时序类型,则基于所述单时序类型中包含的第一数据特征,从候补算法库中确定目标单时序预测算法;若所述时序类型为多联合变量类型,则基于所述多联合变量类型中包含的第二数据特征,从所述候补算法库中确定目标多联合变量预测算法。
[0209]
可选地,挖掘模块164,还用于确定所述时间序列数据的时序异常类型;
[0210]
根据所述时序异常类型对所述时间序列数据进行处理;
[0211]
利用所述知识库,从处理后的时间序列数据中挖掘异常事件。
[0212]
可选地,挖掘模块164,还用于确定所述处理后的时间序列数据对应的异常时刻;
[0213]
将所述异常时刻前的时间窗口作为目标时段;
[0214]
确定所述目标时段对应的目标时间序列数据;
[0215]
利用所述知识库,从所述目标时间序列数据中挖掘异常事件。
[0216]
可选地,挖掘模块164,还用于若利用所述目标时间序列数据,从所述知识库中未适配到对应的事件模式,则从历史数据中确定所述异常时刻对应的历史时间序列数据;
[0217]
确定所述目标时间序列数据与所述历史时间序列数据之间的相似度;
[0218]
若所述相似度满足相似度阈值,则将所述目标时间序列数据对应的事件模式作为新增事件模式添加到所述知识库。
[0219]
可选地,还包括层级预测模块166,用于响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息;
[0220]
若包含有所述时序层级信息,则对所述预测事件和异常事件进行层级预测修正。
[0221]
可选地,层级预测模块166,还用于确定所述时间序列数据对应的层级,以及父子层级关系;基于所述父子层级关系确定父层级对应的事件模式;根据所述事件模式对应的所述时间序列数据对所述异常事件进行层级预测修正。
[0222]
可选地,层级预测模块166,还用于确定所述时间序列数据对应的层级,以及父子层级关系;基于所述父子层级关系确定同一子层级中其他子层级对应的事件模式;根据所述事件模式对应的所述时间序列数据对所述异常事件进行层级预测修正。
[0223]
本技术一个实施例还提供一种电子设备。如图17为本技术实施例提供的一种电子
设备的结构示意图。该电子设备包括存储器1701、处理器1702及通信组件1703;其中,
[0224]
所述存储器1701,用于存储程序;
[0225]
所述处理器1702,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于:
[0226]
获取目标事件的时间序列数据;
[0227]
分析时间序列数据,以判别是否能基于所述时间序列数据进行事件预测;
[0228]
若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件。
[0229]
上述存储器1701可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0230]
进一步地,本实施例中的所述处理器1702可以具体是:可编程交换处理芯片,该可编程交换处理芯片中配置有数据复制引擎,能对接收到的数据进行复制。
[0231]
上述处理器1702在执行存储器中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。进一步,如图17所示,电子设备还包括:电源组件1704等其它组件。
[0232]
本技术实施例还提供一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行图1对应实施例所述的方法。
[0233]
本技术实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图1对应实施例所述的方法。
[0234]
基于同样的思路,本技术实施例还提供另一种数据预测装置。如图18为本技术实施例提供的另一种数据预测装置的结构示意图。该数据预测装置包括:
[0235]
获取模块181,用于获取目标事件的时间序列数据。
[0236]
分析模块182,用于分析时间序列数据,以判别是否能基于所述时间序列数据进行事件预测。
[0237]
算法确定模块183,用于若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件。
[0238]
判断模块184,用于响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息。
[0239]
修正模块185,用于若包含有所述时序层级信息,则对所述预测事件和所述异常事件进行层级预测修正。
[0240]
本技术实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图10对应实施例所述的方法。
[0241]
本技术一个实施例还提供一种电子设备。该电子设备为计算单元中备节点电子设备。如图19为本技术实施例提供的另一种电子设备的结构示意图。该电子设备包括存储器1901、处理器1902及通信组件1903;其中,
[0242]
所述存储器1901,用于存储程序;
[0243]
所述处理器1902,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于:
[0244]
获取目标事件的时间序列数据;
[0245]
分析所述时间序列数据,以判别是否能基于所述时间序列数据进行事件预测;
[0246]
若能进行事件预测,则利用预测算法对所述时间序列数据进行处理得到预测事件;
[0247]
响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息;
[0248]
若包含有所述时序层级信息,则对所述预测事件进行层级预测修正。
[0249]
上述存储器1901可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0250]
进一步地,本实施例中的所述处理器1902可以具体是:可编程交换处理芯片,该可编程交换处理芯片中配置有数据复制引擎,能对接收到的数据进行复制。
[0251]
上述处理器1902在执行存储器中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。进一步,如图19所示,电子设备还包括:电源组件1904等其它组件。
[0252]
本技术实施例还提供一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行图10对应实施例所述的方法。
[0253]
本技术实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图10对应实施例所述的方法。
[0254]
基于同样的思路,本技术实施例还提供再一种数据预测装置。如图20为本技术实施例提供的再一种数据预测装置的结构示意图。该数据预测装置包括:
[0255]
获取模块2001,用于获取目标事件的时间序列数据。
[0256]
判断模块2002,用于响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息。
[0257]
修正模块2003,用于若包含有所述时序层级信息,则对目标事件进行层级预测。
[0258]
本技术实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图11对应实施例所述的方法。
[0259]
本技术一个实施例还提供一种电子设备。该电子设备为计算单元中备节点电子设备。如图21为本技术实施例提供的再一种电子设备的结构示意图。该电子设备包括存储器2101、处理器2102及通信组件2103;其中,
[0260]
所述存储器2101,用于存储程序;
[0261]
所述处理器2102,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于:
[0262]
获取目标事件的时间序列数据;
[0263]
响应于用户提出的层级预测请求,判断所述时间序列数据中是否包含有时序层级信息;
[0264]
若包含有所述时序层级信息,则对目标事件进行层级预测。
[0265]
上述存储器2101可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0266]
进一步地,本实施例中的所述处理器2102可以具体是:可编程交换处理芯片,该可编程交换处理芯片中配置有数据复制引擎,能对接收到的数据进行复制。
[0267]
上述处理器2102在执行存储器中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。进一步,如图21所示,电子设备还包括:电源组件2104等其它组件。
[0268]
本技术实施例还提供一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行图11对应实施例所述的方法。
[0269]
本技术实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图11对应实施例所述的方法。
[0270]
基于上述实施例,在云资源调度场景中,云资源是动态变化的,能够获取到云资源调度场景相关的事件,这些事件具有明显的动态时序特性,因此,为了便于对相关事件进行预测,可以获取到该相关事件的时间序列数据。通过对时间序列数据的分析,判断该时间序列数据是否为可预测事件。若可预测,则需要为其确定合适的预测算法,并利用该预测算法对时间序列数据进行预测处理得到预测事件,从而更好的对后续工作进行指导。本方案是依据时间序列数据对事件进行预测处理的,而不受事件类型因素、场景类型等的限制,使得本方案的能够被更广泛应用。
[0271]
此外,若经过分析确定该时间序列数据为不可预测,则可以利用预先建立的知识库对时间序列数据挖掘异常事件。基于上述方案,可以对各种可预测和不可预测事件所呈现出的时间序列数据进行分析处理后,都能够确定或挖掘出对应的事件模式,具有更好的通用效果。
[0272]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0273]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指
令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0274]
最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献