首页> 中国专利> 多周期时间序列数据分解方法、装置、设备及存储介质

多周期时间序列数据分解方法、装置、设备及存储介质

摘要

本发明公开了一种多周期时间序列数据分解方法、装置、设备及存储介质,属于信号处理技术领域。该方法包括:获取原始多周期时间序列数据及其多个周期参数;根据多个周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;基于多个高通滤波器的截止频率,利用多个高通滤波器从原始多周期时间序列数据中分解得到多个周期分量;利用HP滤波器和低通滤波器从剩余多周期时间序列数据中分解得到趋势分量;基于原始多周期时间序列数据、多个周期分量和趋势分量,得到多周期时间序列数据分解结果。本发明区别于STL分解方法,利用多种不同的滤波器,以一种线性的方式依次对原始序列进行分解,无需进行多次循环迭代,从而提高了序列分解效率。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-09-13

    实质审查的生效 IPC(主分类):H03H17/02 专利申请号:202210514494X 申请日:20220512

    实质审查的生效

说明书

技术领域

本发明涉及信号处理技术领域,尤其涉及一种多周期时间序列数据分解方法、装置、设备及存储介质。

背景技术

相关技术中,对于多周期时间序列数据来说,可以采用经典时序分解算法、Holt-Winters算法和STL(Seasonal and Trend decomposition using Loess)算法等多种方法进行多周期时间序列数据的分解,其中,STL算法是目前最为通用的方法。

但是,STL算法分解多周期时间序列数据时,需要经过多次循环,反复执行去趋势、去周期、过滤、平滑等各种操作,直至最后得到的结果收敛才可以完成分解,计算过程繁琐复杂,分解效率低,且由于STL算法只有在循环次数足够大时才能得到较为准确的结果,因此在实际应用中STL算法难以将多周期时间序列数据中的不同频率成分完全分离开,分解后得到的分量误差较大、毛刺较多。而在日常生活中,很多数据的时间序列都具有多周期性质,比如电力数据中的家庭用电量和办公用电量等;网络数据中的网络流量等以及交通数据中的车流量和客流量等,也就是说,在实际应用中有大量的多周期时间序列数据都可能需要进行分解以便于后续处理,那么如果只是利用STL算法,会造成分解效率和分解精度较低的问题。

发明内容

本发明的主要目的在于提供一种多周期时间序列数据分解方法、装置、设备及存储介质,旨在解决现有技术中多周期时间序列数据的分解效率和分解精度较低的技术问题。

根据本发明的第一方面,提供了一种多周期时间序列数据分解方法,所述方法包括:

获取原始多周期时间序列数据以及所述原始多周期时间序列数据的多个周期参数;

根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;

基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量;

利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量;

基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果。

可选地,所述根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器,包括:

根据多个所述周期参数,确定对应的多个截止频率;

根据多个所述截止频率,得到多个所述高通滤波器;

从多个所述周期参数中筛选出周期最大的目标周期参数;

根据所述目标周期参数,得到所述低通滤波器和所述HP滤波器。

可选地,所述基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量,包括:

从多个所述高通滤波器中筛选出截止频率最大的高通滤波器作为目标滤波器;

利用所述目标滤波器对所述原始多周期时间序列数据进行滤波分解,分离出对应的周期分量;

从剩余所述高通滤波器中筛选出截止频率最大的高通滤波器,更新所述目标滤波器;

利用更新后的目标滤波器对所述原始多周期时间序列数据的剩余序列进行分解,分离出对应的周期分量;

返回执行所述从剩余所述高通滤波器中筛选出截止频率最大的高通滤波器,更新所述目标滤波器,直至所述原始多周期时间序列数据经过所有所述高通滤波器,得到对应的多个所述周期分量。

可选地,所述基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量之后,所述方法包括:

筛选出多个所述周期分量中周期小于预设周期阈值的至少一个待测周期分量;

