CN111768287A - 周期识别方法、装置、服务器及可读存储介质 - Google Patents
周期识别方法、装置、服务器及可读存储介质 Download PDFInfo
- Publication number
- CN111768287A CN111768287A CN202010439636.1A CN202010439636A CN111768287A CN 111768287 A CN111768287 A CN 111768287A CN 202010439636 A CN202010439636 A CN 202010439636A CN 111768287 A CN111768287 A CN 111768287A
- Authority
- CN
- China
- Prior art keywords
- period
- time sequence
- target
- data
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 110
- 238000004364 calculation method Methods 0.000 claims abstract description 72
- 230000008569 process Effects 0.000 claims abstract description 72
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 14
- 230000002159 abnormal effect Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012804 iterative process Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000005311 autocorrelation function Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 230000003203 everyday effect Effects 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Marketing (AREA)
- Mathematical Optimization (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Computational Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Technology Law (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本说明书实施例公开一种周期识别方法、装置、服务器及可读存储介质,在所述周期识别方法中,基于周期识别步骤,对目标业务下的原始时间序列数据进行周期识别分解,由于周期识别步骤中包含有N轮迭代过程,在每轮迭代过程中,通过对本轮迭代过程中的时间序列数据进行自相关计算,确定候选周期,并进一步的根据自相关计算结果中的多个波峰对候选周期的整数倍周期进行是否为波峰周期的验证,且在整数倍周期为波峰周期时,将候选周期作为目标周期,保证了目标周期的有效性以及周期识别的鲁棒性。
Description
技术领域
本说明书实施例涉及计算机技术领域,尤其涉及一种周期识别方法、装置、服务器及可读存储介质。
背景技术
在海量大数据的时间序列中,有些时间序列数据是有周期的,例如时间序列数据中包含有一个或多个周期,有些时间序列数据是无周期的。在对周期时间序列数据进行分析时,可以结合时间序列数据的周期做相应的运行措施、周期变化的监控、时间序列数据的异常检测、时间序列数据的预测分析等,因此,准确的识别出周期时间序列数据的周期是至关重要的。
发明内容
本说明书实施例提供一种周期识别方法、装置、服务器及可读存储介质。
第一方面,本说明书实施例提供一种周期识别方法,包括:
获取目标业务下的原始时间序列数据;
基于所述原始时间序列数据,执行周期识别步骤,获得所述原始时间序列数据的周期;
所述周期识别步骤包括N轮迭代过程,N为正整数,每轮迭代过程包括:确定本轮迭代过程的时间序列数据;对所述时间序列数据进行自相关计算,得到自相关计算结果,所述自相关计算结果中包含有多个波峰;基于所述自相关计算结果,确定候选周期;确定所述候选周期的整数倍周期是否为所述自相关计算结果的波峰处周期;若是,将所述候选周期作为所述原始时间序列数据最终的目标周期。
第二方面,本说明书实施例提供一种周期识别装置,包括:
获取模块,用于获取目标业务下的原始时间序列数据;
周期识别模块,用于基于所述原始时间序列数据,执行周期识别步骤,获得所述原始时间序列数据的周期;
所述周期识别步骤包括N轮迭代过程,N为正整数,每轮迭代过程包括:确定本轮迭代过程的时间序列数据;对所述时间序列数据进行自相关计算,得到自相关计算结果,所述自相关计算结果中包含有多个波峰;基于所述自相关计算结果,确定候选周期;确定所述候选周期的整数倍周期是否为所述自相关计算结果的波峰处周期;若是,将所述候选周期作为所述原始时间序列数据最终的目标周期。
第三方面,本说明书实施例提供一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行上述周期识别方法的步骤。
第四方面,本说明书实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述周期识别方法的步骤。
本说明书实施例有益效果如下:
本说明书实施例提供的方法,获取目标业务下的原始时间序列数据,并基于周期识别步骤,对原始时间序列数据进行识别,以识别出原始时间序列数据中包含的周期。由于现有技术中在进行周期识别时,时间序列数据容易受异常数据干扰,导致周期识别偏差大,鲁棒性较低,而本说明书实施例中的方案,通过周期识别步骤的N轮迭代过程,在每轮迭代过程中通过自相关计算结果中的多个波峰,对候选周期的整数倍周期进行是否为波峰周期的验证,在整数倍周期为波峰周期时,将候选周期作为目标周期,保证了目标周期的有效性以及周期识别的鲁棒性。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本说明书的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本说明书实施例第一方面提供的一种周期识别方法的流程图;
图2为本说明书实施例第二方面提供的一种周期识别装置的流程图;
图3为本说明书实施例第三方面提供的服务器的示意图。
具体实施方式
为了更好的理解上述技术方案,下面通过附图以及具体实施例对本说明书实施例的技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书实施例技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。
第一方面,本说明书实施例提供一种周期识别方法,如图1所示,为本说明书实施例提供的一种周期识别方法的流程图,该方法包括以下步骤:
步骤S10:获取目标业务下的原始时间序列数据;
步骤S12:基于原始时间序列数据,执行周期识别步骤,获得原始时间序列数据的周期;
其中,周期识别步骤包括N轮迭代过程,N为正整数,每轮迭代过程包括:确定本轮迭代过程的时间序列数据;对时间序列数据进行自相关计算,得到自相关计算结果,自相关计算结果中包含有多个波峰;基于自相关计算结果,确定候选周期;确定候选周期的整数倍周期是否为自相关计算结果的波峰处周期;若是,将候选周期作为原始时间序列数据最终的目标周期。
本说明书实施例中,目标业务可以是金融服务场景中的业务,例如,目标业务为支付应用A的访问业务,对应的原始时间序列数据可以是每天支付应用A被访问的次数,即,统计支付应用A每天被访问的次数,并按照时间顺序构建一条时间序列数据,作为原始时间序列数据。或者,目标业务可以是支付应用A提供的消费信贷业务,对应的原始时间序列数据可以为每天还款的用户数,即,统计每天还款的用户数,并按照时间顺序构建一条时间序列数据,作为原始时间序列数据。当然,目标业务还可以是其他业务,如资金的存入、取出,用户的消费数据监控等。
另外,目标业务不限于上述金融服务场景,还可以是其他场景中的业务,例如电商平台的价格变动、销量统计,环境监控场景中对监控参数(如温度、湿度)的记录,语音识别,水文处理,电力信号分析处理等。在各个业务场景中,均可以使用本说明书实施例提供的周期识别方法来对各业务场景下的时间序列数据进行处理。
进一步的,在确定了原始时间序列数据之后,通过周期识别步骤来提取出原始时间序列数据的周期。需要说明的是,原始时间序列数据中可以仅包含一个周期,还可以包含多个周期,通过周期识别步骤,能够提取出原始时间序列数据中包含的每个周期。
本说明书实施例中,基于原始时间序列数据执行周期识别步骤,可以是对原始时间序列数据直接进行周期识别,也可以是对原始时间序列数据进行预处理后的时间序列数据执行周期识别步骤,这里不做限定。周期识别步骤中包括N轮迭代过程,在每轮迭代过程中,如果当前迭代过程中处理的时间序列数据中仍为周期时间序列数据,可以通过当前迭代过程提取出对应的周期。
在具体实施过程中,针对每轮迭代过程,执行以下步骤:
确定本轮迭代过程的时间序列数据,计算时间序列数据的自相关函数(autocorrelation functions,ACF),对于周期时间序列数据来说,自相关计算结果中的波峰表明两个时间序列数据的相似程度较高,这样,自相关计算结果中波峰就有可能是该时间序列数据的周期。当自相关计算结果中包含有多个波峰时,可以随机选择一个波峰对应的周期作为候选周期,也可以选择峰值最大的波峰所对应的周期作为候选周期,还可以通过其他方式确定候选周期,这里不做限定。
进一步的,计算候选周期的整数倍周期,例如候选周期为7天,则选择7天的整数倍14天、21天,并判断整数倍周期14天、21天是否也分别对应自相关计算结果的波峰,如果是,则周期7天为原始时间序列数据的一个最终确定出来的周期。
本说明书实施例中,可以通过执行多轮上述迭代过程,识别出原始时间序列数据中包含的多个周期。因此,本说明书实施例提供的方案,能够通过多次迭代识别时间序列中的多周期,不会对时间序列数据的周期数量进行限定,避免了潜在周期被丢弃的缺陷,另外,通过多波峰判断候选周期的整数倍周期,有效验证了候选周期的鲁棒性,最终输出有效的周期,保证了多周期识别的鲁棒性。
需要说明的是,时间序列数据可以被分解为趋势(Trend)部分、周期部分(Seasonal)、残差(Remainder)部分,为了保证周期识别的准确性,本说明书实施例中,可以先对原始时间序列数据进行预处理,对原始时间序列数据进行去趋势处理以及剔除异常数据,消除时序趋势以及异常数据对周期识别的影响。在具体实施过程中,可以通过以下步骤对原始时间序列数据进行预处理:
对原始时间序列数据进行异常数据处理,获得处理后的时间序列数据;获取处理后的时间序列数据的趋势数据,并在处理后的时间序列数据去除趋势数据,得到目标时间序列;基于原始时间序列数据,执行周期识别步骤,包括:基于目标时间序列,执行周期识别步骤,并将目标时间序列作为所述周期识别步骤中第一轮迭代过程的时间序列数据。
具体来讲,对原始时间序列数据进行异常数据处理时,可以根据需要选择异常数据处理方法,本说明书实施例中,可以选择Boxplot异常数据处理,将超出阈值的异常数据点用均值替换,或者将超出阈值的去除。
在异常数据处理之后,计算异常数据处理后的时间序列数据的趋势数据,具体的趋势数据计算方式可以根据实际需要进行选择,例如,采用局部加权回归(locallyweighted regression,loess)、移动平均等方法来计算趋势数据,这里不做限定。在计算出趋势数据后,将趋势数据从处理后的时间序列数据中剔除,得到目标时间序列。进一步的,可以基于目标时间序列进行周期识别步骤,在具体实施过程中,可以将目标时间序列作为第一次迭代过程中的时间序列数据。
本说明书实施例中,在每轮迭代过程中,基于自相关计算结果,确定候选周期的步骤可以通过以下方式实现:基于多个波峰的每个波峰的幅值大小,对多个波峰进行排序;选取目标排序位置的波峰所对应的周期作为候选周期;确定候选周期的整数倍周期是否为自相关计算结果的波峰处周期,包括:确定候选周期的M个整数倍周期,M为正整数;确定M个整数倍周期的每个整数倍周期是否均为自相关计算结果的波峰处周期。
在具体实施过程中,针对每轮迭代过程中的时间序列数据,进行自相关计算之后,由于自相关计算结果中包含有多个波峰,可以将多个波峰按照峰值大小进行排序,目标排序位置可以根据实际需要进行设定,例如,首先选取排在第一位的波峰,即峰值最大的波峰,确定峰值最大的波峰所对应的周期,并将该周期作为候选周期。然后确定该候选周期的整数倍周期,整数倍周期的个数M可以根据实际需要进行设定,例如,M为大于1的正整数,即至少确定两个整数倍周期,具体的倍数也可以根据实际需要设定。本说明书实施例中,可以选取M为2,且整数倍分别为2和3,即确定的整数倍周期为候选周期的2倍和3倍周期。进一步的,判断M个整数倍周期是否分别对应自相关计算结果的波峰,若是,则该候选周期为原始时间序列数据的一个目标周期。
需要说明的是,如果在本轮迭代过程中,在选定目标排序位置处的波峰之后,以峰值最大的第一位波峰为例,确定该波峰对应的周期为候选周期,若候选周期的整数倍周期存在未处于自相关计算结果的波峰处的周期,则该候选周期并不是时间序列数据的实际周期,将该候选周期剔除,并结束本轮迭代。同时在下一轮接待过程中,在上轮迭代过程中得到的自相关计算结果中的多个波峰中选择另一个波峰对应的周期,即选择除上轮迭代过程中被剔除的候选周期以外的周期(例如,选择位于第二位,即波峰第二大的波峰所对应的周期),作为本轮迭代过程的候选周期。重复上述步骤,直到选择的候选周期为原始时间序列数据最终的目标周期为止。若N轮迭代中每轮的候选周期均不满足目标周期的条件,即每个候选周期的整数倍周期均存在不是波峰的周期,则原始时间序列数据为非周期时间序列数据。
本说明书实施例中,在对候选周期的整数倍周期进行波峰判断时,除了通过上述判断每个整数倍周期是否全部为自相关计算结果的波峰处周期以外,还可以对判断结果进行置信度评估,得到评估结果,该评估结果可以用于表征该候选周期为原始时间序列数据的目标周期的可信程度,并将评估结果大于阈值的候选周期作为原始时间序列的目标周期。
需要说明的是,在判断整数倍周期是否为自相关计算结果的波峰处周期时,若整数倍周期与波峰处周期之间的差值小于预设差值,既可认为整数倍周期为波峰处周期,预设差值可以根据实际需要进行设定,这里不做限定。
本说明书实施例中,在每轮迭代过程中,可以通过以下方式确定下一轮迭代过程中的时间序列数据,即,每轮迭代过程还包括:基于目标周期,对本轮的时间序列数据进行周期分解,获得目标周期对应的目标周期时间序列数据;在本轮的时间序列数据中过滤掉目标周期时间序列数据,得到过滤后的时间序列数据,并将过滤后的时间序列数据作为下一轮迭代过程的时间序列数据。
在具体实施过程中,以第一轮迭代过程为例,将经过异常数据处理以及趋势数据去除后的原始时间序列作为第一轮迭代过程的时间序列数据,对该时间序列数据进行自相关计算,基于自相关计算结果,确定出候选周期,并判断候选周期的整数倍周期是否也为波峰对应的周期,若是,将该候选周期作为目标周期。进一步的,基于该目标周期,对第一轮迭代过程中的时间序列数据进行周期分解,周期分解的方式可以根据实际需要进行选择,本说明书实施例中,以STL分解(Seasonal and Trend decomposition using Loess)为例,STL分解是一种把时间序列数据分解为趋势部分、周期部分、残差部分的过滤过程。在确定目标周期后,将目标周期接入到STL分解模型中,提取出目标周期的时间序列数据,然后在第一轮迭代过程的时间序列数据中过滤掉目标周期的时间序列,将过滤后的时间序列数据作为下一轮迭代过程的时间序列数据。
通过上述过程,通过多伦迭代过程,能够实现在预处理后的时间序列中逐轮过滤掉不同目标周期的时间序列数据,再进行新一轮的周期识别,直到将所有的周期全部识别出来。
为了使得确定的候选周期更加准确,本说明书实施例中,每轮迭代过程还包括:对时间序列数据进行离散傅里叶变换,得到离散傅里叶变换结果;基于自相关计算结果,确定候选周期,包括:基于离散傅里叶变换结果以及自相关计算结果,确定候选周期。
在具体实施过程中,在每轮迭代过程中,对本轮的时间序列数据分别进行离散傅里叶变换以及自相关计算结果,为了提高离散傅里叶变换的速度,可以选择快速傅里叶变换(Fast Fourier Transform,FFT),结合FFT结果和自相关计算结果来共同确定候选周期。
本说明书实施例中,基于离散傅里叶变换结果以及自相关计算结果,确定候选周期,包括:在离散傅里叶变换结果中确定出目标频率,并确定目标频率对应的周期;判断目标频率对应的周期是否为自相关计算结果的波峰处周期,若是,将目标频率对应的周期作为所述候选周期。
对于包含有多周期的时间序列数据来说,通过离散傅里叶变换结果能够将多个周期的频率分离出来,确定目标频率时,可以在离散傅里叶变换结果中随机选取一个频率作为目标频率,还可以根据设定条件来选择,例如,确定离散傅里叶变换结果中各个频率的幅值,按照频率幅值从大到小的顺序依次选取频率,将每次选取的频率作为所述目标频率。
具体来讲,在每轮迭代过程中,得到离散傅里叶变换结果后,选择幅值最大的频率作为目标频率,并确定该频率对应的周期,然后在自相关计算结果中判断该周期是否为处于自相关计算结果中波峰处的周期,如果是,将该周期作为候选周期。若该周期并不是自相关计算结果中波峰处的周期,则选择幅值第二大的频率作为目标频率,重复上述步骤,来判断该频率对应的周期是否为候选周期。
应理解的是,对于每次选取的目标频率,若其对应的周期不是候选周期,可以结束本轮迭代,在下一轮迭代中选择除上轮目标频率以外的频率作为目标频率。也可以在一轮迭代过程中循环上述目标频率的选择过程,即在一轮迭代过程中,如果幅值最大的频率对应的周期不是候选周期,仍在本轮迭代过程中继续选择幅值第二大的频率对应的周期,判断该周期时候为候选周期,直到选出候选周期为止,或者全部频率对应的周期均不是候选周期。
本说明书实施例中,对于周期识别步骤中的迭代次数,可以基于原始时间序列数据的长度来确定。举例来讲,时间序列数据为统计了一年时间的时间序列,那么该时间序列数据可能包含有7天(周期为一周)、30天(周期为一个月)、三个月(周期为一个季度)等,因此,可以根据原始时间序列数据的长度来推测包含的周期,然后确定迭代次数N,如果时间序列数据中可能包含有3个周期,那么可以将N设置为3,或者大于3的整数。对于本说明书实施例提供的周期识别方法来说,最多可以识别出原始时间序列数据中的N个目标周期,当每轮迭代过程中均识别出一个周期时,通过N轮迭代过程可以识别出N个目标周期,若存在未识别出周期的迭代过程时,则最终识别出的目标周期数量小于N。
本说明书实施例中,在识别出原始时间序列数据包含的目标周期之后,可以根据目标周期对目标业务进行预测操作,以提供预测的准确率,或者可以根据目标周期进行目标业务下的数据监控,若发现异常数据可以及时进行处理。
为了更好的理解本说明书实施例提供的周期识别方法,下面以FFT和自相关计算(ACF)相结合的方式进行周期识别为例,来对本说明书实施例提供的周期识别方法进行说明。
首先,获取目标业务的原始时间序列数据,对原始时间序列数据进行预处理,其中,预处理过程包括异常数据处理以及趋势数据去除。
然后,对预处理后的时间序列数据进行周期识别步骤,周期识别步骤中包含N轮迭代过程,N的数值由原始时间序列数据的长度来确定。
其中,将预处理后的时间序列数据作为第一轮迭代的时间序列数据,在第一轮迭代过程中计算本轮时间序列数据的FFT结果和ACF结果,并选择FFT结果中幅值最大的峰值频率,确定峰值频率对应的周期,进一步的,判断该周期是否为ACF结果的波峰处周期,若是,将该周期作为候选周期。接下来,进行多波峰判断,即计算候选周期的整数倍周期,如计算候选周期的2倍周期和3倍周期,分别判断每个整数倍周期是否为ACF结果中的波峰处周期,若是,将该候选周期作为目标周期。进一步的,基于目标周期,通过SLT分解模型进行时间序列分解,提取出目标周期对应的时间序列数据,并在第一轮迭代的时间序列数据中过滤掉目标周期的时间序列数据,得到新的时间序列数据,并将新的时间序列数据作为第二轮迭代过程中的时间序列数据。
确定当前迭代次数是否小于或等于N,若是,进行第二轮迭代过程,针对第二轮迭代过程中的时间序列数据,计算FFT和ACF,并选择FFT结果中幅值最大的峰值频率,确定峰值频率对应的周期,进一步的,判断该周期是否为ACF结果的波峰处周期,若是,将该周期作为候选周期。接下来,进行多波峰判断,即计算候选周期的整数倍周期,分别判断每个整数倍周期是否为ACF结果中的波峰处周期,若是,将该候选周期作为目标周期。进一步的,基于目标周期,通过SLT分解模型进行时间序列分解,提取出目标周期对应的时间序列数据,并在第二轮迭代的时间序列数据中过滤掉目标周期的时间序列数据,得到新的时间序列数据,并将新的时间序列数据作为第三轮迭代过程中的时间序列数据。
重复上述步骤,直到迭代次数大于N时,输出每轮迭代过程中识别出的每个目标周期,作为原始时间序列数据最终识别的周期。
综上所述,本说明书实施例提供的方案,能够通过多次迭代识别时间序列中的多周期,不会对时间序列数据的周期数量进行限定,避免了潜在周期被丢弃的缺陷,另外,通过多波峰判断候选周期的整数倍周期,有效验证了候选周期的鲁棒性,最终输出有效的周期,保证了多周期识别的鲁棒性。
第二方面,基于同一发明构思,本说明书实施例提供一种周期识别装置,如图2所示,装置包括:
获取模块21,用于获取目标业务下的原始时间序列数据;
周期识别模块22,用于基于所述原始时间序列数据,执行周期识别步骤,获得所述原始时间序列数据的周期;
所述周期识别步骤包括N轮迭代过程,N为正整数,每轮迭代过程包括:确定本轮迭代过程的时间序列数据;对所述时间序列数据进行自相关计算,得到自相关计算结果,所述自相关计算结果中包含有多个波峰;基于所述自相关计算结果,确定候选周期;确定所述候选周期的整数倍周期是否为所述自相关计算结果的波峰处周期;若是,将所述候选周期作为所述原始时间序列数据最终的目标周期。
在一种可选实现方式中,所述装置还包括:
预处理模块,用于对所述原始时间序列数据进行异常数据处理,获得处理后的时间序列数据;获取所述处理后的时间序列数据的趋势数据,并在所述处理后的时间序列数据去除所述趋势数据,得到目标时间序列;
所述周期识别模块,用于基于所述目标时间序列,执行所述周期识别步骤,并将所述目标时间序列作为所述周期识别步骤中第一轮迭代过程的时间序列数据。
在一种可选实现方式中,周期识别模块21,用于:
基于所述多个波峰的每个波峰的幅值大小,对所述多个波峰进行排序;选取目标排序位置的波峰所对应的周期作为所述候选周期;
确定所述候选周期的M个整数倍周期,M为正整数;确定所述M个整数倍周期的每个整数倍周期是否均为所述自相关计算结果的波峰处周期。
在一种可选实现方式中,周期识别模块21,用于:
基于所述目标周期,对本轮的所述时间序列数据进行周期分解,获得所述目标周期对应的目标周期时间序列数据;
在本轮的所述时间序列数据中过滤掉所述目标周期时间序列数据,得到过滤后的时间序列数据,并将过滤后的时间序列数据作为下一轮迭代过程的时间序列数据。
在一种可选实现方式中,周期识别模块21,用于:
对所述时间序列数据进行离散傅里叶变换,得到离散傅里叶变换结果;
基于所述离散傅里叶变换结果以及所述自相关计算结果,确定候选周期。
在一种可选实现方式中,周期识别模块21,用于:
在所述离散傅里叶变换结果中确定出目标频率,并确定所述目标频率对应的周期;
判断所述目标频率对应的周期是否为所述自相关计算结果的波峰处周期,若是,将所述目标频率对应的周期作为所述候选周期。
在一种可选实现方式中,周期识别模块21,用于:
确定所述离散傅里叶变换结果中各个频率的幅值,按照频率幅值从大到小的顺序依次选取频率,将每次选取的频率作为所述目标频率。
在一种可选实现方式中,所述装置还包括:
迭代次数确定模块,用于基于所述原始时间序列数据的长度,确定所述周期识别步骤中执行迭代过程的次数。
关于上述装置,其中各个模块的具体功能已经在本说明书实施例提供的周期识别方法的实施例中进行了详细描述,此处将不做详细阐述说明。
第三方面,基于与前述实施例中周期识别方法同样的发明构思,本说明书实施例还提供一种服务器,如图3所示,包括存储器404、处理器402及存储在存储器404上并可在处理器402上运行的计算机程序,所述处理器402执行所述程序时实现前文所述周期识别方法的步骤。
其中,在图3中,总线架构(用总线400来代表),总线400可以包括任意数量的互联的总线和桥,总线400将包括由处理器402代表的一个或多个处理器和存储器404代表的存储器的各种电路链接在一起。总线400还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口406在总线400和接收器401和发送器403之间提供接口。接收器401和发送器403可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器402负责管理总线400和通常的处理,而存储器404可以被用于存储处理器402在执行操作时所使用的数据。
第四方面,基于与前述实施例中基于周期识别方法的发明构思,本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前文所述周期识别方法中任一方法的步骤。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本说明书的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本说明书范围的所有变更和修改。
显然,本领域的技术人员可以对本说明书进行各种改动和变型而不脱离本说明书的精神和范围。这样,倘若本说明书的这些修改和变型属于本说明书权利要求及其等同技术的范围之内,则本说明书也意图包含这些改动和变型在内。
Claims (18)
1.一种周期识别方法,所述方法包括:
获取目标业务下的原始时间序列数据;
基于所述原始时间序列数据,执行周期识别步骤,获得所述原始时间序列数据的周期;
所述周期识别步骤包括N轮迭代过程,N为正整数,每轮迭代过程包括:确定本轮迭代过程的时间序列数据;对所述时间序列数据进行自相关计算,得到自相关计算结果,所述自相关计算结果中包含有多个波峰;基于所述自相关计算结果,确定候选周期;确定所述候选周期的整数倍周期是否为所述自相关计算结果的波峰处周期;若是,将所述候选周期作为所述原始时间序列数据最终的目标周期。
2.根据权利要求1所述的方法,在所述获取目标业务下的原始时间序列数据之后,所述方法还包括:
对所述原始时间序列数据进行异常数据处理,获得处理后的时间序列数据;获取所述处理后的时间序列数据的趋势数据,并在所述处理后的时间序列数据去除所述趋势数据,得到目标时间序列;
所述基于所述原始时间序列数据,执行周期识别步骤,包括:基于所述目标时间序列,执行所述周期识别步骤,并将所述目标时间序列作为所述周期识别步骤中第一轮迭代过程的时间序列数据。
3.根据权利要求1或2所述的方法,所述基于所述自相关计算结果,确定候选周期,包括:
基于所述多个波峰的每个波峰的幅值大小,对所述多个波峰进行排序;选取目标排序位置的波峰所对应的周期作为所述候选周期;
所述确定所述候选周期的整数倍周期是否为所述自相关计算结果的波峰处周期,包括:
确定所述候选周期的M个整数倍周期,M为正整数;确定所述M个整数倍周期的每个整数倍周期是否均为所述自相关计算结果的波峰处周期。
4.根据权利要求1所述的方法,在所述每轮迭代过程中,将所述候选周期作为所述原始时间序列最终的目标周期之后,所述每轮迭代过程还包括:
基于所述目标周期,对本轮的所述时间序列数据进行周期分解,获得所述目标周期对应的目标周期时间序列数据;
在本轮的所述时间序列数据中过滤掉所述目标周期时间序列数据,得到过滤后的时间序列数据,并将过滤后的时间序列数据作为下一轮迭代过程的时间序列数据。
5.根据权利要求1所述的方法,在所述每轮迭代过程中,在所述确定本轮迭代过程的时间序列数据之后,所述每轮迭代过程还包括:
对所述时间序列数据进行离散傅里叶变换,得到离散傅里叶变换结果;
所述基于所述自相关计算结果,确定候选周期,包括:
基于所述离散傅里叶变换结果以及所述自相关计算结果,确定候选周期。
6.根据权利要求5所述的方法,所述基于所述离散傅里叶变换结果以及所述自相关计算结果,确定候选周期,包括:
在所述离散傅里叶变换结果中确定出目标频率,并确定所述目标频率对应的周期;
判断所述目标频率对应的周期是否为所述自相关计算结果的波峰处周期,若是,将所述目标频率对应的周期作为所述候选周期。
7.根据权利要求6所述的方法,在所述离散傅里叶变换结果中确定出目标频率,包括:
确定所述离散傅里叶变换结果中各个频率的幅值,按照频率幅值从大到小的顺序依次选取频率,将每次选取的频率作为所述目标频率。
8.根据权利要求1所述的方法,所述获取目标业务下的原始时间序列数据之后,所述方法还包括:
基于所述原始时间序列数据的长度,确定所述周期识别步骤中执行迭代过程的次数。
9.一种周期识别装置,所述装置包括:
获取模块,用于获取目标业务下的原始时间序列数据;
周期识别模块,用于基于所述原始时间序列数据,执行周期识别步骤,获得所述原始时间序列数据的周期;
所述周期识别步骤包括N轮迭代过程,N为正整数,每轮迭代过程包括:确定本轮迭代过程的时间序列数据;对所述时间序列数据进行自相关计算,得到自相关计算结果,所述自相关计算结果中包含有多个波峰;基于所述自相关计算结果,确定候选周期;确定所述候选周期的整数倍周期是否为所述自相关计算结果的波峰处周期;若是,将所述候选周期作为所述原始时间序列数据最终的目标周期。
10.根据权利要求9所述的装置,所述装置还包括:
预处理模块,用于对所述原始时间序列数据进行异常数据处理,获得处理后的时间序列数据;获取所述处理后的时间序列数据的趋势数据,并在所述处理后的时间序列数据去除所述趋势数据,得到目标时间序列;
所述周期识别模块,用于基于所述目标时间序列,执行所述周期识别步骤,并将所述目标时间序列作为所述周期识别步骤中第一轮迭代过程的时间序列数据。
11.根据权利要求9或10所述的装置,所述周期识别模块,用于:
基于所述多个波峰的每个波峰的幅值大小,对所述多个波峰进行排序;选取目标排序位置的波峰所对应的周期作为所述候选周期;
确定所述候选周期的M个整数倍周期,M为正整数;确定所述M个整数倍周期的每个整数倍周期是否均为所述自相关计算结果的波峰处周期。
12.根据权利要求9所述的装置,所述周期识别模块,用于:
基于所述目标周期,对本轮的所述时间序列数据进行周期分解,获得所述目标周期对应的目标周期时间序列数据;
在本轮的所述时间序列数据中过滤掉所述目标周期时间序列数据,得到过滤后的时间序列数据,并将过滤后的时间序列数据作为下一轮迭代过程的时间序列数据。
13.根据权利要求9所述的装置,所述周期识别模块,用于:
对所述时间序列数据进行离散傅里叶变换,得到离散傅里叶变换结果;
基于所述离散傅里叶变换结果以及所述自相关计算结果,确定候选周期。
14.根据权利要求13所述的装置,所述周期识别模块,用于:
在所述离散傅里叶变换结果中确定出目标频率,并确定所述目标频率对应的周期;
判断所述目标频率对应的周期是否为所述自相关计算结果的波峰处周期,若是,将所述目标频率对应的周期作为所述候选周期。
15.根据权利要求14所述的装置,所述周期识别模块,用于:
确定所述离散傅里叶变换结果中各个频率的幅值,按照频率幅值从大到小的顺序依次选取频率,将每次选取的频率作为所述目标频率。
16.根据权利要求9所述的装置,所述装置还包括:
迭代次数确定模块,用于基于所述原始时间序列数据的长度,确定所述周期识别步骤中执行迭代过程的次数。
17.一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-9任一项所述方法的步骤。
18.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1-9任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010439636.1A CN111768287A (zh) | 2020-05-22 | 2020-05-22 | 周期识别方法、装置、服务器及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010439636.1A CN111768287A (zh) | 2020-05-22 | 2020-05-22 | 周期识别方法、装置、服务器及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111768287A true CN111768287A (zh) | 2020-10-13 |
Family
ID=72719639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010439636.1A Pending CN111768287A (zh) | 2020-05-22 | 2020-05-22 | 周期识别方法、装置、服务器及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111768287A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114579554A (zh) * | 2022-03-08 | 2022-06-03 | 京东科技信息技术有限公司 | 运维时间序列数据处理方法及装置、存储介质及电子设备 |
CN116226231A (zh) * | 2023-02-23 | 2023-06-06 | 北京思维实创科技有限公司 | 数据分割方法及相关装置 |
CN116431369A (zh) * | 2022-11-09 | 2023-07-14 | 北京新数科技有限公司 | 一种基于动态场景的数据库运维异常检测方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001109738A (ja) * | 1999-10-13 | 2001-04-20 | Toyota Motor Corp | ピーク時刻検出装置およびピーク時刻検出方法 |
US20090018798A1 (en) * | 2007-07-09 | 2009-01-15 | International Business Machines Corporation | Method, Data Processing Program and Computer Program Product for Time Series Analysis |
US20090024427A1 (en) * | 2007-07-19 | 2009-01-22 | Shan Jerry Z | Analyzing time series data that exhibits seasonal effects |
CN107463904A (zh) * | 2017-08-08 | 2017-12-12 | 网宿科技股份有限公司 | 一种确定事件周期值的方法及装置 |
US20180136994A1 (en) * | 2016-11-16 | 2018-05-17 | Anodot Ltd. | Fast Automated Detection of Seasonal Patterns in Time Series Data Without Prior Knowledge of Seasonal Periodicity |
US20180143606A1 (en) * | 2016-11-22 | 2018-05-24 | Omron Corporation | Control system and control device |
-
2020
- 2020-05-22 CN CN202010439636.1A patent/CN111768287A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001109738A (ja) * | 1999-10-13 | 2001-04-20 | Toyota Motor Corp | ピーク時刻検出装置およびピーク時刻検出方法 |
US20090018798A1 (en) * | 2007-07-09 | 2009-01-15 | International Business Machines Corporation | Method, Data Processing Program and Computer Program Product for Time Series Analysis |
US20090024427A1 (en) * | 2007-07-19 | 2009-01-22 | Shan Jerry Z | Analyzing time series data that exhibits seasonal effects |
US20180136994A1 (en) * | 2016-11-16 | 2018-05-17 | Anodot Ltd. | Fast Automated Detection of Seasonal Patterns in Time Series Data Without Prior Knowledge of Seasonal Periodicity |
US20180143606A1 (en) * | 2016-11-22 | 2018-05-24 | Omron Corporation | Control system and control device |
CN107463904A (zh) * | 2017-08-08 | 2017-12-12 | 网宿科技股份有限公司 | 一种确定事件周期值的方法及装置 |
Non-Patent Citations (1)
Title |
---|
李华 等: "预测与决策教程", 机械工业出版社, pages: 61 - 62 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114579554A (zh) * | 2022-03-08 | 2022-06-03 | 京东科技信息技术有限公司 | 运维时间序列数据处理方法及装置、存储介质及电子设备 |
CN116431369A (zh) * | 2022-11-09 | 2023-07-14 | 北京新数科技有限公司 | 一种基于动态场景的数据库运维异常检测方法 |
CN116226231A (zh) * | 2023-02-23 | 2023-06-06 | 北京思维实创科技有限公司 | 数据分割方法及相关装置 |
CN116226231B (zh) * | 2023-02-23 | 2023-10-27 | 北京思维实创科技有限公司 | 数据分割方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190087737A1 (en) | Anomaly detection and automated analysis in systems based on fully masked weighted directed | |
CN111768287A (zh) | 周期识别方法、装置、服务器及可读存储介质 | |
CN109800627B (zh) | 石油管道信号的异常检测方法及装置、设备及可读介质 | |
CN110717824A (zh) | 基于知识图谱的银行对公客群风险传导测算的方法及装置 | |
US10943181B2 (en) | Just in time classifier training | |
US10394631B2 (en) | Anomaly detection and automated analysis using weighted directed graphs | |
CN113449703A (zh) | 环境在线监测数据的质控方法、装置、存储介质及设备 | |
CN109242165A (zh) | 一种模型训练及基于模型训练的预测方法及装置 | |
CN113128797A (zh) | 业务指标异常监测方法及装置 | |
CN114780358A (zh) | 异常操作行为的检测方法和检测装置 | |
CN113129064A (zh) | 汽车配件价格预测方法、系统、设备与可读存储介质 | |
CN112766536A (zh) | 计算公路工程人工单价的模型训练方法、装置及终端 | |
CN116361695A (zh) | 异常数据检测方法以及装置 | |
CN115510998A (zh) | 交易异常值检测方法及装置 | |
CN112346995B (zh) | 一种基于银行业的测试风险预估模型的构建方法及装置 | |
CN112835952A (zh) | 一种基于股票指标的计算分析方法及系统 | |
CN110298690B (zh) | 对象类目的周期判断方法、装置、服务器及可读存储介质 | |
CN114090377A (zh) | 一种数据监控方法及装置 | |
CN109189827B (zh) | 时间序列处理方法和装置、电子设备 | |
CN113569879A (zh) | 异常识别模型的训练方法、异常账号识别方法及相关装置 | |
CN113254787B (zh) | 事件分析方法、装置、计算机设备及存储介质 | |
CN113409025B (zh) | 一种业务数据提取方法、装置及存储介质 | |
CN114580982B (zh) | 一种工业设备的数据质量的评估方法、装置及设备 | |
CN115187377A (zh) | 信用卡风险信息检测方法及装置 | |
CN113988955A (zh) | 潜在资产提升客户预测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201013 |
|
RJ01 | Rejection of invention patent application after publication |