针对任一所述待测周期分量,得到对应的频谱分量;

根据所述频谱分量,利用谱残差算法筛选出显著度不在预设显著度范围内的异常值,确定出所述异常值对应的异常点位置。

可选地,所述根据所述频谱分量,利用谱残差算法筛选出显著度不在预设显著度范围内的异常值,确定出所述异常值对应的异常点位置之后,所述方法还包括:

针对任一所述异常值,以对应的异常点为中心,得到预设范围内的多个序列值;

利用多个所述序列值的均值替换所述异常值,得到修复异常的周期分量;

根据所述修复异常的周期分量,更新对应的周期分量。

可选地,所述利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量,包括:

利用所述低通滤波器对所述分解出多个所述周期分量后的剩余多周期时间序列数据进行去噪处理;

利用所述HP滤波器从经过去噪处理的剩余多周期时间序列数据中分解出所述趋势分量。

可选地,所述基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果,包括:

根据所述原始多周期时间序列数据、修复异常后的周期分量以及所述趋势分量,得到残差分量;

根据所述修复异常后的周期分量、所述趋势分量以及所述残差分量,得到所述多周期时间序列数据分解结果。

根据本发明的第二方面,提供了一种多周期时间序列数据分解装置,所述装置包括:

序列获取模块,用于获取原始多周期时间序列数据以及所述原始多周期时间序列数据的多个周期参数;

滤波器生成模块,用于根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;

周期分解模块,用于基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量;

趋势分解模块,用于利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量;

结果输出模块,用于基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果。

根据本发明的第三方面,提供了一种多周期时间序列数据分解设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的多周期时间序列数据分解程序,所述多周期时间序列数据分解程序被所述处理器执行时实现第一方面的实现方式中的任一种可能的实现方式中所述的各个步骤。

根据本发明的第四方面,提供了一种计算机可读存储介质,其上存储有多周期时间序列数据分解程序,所述多周期时间序列数据分解程序被处理器执行时实现第一方面的实现方式中的任一种可能的实现方式中所述的各个步骤。

本发明实施例提出一种多周期时间序列数据分解方法、装置、设备及存储介质,通过多周期时间序列数据分解设备获取原始多周期时间序列数据以及所述原始多周期时间序列数据的多个周期参数;根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量;利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量;基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果。

本发明区别于现有技术中多周期时间序列数据的分解效率和分解精度较低的情况,利用多种不同的滤波器,以一种线性的方式依次对原始多周期时间序列数据进行分解,无需进行多次循环迭代即可将各个不同周期的周期分量以及趋势分量分解出来,从而提高了对多周期时间序列数据的分解效率;同时,由于本发明涉及的各种滤波器都是依照原始多周期时间序列数据的多个序列周期选取的,因此不同的滤波器都严格对应于不同周期或不同频率的多周期时间序列数据分量,从而可以利用这些滤波器将原始多周期时间序列数据中的不同周期分量严格按照不同的截止频率分解出来,进而提高了对多周期时间序列数据的分解精度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例方案涉及的硬件运行环境的多周期时间序列数据分解设备的结构示意图;

图2为本发明多周期时间序列数据分解方法的第一实施例的流程示意图;

图3为本发明图2中S202的步骤的细化流程示意图;

图4为本发明图2中S203的步骤的细化流程示意图;

图5为本发明图2中S203的步骤之后的流程示意图;

图6为本发明图2中S204的步骤的细化流程示意图;

图7为本发明图2中S205的步骤的细化流程示意图;

图8为本发明实施例涉及的多周期时间序列数据分解装置的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案是:获取原始多周期时间序列数据以及所述原始多周期时间序列数据的多个周期参数;根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量;利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量;基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到电力数据分解结果。

相关技术中,对于多周期时间序列数据来说,可以采用经典时序分解算法、Holt-Winters算法和STL(Seasonal and Trend decomposition using Loess)算法等多种方法进行多周期时间序列数据的分解,其中,STL算法是目前最为通用的方法。但是,STL算法分解多周期时间序列数据时,需要经过多次循环,反复执行去趋势、去周期、过滤、平滑等各种操作,直至最后得到的结果收敛才可以完成分解,计算过程繁琐复杂,分解效率低,且由于STL算法只有在循环次数足够大时才能得到较为准确的结果,因此在实际应用中STL算法难以将多周期时间序列数据中的不同频率成分完全分离开,分解后得到的分量误差较大、毛刺较多。而在日常生活中,很多数据的时间序列都具有多周期性质,比如电力数据中的家庭用电量和办公用电量等;网络数据中的网络流量等以及交通数据中的车流量和客流量等,也就是说,在实际应用中有大量的多周期时间序列数据都可能需要进行分解以便于后续处理,那么如果只是利用STL算法,会造成分解效率和分解精度较低的问题。

本发明提供一种解决方案,该方案用于多周期时间序列数据分解设备,利用多种不同的滤波器,以一种线性的方式依次对原始多周期时间序列数据进行分解,无需进行多次循环迭代即可将各个不同周期的周期分量以及趋势分量分解出来,从而提高了对多周期时间序列数据的分解效率;同时,由于本发明涉及的各种滤波器都是依照原始多周期时间序列数据的多个序列周期选取的,因此不同的滤波器都严格对应于不同周期或不同频率的多周期时间序列数据分量,从而可以利用这些滤波器将原始多周期时间序列数据中的不同周期分量严格按照不同的截止频率分解出来,进而提高了对多周期时间序列数据的分解精度。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例的说明书和权利要求书中的“第一”、“第二”用于区别类似的对象,而不必用于描述特定的顺序或者先后次序,应该理解这样的数据在适当的情况下可以互换,以便这里描述的实施例能够以除了这里图示或者描述的那些以外的顺序实施。

参照图1,图1为本发明实施例方案涉及的硬件运行环境的多周期时间序列数据分解设备的结构示意图。

如图1所示,该多周期时间序列数据分解设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的结构并不构成对多周期时间序列数据分解设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、序列获取模块、序列处理模块、结果输出模块以及多周期时间序列数据分解程序,其中,序列分解模块又可细化为滤波器生成模块、周期分解模块以及趋势分解模块。

在图1所示的多周期时间序列数据分解设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明多周期时间序列数据分解设备中的处理器1001、存储器1005可以设置在多周期时间序列数据分解设备中,多周期时间序列数据分解设备通过处理器1001调用存储器1005中存储的多周期时间序列数据分解程序,并执行本发明实施例提供的多周期时间序列数据分解方法。

基于上述硬件结构但不限于上述硬件结构,本发明提供一种多周期时间序列数据分解方法第一实施例。参照图2,图2为本发明多周期时间序列数据分解方法第一实施例的流程示意图。

本实施例中,该方法包括:

步骤S201,获取原始多周期时间序列数据以及所述原始多周期时间序列数据的多个周期参数;

在本实施例中,执行主体为多周期时间序列数据分解设备,该多周期时间序列数据分解设备可以是pc计算机,也可以是专用的具有多周期时间序列分解功能的电子设备,本实施例对此不作限制。该原始多周期时间序列数据可以是多周期时间序列数据分解设备主动请求后台数据库得到的信号,也可以是被动的接收用户输入所得到的信号。需要解释说明的是,本实施例中所涉及的时间序列为具有多周期性质的时间序列,即其中包含多个不同周期的周期分量,且相应的周期参数是已知的,具体可由任意周期检测方式得到,本实施例对此不做限制;在实际应用中,该原始多周期时间序列数据可以为各种类型的多周期时间序列数据,可以包括多周期电力时间序列数据如家庭用电量和办公用电量等;多周期网络时间序列数据如网络流量等以及多周期交通时间序列数据如车流量和客流量等,下面以家庭用电为例进行说明,对于家庭用电情况,可以根据分解结果观察一段时间内的(如一个月、一个季度或一年等)电力使用情况,进而还可以对该电力使用情况进行分析,检测并修复其中的异常值,或者预测未来一段时间内或某个时间点的电力数据等等。应当明确的是,此处仅是以电力数据中的家庭用电为例,不代表本方法仅能用于此,只要是涉及多周期分量、长期趋势分量的各种时间序列(如上述网络流量、车流量、客流量等以及其他任何具有多周期性质的时间序列),都可以采用此种方法进行分解,以便于后续分析,因此只要是具有多周期性质的时间序列都属于本发明的保护范围。

步骤S202,根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;

本实施例中,针对于原始多周期时间序列数据中包含的不同周期分量和趋势分量,由于不同分量的周期不同,即频率不同,因此可以利用不同截止频率的滤波器将各个分量按照频率大小依次分解出来。那么基于该原理和思路,首先就需要得到对应的滤波器。

继续以家庭用电为例,可以理解的,在实际生活中电力的使用情况在小尺度和大尺度内都会表现出一定的周期性,比如对于一天内的家庭用电情况,由于白天大部分人都在上班、上学等不在家,所以往往晚上的家庭用电会大于白天的家庭用电,而在凌晨大部分人都休息后,这一数据又会随之减少;又如对于一周内的家庭用电情况,同理,由于工作日大部分人都在上班、上学等不在家,所以往往周末的家庭用电会大于工作日的家庭用电;又如对于一年内的家庭用电情况,由于夏天、冬天的空调、风扇等电器使用较多,所以往往夏天、冬天的家庭用电会大于春天、秋天的家庭用电;可以理解的,对于其他的多周期时间序列数据其也具有类似性质,比如网络流量一般白天较多、晚上较少,周末家用网流量较多、工作日办公网流量较多;又如车流量工作日较多、周末较少、节假日又较多。又由于趋势分量一般都是基于长期趋势得到的,其周期较长,所以一般周期分量的频率会高于趋势分量的频率。故基于此即可将各周期分量和趋势分量分解出来,相应的剩下的就是残差分量,残差分量主要由噪音等不稳定的因素构成。

在一具体实施方式中,参照图3,图3为本发明图2中S202的步骤的细化流程示意图,所述根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器,包括:

步骤A10,根据多个所述周期参数,确定对应的多个截止频率;

步骤A20,根据多个所述截止频率,得到多个所述高通滤波器;

首先对于周期分量,如上所述,由于周期分量的频率一般高于趋势分量,因此本实施例中可以利用高通滤波器进行周期分量的分解。具体的,由于上述已经获取到了原始多周期时间序列数据中的各个周期参数,即可据此确定出对应的各个截止频率,其中,本实施例可以将截止频率设置为对应周期的两倍的倒数,比如某一周期为a,那么相应的截止频率可以设置为1/2a,那么相应的高通滤波器的截止频率也就是1/2a,即只有频率高于1/2a的周期分量才能通过该高通滤波器。需要强调的是,滤波器过滤的截止频率为两倍周期的倒数这个是一个推荐值,在实际应用中,用户可以根据实际需要进行修改,一般为1.5~3倍周期的倒数。

步骤A30,从多个所述周期参数中筛选出周期最大的目标周期参数;

步骤A40,根据所述目标周期参数,得到所述低通滤波器和所述HP滤波器。

其次对于趋势分量,如上所述,由于周期分量的频率一般高于趋势分量,因此本实施例中可以以周期分量的最大周期为标准,设置对应的低通滤波器和HP滤波器,以分解出趋势分量。具体的,首先将两倍最大周期的倒数设置为低通截止频率,得到对应的低通滤波器,然后,为了避免经过低通滤波器所得的分量信号不够平滑,本实施例还可以最大周期作为目标周期参数,得到对应的HP滤波器,以进行二次滤波,得到平滑的趋势分量。其中,HP滤波器可以去掉信号中频率较低的成分,即可分离出长期的趋势项,即趋势分量。

步骤S203,基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量;

在得到上述多个高通滤波器后,由于不同高通滤波器的截止频率不同,即可利用这些高通滤波器将不同的周期分量按照频率大小分解出来。

在一具体实施方式中,参照图3,图3为本发明图2中S203的步骤的细化流程示意图,所述基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量,包括:

步骤B10,从多个所述高通滤波器中筛选出截止频率最大的高通滤波器作为目标滤波器;

步骤B20,利用所述目标滤波器对所述原始多周期时间序列数据进行滤波分解,分离出对应的周期分量;

本实施例中,可以按照周期从小到大,即频率从大到小的顺序将各个周期分量依次过滤出来。继续以上述家用电力数据为例,为了方便说明,假设原始多周期时间序列数据即原始电力数据序列包括两种周期分量:周期为一天的分量和周期为一周的分量,且每半小时进行一次用电情况记录,那么两种分量对应的周期分别为24*2=48以及48*7=336,那么基于该种情况,首先可以在得到的所有高通滤波器中确定出截止频率最大的高通滤波器作为目标滤波器,即截止频率为1/(2×48)的高通滤波器,然后使原始电力数据序列通过该目标滤波器,由此即可将周期为48的周期分量分解出来,而其他分量由于频率低于截止频率,所以还会保留在时间序列中。

步骤B30,从剩余所述高通滤波器中筛选出截止频率最大的高通滤波器,更新所述目标滤波器;

步骤B40,利用更新后的目标滤波器对所述原始多周期时间序列数据的剩余序列进行分解,分离出对应的周期分量。

在分离出频率最高的周期分量后,即可开始进行周期第二小,频率第二高的周期分量分解。具体的,从剩余的高通滤波器中选取出截止频率最大的,即总体截止频率第二大的作为新的目标滤波器,即截止频率为1/(2×336)的高通滤波器,然后使滤除最大频率周期分量后的剩余序列通过该滤波器,由此即可将周期为336的周期分量分解出来,而其他分量由于频率低于截止频率,所以还会保留在时间序列中。

可以理解的,如果某一序列中包含多个不同的周期分量,则上述过滤步骤可以反复进行,每次都分解出剩余序列中频率最大的周期分量,直至该序列经过所有高通滤波器,得到所有周期分量,具体实施方式与上述基本一致,在此不在赘述。当然,在另外一种可行的方式中,也可以按照周期从大到小,即频率从小到大的顺序将各个周期分量依次过滤出来,也就是说,只要能按照周期分量的频率大小顺序,将序列依次按顺序经过各个滤波器,进行线性的分解操作即可。

进一步的,在分解得到上述多个周期分量之后,参照图5,图5为本发明图2中S203的步骤之后的流程示意图,所述基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量之后,所述方法包括:

步骤S501,筛选出多个所述周期分量中周期小于预设周期阈值的至少一个待测周期分量;

如上所述,多个周期分量是通过高通滤波器过滤得到的,因此,得到的是原始多周期时间序列数据中频率较高的部分,可以理解的,噪声等干扰因素一般也集中于高频部分,所以对于上述过滤得到的周期分量,特别是频率较高的小周期分量,其中很容易夹杂噪音等干扰因素,导致对应分量中出现一些异常点,故为了进一步提高分解的精度,需要对小周期分量进行异常检测和修复。故首先,就需要筛选出周期小于预设周期阈值的至少一个待测周期分量,然后针对于这些小周期的待测周期分量进行后续处理,其中,预设周期阈值可以根据实际需要和历史经验选择调整。

步骤S502,针对任一所述待测周期分量,得到对应的频谱分量;

步骤S503,根据所述频谱分量,利用谱残差算法筛选出显著度不在预设显著度范围内的异常值,确定出所述异常值对应的异常点位置;

本实施例中,可以在频域角度对小周期的待测周期分量进行异常检测和后续处理。具体的,首先将待测周期分量转换为对应的频谱分量,常用的转换方法可以为傅里叶变换、拉普拉斯变换以及Z变换等;然后,对于获得的频谱分量,可以利用谱残差算法对该频谱分量进行显著度检测,具体来说,首先确定出频域分量的幅值,为了方便计算,可以对幅值取对数转换成接近线性排列的直线,然后将取对数后的幅值与取对数后的平均值做差,根据该差值确定出显著度,如果该差值过大,即该显著度不在预设显著度范围内时,则说明该点存在异常,又由于时域信号和频域信号是对应的,所以该点对应的时域点也是异常的,如此即可确定出时域中的异常点位置。

步骤S504,针对任一所述异常值,以对应的异常点为中心,得到预设范围内的多个序列值;

步骤S505,利用多个所述序列值的均值替换所述异常值,得到修复异常的周期分量;

步骤S506,根据所述修复异常的周期分量,更新对应的周期分量。

如果经过上述步骤找出了至少一个异常值对应的异常点,那么为了得到精度更高的分解结果,就需要对这些异常值进行修复处理。具体的,本实施例中可以首先找出异常点周围内的多个正常值,比如10个,可以理解的,正常情况下一个信号的时域波形应该是比较平滑连续的,不会出现特别尖锐的波峰和波谷,因此,可以将该异常点周围的10个正常值的均值作为替换值对该异常点进行插值替换,如此一来该异常点对应的序列值就和其周围的正常序列值相差不大,从而得到平滑连续的时域周期分量,最后利用该平滑连续的时域周期分量更新对应的周期分量,即可在时域角度完成修复。如此一来,可以有效消除原始序列中异常点造成的影响,从而可以提高分解精度。

步骤S204,利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量;

在分解出上述周期分量后,原始多周期时间序列数据中高频的部分已经被过滤掉了,而长期趋势项,即趋势分量一般周期长、频率低,因此可以从剩余的低频成分中将趋势分量分解出来,在本实施例中,为了得到更加平滑的趋势分量,可以依次利用上述得到的低通滤波器和HP滤波器对剩余多周期时间序列数据进行两次分解。

在一具体实施方式中,参照图6,图6为本发明图2中S204的步骤的细化流程示意图,所述利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量,包括:

步骤C10,利用所述低通滤波器对所述分解出多个所述周期分量后的剩余多周期时间序列数据进行去噪处理;

如上所述,低通滤波器的截止频率是基于原始序列的最大周期进行设置的,也就是说,原始多周期时间序列数据中的所有周期分量和夹杂其中的噪声等高频分量都无法通过该低通滤波器。因此,即使在上述周期分量的分解过程中有一些残存的噪音等高频分量,在本步骤中也会将其完全滤除,以得到低频的趋势分量。

步骤C20,利用所述HP滤波器从经过去噪处理的剩余多周期时间序列数据中分解出所述趋势分量。

可以理解的,由于趋势分量的频率很低,所以其很容易受到其他成分的干扰,从而出现毛刺、不光滑的情况,所以为了使得最终得到的趋势分量有更好的质量、更加光滑,本实施例中还将使用HP滤波器对通过低通滤波器的序列分量进行二次滤波处理。由此,先经过低通滤波器过滤出低频的部分,再利用HP滤波器将得到的低频部分中夹杂的高频部分进一步过滤掉,由此即可得到更加光滑、质量更好的趋势分量,进而提高整个分解的精度。

步骤S205,基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果。

最后,在分解出上述各个周期分量以及趋势分量后,原始多周期时间序列数据中剩余的分量即为残差分量,而对于一个多周期时间序列来说,其一般就是由周期分量、趋势分量以及残差分量组成的,如此一来就完成了对原始多周期时间序列数据的分解,得到了多周期时间序列数据分解结果。其中,残差分量主要是由噪声等一些不稳定的因素组成的,其一般都是原始序列中的干扰成分,会显著影响后续进行数据分析和处理的准确性,因此,本实施例中由于可以得到精度更高、质量更好的周期分量和趋势分量,所以也有利于降低残差分量的影响,进而提高后续处理的准确性。

在一具体实施方式中,参照图7,图7为本发明图2中S205的步骤的细化流程示意图,所述基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果,包括:

步骤D10,根据所述原始多周期时间序列数据、修复异常后的周期分量以及所述趋势分量,得到残差分量;

步骤D20,根据所述修复异常后的周期分量、所述趋势分量以及所述残差分量,得到所述多周期时间序列数据分解结果。

首先,如上所述,对于一个多周期时间序列来说,其一般就是由周期分量、趋势分量以及残差分量组成的,因此,一般情况下在经过上述各种滤波分解得到周期分量和趋势分量之后,剩余的成分就是残差分量,当然,在本实施例中,由于对小周期分量和趋势分量都进行了更进一步的二次处理,即异常修复和二次滤波,所以为了保证所得多周期时间序列数据分解结果的精度,本实施例可以用原始多周期时间序列数据减去修复异常后的周期分量以及经过二次滤波的趋势分量,得到更为准确的残差分量,从而保证整个分解过程的精度。

需要补充说明的是,在完成整个分解过程之后,就可以根据分解的结果进行后续各种数据分析和实际应用。比如在电力数据检测场景中,经过上述分解首先可以定位出电力使用情况检测数据中的异常点并加以修复,进一步的,由于经过上述步骤可以得到精度更高、质量更好的周期分量和趋势分量,故还可以利用这些周期分量和趋势分量的规律,对未来一段时间内的电力使用情况进行更为准确的预测,当然还可以用于其他相关的数据分析处理过程,此外也可以用于对网络流量、车流量和客流量等具有多周期性质的数据的相关处理,都有利于提高分析处理的准确性;同时,由于本实施例中无需像STL算法那样进行反复多次的迭代循环,所以本实施例的原始序列的分解效率更高,进而也有利于提高后续数据分析处理的效率。

在本实施例中,一方面无需像STL算法那样进行反复多次的迭代循环,而是采用一种线性的方式,将原始序列依次通过各个滤波器即可,因此操作更加简单、分解效率更高,进而也有利于提高后续数据分析处理的效率;另一方面,本实施例中还可以对小周期分量进行异常检测和修复,并对趋势分量极性二次滤波使得其更加光滑,因此所得分解结果的精度更高,进而也有利于提高后续数据分析处理的准确性。

基于同一发明构思,本发明实施例还提供一种多周期时间序列数据分解装置,参照图7所示,包括:

序列获取模块,用于获取原始多周期时间序列数据以及所述原始多周期时间序列数据的多个周期参数;

滤波器生成模块,用于根据多个所述周期参数,得到对应的多个高通滤波器、一个低通滤波器和一个HP滤波器;

周期分解模块,用于基于多个所述高通滤波器的截止频率,利用多个所述高通滤波器从所述原始多周期时间序列数据中分解得到多个周期分量;

趋势分解模块,用于利用所述HP滤波器和所述低通滤波器从分解出多个所述周期分量后的剩余多周期时间序列数据中分解得到趋势分量;

结果输出模块,用于基于所述原始多周期时间序列数据、多个所述周期分量以及所述趋势分量,得到多周期时间序列数据分解结果。

需要说明的是,本实施例中的关于多周期时间序列数据分解装置的各实施方式以及其达到的技术效果可参照前述实施例中多周期时间序列数据分解方法的各种实施方式,这里不再赘述。

此外,在一实施例中,本申请还提供一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器运行时实现前述方法实施例中方法的步骤。

在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。计算机可以是包括智能终端和服务器在内的各种计算设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper Text MarkupLanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。

作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号