CN114091752A - 一种提升时间序列预测系统预测时间序列效果的方法 - Google Patents
一种提升时间序列预测系统预测时间序列效果的方法 Download PDFInfo
- Publication number
- CN114091752A CN114091752A CN202111387699.8A CN202111387699A CN114091752A CN 114091752 A CN114091752 A CN 114091752A CN 202111387699 A CN202111387699 A CN 202111387699A CN 114091752 A CN114091752 A CN 114091752A
- Authority
- CN
- China
- Prior art keywords
- data
- prediction
- model
- time
- time series
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000000694 effects Effects 0.000 title claims abstract description 24
- 238000012549 training Methods 0.000 claims abstract description 78
- 230000006870 function Effects 0.000 claims description 67
- 238000013145 classification model Methods 0.000 claims description 55
- 238000013528 artificial neural network Methods 0.000 claims description 33
- 230000000306 recurrent effect Effects 0.000 claims description 19
- 239000013598 vector Substances 0.000 claims description 18
- 125000004122 cyclic group Chemical group 0.000 claims description 14
- 238000003062 neural network model Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 239000002356 single layer Substances 0.000 claims description 6
- 239000010410 layer Substances 0.000 claims description 4
- 230000006835 compression Effects 0.000 claims description 3
- 238000007906 compression Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 abstract description 8
- 230000015654 memory Effects 0.000 abstract description 5
- 238000004458 analytical method Methods 0.000 abstract description 4
- 230000032683 aging Effects 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 238000013461 design Methods 0.000 abstract description 2
- 238000012795 verification Methods 0.000 abstract description 2
- YHXISWVBGDMDLQ-UHFFFAOYSA-N moclobemide Chemical compound C1=CC(Cl)=CC=C1C(=O)NCCN1CCOCC1 YHXISWVBGDMDLQ-UHFFFAOYSA-N 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012800 visualization 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
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Resources & Organizations (AREA)
- Computational Linguistics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于人工智能时间序列预测技术领域,具体为一种提升时间序列预测系统预测时间序列效果的方法。本发明基于时间序列预测损失上的理论分析,设计新的时间序列预测算法,该算法建模历史数据模式与未来数据模式上的差异,提出两步走的训练方式,一方面保证模型对历史数据的记忆不会轻易消失,另一方面保证在未来数据上有较好的预测效果。理论分析与实验验证表明,在时间序列预测任务中,本发明预测方法相比于其他方法,可以有效缓解由于数据随时间的变化即概念漂移而导致的模型老化问题;可以进一步提升模型的预测准确率。本发明能够广泛应用于各类基于实数值的时间序列预测任务,提升任务在未来数据点上的预测准确度。
Description
技术领域
本发明属于人工智能时间序列预测技术领域,具体涉及一种提升时间序列预测系统在未来时间点上预测效果的方法。
背景技术
随着时间序列信息技术的发展,时间序列信息在各种互联网服务中得到了广泛的应用,如何为用户根据已有时间序列预测未来的数据变化趋势逐渐成为工业界研究中的重点。为此,大量时间序列预测技术被提出。然而,现有技术无法对未来时间上的数据做准确的建模,因而在这些未来时间点上的预测效果很差。其主要原因是未来时间点的序列数据未必与已有数据同分布,即可能存在某一种没有被记住的趋势的变化,这就导致未来数据在变化上容易出现变缓的趋势。另一方面,循环神经网络存在梯度消失的问题,这使得常见的循环神经网络难以对序列精准建模。考虑到现有方法都用常见的循环神经网络等方法对时间序列做建模,故缺乏对未来时间点的序列做准确预测的能力。
发明内容
本发明的目的在于针对人工智能技术中的时间序列预测系统,提供一种提升预测时间序列效果的方法。
所述时间序列预测系统通常包含一个时间序列预测模型和时间序列数据;这里,所述时间序列数据是一组按照发生时间先后顺序进行排列的数据点序列,其中每个数据点表示为一个实数。该预测系统预测的基本流程为:时间序列预测模型以一组长度固定的时间序列作为输入,输出接下来一个时间点或几个时间点的数据点预测值;其中,作为输入的固定长度时间序列称为过去数据;在接下来一个时间点或几个时间点的真实值称为未来数据;时间序列预测系统基于过去数据输出的接下来一个时间或几个时间点的数据点称为预测结果。时间序列预测系统的目标为使得预测结果与未来数据的差距尽可能地小。为了达到这样的目的,时间序列预测系统需要先根据已有的时间序列数据也就是过去数据训练得到时间序列预测模型的参数,该时间序列预测模型可用于预测未来数据。
本发明提供的基于概念漂移建模提升时间序列预测系统预测效果的方法。首先,基于过去相关工作和经验性实验发现,现有的时间序列预测系统得到的预测结果与未来数据差距较大,其原因在于:作为时间序列模型输入的过去数据与未来数据之间存在很大的差异,这种差异被称为概念漂移,而现有的时间序列模型无法预知到这些差异并应用到未来数据的预测中。由此,本发明提出通过将过去数据划分成历史数据和新数据(其中历史数据和新数据的总长度和过去数据的总长度相同),然后使时间序列预测模型能建模历史数据和新数据中的概念漂移,从而使得该时间序列预测模型在预测时也能具有建模过去数据和未来数据之间概念漂移的能力,最终输出更为准确的预测结果。其次,由于时间序列数据中存在大量的噪声,我们利用更多的时间序列数据来帮助建模更为精确的概念漂移,从而进一步地提升该时间序列预测系统的精确度。最后,为了使得系统的训练和部署更加便捷,本发明中使用端到端的训练框架来最终训练和部署以上时间序列预测系统。
与此相对应,本发明中的时间序列预测系统包括:若干个架构相同的时间序列预测模型,一个用于时间序列数据相似度评估的时间序列分类模型,以及若干条长度相同的时间序列数据;这里,所述时间序列数据是一组按照发生时间先后顺序进行排列的数据点序列,其中每个数据点表示为一个实数;该时间序列预测系统预测的基本流程为:时间序列预测模型以一组长度固定的时间序列作为输入,输出接下来一个时间点或几个时间点的数据点预测值;其中,作为输入的固定长度时间序列称为过去数据;在接下来一个时间点或几个时间点的真实值称为未来数据;时间序列预测系统基于过去数据输出的接下来一个时间或几个时间点的数据点称为预测结果;时间序列预测系统的目标为使得预测结果与未来数据的差距尽可能地小;
其中,所述若干个不同的时间序列预测模型用于属于不同类的时间序列的概念漂移建模以及未来数据预测;所述时间序列分类模型为一个循环神经网络模型,该循环神经网络的最后一个时间节点的输出用于计算某条时间序列属于某一个类的概率,用于对时间序列预测系统中所有的时间序列进行分类;所述若干条长度相同的时间序列用于分类,然后在同一个类的时间序列数据上使用时间序列预测模型拟合历史数据并建模概念漂移;利用基于REINFORCE规则的端到端训练框架学习所有时间序列预测模型和时间序列分类模型;
方法的具体步骤包括:
首先,作为时间序列模型输入的过去数据与未来数据之间存在差异,定义这种差异为概念漂移;将每条时间序列的过去数据划分为历史数据和新数据;其中历史数据和新数据的总长度和过去数据的总长度相同;并将每条时间序列数据的过去数据输入给时间序列分类模型,得到该时间序列的类标签;
然后,标签属于同一类的时间序列数据共享同一个时间序列预测模型,并用该时间序列预测模型在属于该类的所有历史数据上进行数据拟合,并通过拟合误差(记为历史数据损失函数)计算得到各个中间时间序列预测模型参数;
然后,使用该中间参数对相应类中的时间序列数据的新数据进行拟合,计算拟合误差,将其记为新数据损失函数;若拟合误差较大,则说明历史数据和新数据之间发生了概念漂移;
然后,使用历史数据损失函数和新数据损失函数共同更新相应的时间序列预测模型参数;
最后,用每条时间序列的历史数据损失函数和新数据损失函数的类概率加权总和来更新时间序列预测模型;对时间序列预测模型和分类模型的训练是一个端到端的训练过程,即该过程无需分阶段进行;在所有时间序列预测模型和分类模型都收敛后,可以对系统中的每一个条时间序列使用相应的时间序列预测模型进行预测。
由于本发明的分类模型和预测模型需要在训练之后才可以使用,所以本发明的具体操作步骤分为:系统训练步骤和系统测试步骤。其中,系统训练步骤为学习时间序列预测系统中所有参数;系统测试步骤为具体使用时间序列预测系统来输出持续输出未来数据。具体如下:
(一)系统训练:
步骤一、划分训练数据集:将训练集中的时间序列数据沿时间轴按照历史数据和新数据进行划分;
本发明中,设时间序列预测系统中共有N条时间序列,对于任意一条时间序列数据(x1,x2,...,xt),其中,t>T,选定参数T与K,其中,序列的前T个数据构成的子序列为历史数据,T+1到T+K个数据构成的子序列为新数据,记为(xT+1,x2,...,xT+K)。选定所有时间序列数据的类别总数为C。(注:在接下来系统训练的所有步骤中提到的任意时间序列都来自训练数据集)。
步骤二、初始化模型:在系统训练开始之前,初始化模型所需的预测模型与分类模型:
(2.1)初始化预测模型:选定C个预测模型,每个时间序列预测模型定义为其中,c∈{1,...,C},φc表示第c个预测模型的待求解参数。在每个时间点t,该模型的输入为输出为其中,该输出表示模型基于t个时间点对第t+1时间点数据的预测。使用高斯随机值来初始化φc中的所有待求解参数。这里,所述预测模型可以任意的现有的时间序列预测模型,比如循环门控单元神经网络(GRU[2]),长短期记忆循环神经网络(LSTM[3])和时序卷积网络(TCN[4])等等。在本发明中,根据时间预测的准确度,最终选用循环门控单元神经网络(GRU[2])作为预测模型。
(2.2)初始化分类模型:选定的时间序列分类模型由两个部分组成:循环门控单元神经网络模型(GRU[2])和单层全连接网络。其中,循环神经网络模型,其计算单元为以Relu函数为激活函数的多层全连接神经网络。在每个时间点t,该循环神经网络的输入层维度为其输出维度为向量该输出向量表示循环神经网络对于前t个时间点数据信息的压缩。另外,以Relu函数为激活函数的单层全连接神经网络,其输入为循环神经网络在第T个时间点的输出向量输出向量维度该向量的每一维数值表示当前时间序列属于该维代表的类c的概率。由这两个模块组成的时间分类模型记为gθ,其中θ为以上两个模块中的所有待求解参数,其最终输出记为:gθ(x1:T)。使用高斯随机值来初始化θ中的所有待求解参数。
步骤三、拟合历史数据:
(3.1)获取每条时间序列的分类信息:将训练数据集中的每条时间序列的历史数据(x1,x2,...,xT)输入到时间序列分类模型gθ中,获得分类模型的输出gθ(x1:T),并取概率值最大的维度c作为该时间序列的类别,即,
c=argmax1,...,ChC,
(3.2)拟合每条时间序列历史数据:根据(3.1)中得到的每条时间序列类别c,选择第c个类别对应的预测模型φc为该条时间序列的预测模型,将每条时间序列的历史数据(x1,x2,...,xT)输入到该预测模型中,得到预测结果(o1,o2,...,oT)。
步骤四、识别是否发生概念漂移,具体使用新旧模型参数在新数据上的损失函数差距来识别是否可能发生了概念漂移:
其中,yt=xt+1。
其中,α为更新参数时学习率,为人工提前设定。定义φ′c为历史拟合模型。
(4.2)基于模型中间参数在新数据上的拟合效果来识别是否发生了概念漂移:
基于之前对于概念漂移的定义,概念漂移可以通过模型在新数据上的拟合效果来反映。如果在历史数据上拟合好的模型在新数据上拟合的误差很大,则认为出现了概念漂移。给定新数据(xT+1,x2,...,xT+K),使用历史拟合模型φ′c的拟合,记拟合损失函数为也称为新数据损失函数:
步骤五、根据拟合历史数据的损失和拟合的新数据损失函数,更新时间序列预测系统的所有参数:
(5.1)在步骤四中,如果拟合新数据的损失函数值很大,那么说明数据很可能发生了概念漂移。由于时间序列概念漂移的复杂,很难使用某种特定的数学模型来建模。然而,由于建立概念漂移的目的实际上是为了最小化模型在新数据上的拟合损失函数,所以基于这一目的我们提出最小化拟合新数据的损失函数。另外,为了不使得预测模型遗忘对历史数据的拟合,所以同时也最小化拟合历史数据的损失函数。最终,使用两种损失函数来更新预测模型参数。
其中,β为更新参数时的学习率,为人工提前设置。
(5.3)更新分类模型参数:由于在训练数据集中并没有时间序列属于那个类的真实标签,为了能更新分类模型参数,通过REINFORCE规则[1]来为分类模型计算目标函数,该目标函数用于计算更新分类模型参数的梯度。基于REINFORCE规则计算的目标函数为:
更新分类模型参数θ的方式为梯度下降,记为:
其中,β为更新参数时的学习率,为人工提前设置。
步骤六、在完成以上步骤中所有参数的更新后,继续执行步骤三~步骤五一共E轮次(训练轮次为人工提前设置好),或当所有预测模型的参数几乎不发生变化的时候,结束训练步骤。结束训练步骤时时记录下训练集中所有时间序列的分类模型的分类结果,记为c(i)。
(二)系统测试:给定训练集中的任意1条或N条时间序列,预测1个或K个未来其未来数据。
技术效果
本发明通过在时间序列预测系统中建模概念漂移,解决未来时间点上的模型老化等问题,提升了系统在未来时间点上的预测效果。本发明中使用均方根误差(RMSE)和平均绝对误差(MAE)来评估时间序列预测准确率,RMSE和MAE越小,则表示预测准确率越高。在系统测试阶段,使用了三个时间序列数据集:Stock、Climate以及Synthetic三个数据集,并在这些数据集上计算了RMSE和MAE。输入1~T+K的序列,输出1~T+K′的预测序列,以表示第i条序列第t时间点的输出,以表示第i条序列第t时间点的原始数值,则RMSE和MAE可以表示为:
本发明基于时间序列预测损失上的理论分析,设计了新的时间序列预测算法,该算法建模历史数据模式与未来数据模式上的差异,提出两步走的训练方式,一方面保证模型对历史数据的记忆不会轻易消失,另一方面保证在未来数据上有较好的预测效果。通过理论分析与实验验证,表明在时间序列预测任务中,本发明预测方法相比于其他方法,可以有效缓解由于数据随时间的变化即概念漂移而导致的模型老化问题;本发明提出在包含多条时间序列的数据上实现基于集群的预测算法,利用其他相似数据的信息,可以进一步提升模型的预测准确率。本发明能够广泛应用于各类基于实数值的时间序列预测任务,提升任务在未来数据点上的预测准确度。
本发明的技术效果主要体现在以下三个方面:
(1)本发明中的时间序列预测系统的预测模型可以使用现有不同的时间序列预测模型,与这些时间序列预测模型相比,本发明的时间预测准确度有明显提高;
(2)基于概念漂移建模使得本发明可以处理未来数据的变化,相比现有通过在线更新和重新训练来处理未来数据变化的方法,本发明在精确度和时间效率上有明显提高;
(3)由于本发明中的时间序列预系统引入了时间序列分类模型,并基于时间序列预测的结果对数据序列进行分类,相当于对训练数据中的时间序列进行了聚类,通过观察训练结束后分类器的分类结果,可以发现本发明的时间序列分类器可以将线形、频率等时间序列特征相似的数据分到同一个类,那么本发明中的时间序列预测系统可以认为是一个可执行多任务(聚类和时间序列预测)的系统。
附图说明
图1为本发明方法流程示意图。
图2为分类器与预测器的训练过程图示。
图3为本发明时间预测系统与现有重训(微调策略)的预测精确度比较图。
图4为本发明时间预测系统与现有重训(微调策略)的训练时间比较图。
图5为本发明分类器分类效果图。图中点是用t-SNE可视化的分类器输出值。
具体实施方式
如图1所示,本实施采用Stock、Climate和Synthetic数据集,通过本实施方法提升时间序列预测系统在未来时间点上的预测准确度,本实施例具体包括:
(一)系统训练步骤:
步骤一、划分训练数据集:(将训练集中的时间序列数据延时间轴按照历史数据和新数据进行划分)
本发明中的时间序列预测系统中共有N条时间序列,对于任意一条时间序列数据(x1,x2,...,xt),其中,t>T,选定参数T与K,其中,序列的前T个数据构成的子序列为历史数据,T+1到T+K个数据构成的子序列为新数据,记为(xT+1,x2,...,xT+K)。对于所有三个数据集,沿时间轴按照4∶1的比例划分过去数据和未来数据,对于过去数据按照3∶2的比例划分历史数据和新数据。选定所有时间序列数据的类别总数为C。对于三个不同数据集,我们设定了不同的类别总数,分别为:3,3,5。该类别总数的选择是通过预先在过去数据上分别训练一个循环门控单元神经网络(GRU[2]),然后取每条时间序列的最后一层隐向量进行可视化,根据可视化后的隐向量的聚类个数来确定不同类别总数。该预先训练的循环门控单元神经网络与本系统中使用的预测模型没有关系。(注:在接下来系统训练的所有步骤中提到的任意时间序列都来自训练数据集)
步骤二、初始化模型:在系统训练开始之前,初始化模型所需的预测模型与分类模型:
(2.1)初始化预测模型:选定C个预测模型,每个时间序列预测模型定义为其中c∈{1,...,C},φc表示第c个预测模型的待求解参数。在每个时间点t,该模型的输入为输出为其中该输出表示模型基于t个时间点对第t+1时间点数据的预测。使用高斯随机值来初始化φc中的所有待求解参数。对于本发明的预测模型可以任意的现有的时间序列预测模型,比如循环门控单元神经网络(GRU[2]),长短期记忆循环神经网络(LSTM[3])和时序卷积网络(TCN[4])等等。在本发明中,根据时间预测的准确度,最终选用循环门控单元神经网络(GRU[2])作为预测模型。对于GRU其具体的输出机制,即的计算函数为,
zt=sigmoid(Wxzxt+Whzht-1),
rt=sigmoid(Wxrxt+Whrht-1),
ot=Woht+bo.
其中{W..,bo}为GRU所有的待学习参数;sigmoid表示sigmoid激活函数[7],tanh表示tanh激活函数[8]。
(2.2)初始化分类模型:选定时间序列分类模型为由两个模块组成:循环神经网络模型和单层全连接网络。其中,循环神经网络模型,其计算单元为以Relu函数为激活函数的多层全连接神经网络。在每个时间点t,该循环神经网络的输入层维度为其输出维度为向量该输出向量表示循环神经网络对于前t个时间点数据信息的压缩。另外,以softmax函数为激活函数的单层全连接神经网络,该网络的输入为循环神经网络在第T个时间点的输出向量输出向量维度为该向量的每一维数值表示当前时间序列属于该维代表的类c的概率。由这两个模块组成的时间分类模型记为gθ,其中θ为以上两个模块中的所有待求解参数,其最终输出记为:gθ(x1:T)。使用高斯随机值来初始化θ中的所有待求解参数。与使用GRU做预测不同的是,使用GRU做时间序列分类仅需取出最后一个时间点的输出向量hT,并输入给一个全连接神经网络做分类即可,
hC=softmax(WchT+bc).
其中{Wc,bc}为全连接神经网络参数。由于时间序列分类模型也采用了循环门控神经网络模型,所以其计算机制与预测模型相似,主体参数也一致。
步骤三、拟合历史数据:采用全量数据更新的方法,也就是每次参数更新都基于系统中的所有时间序列数据。
(3.1)获取每条时间序列的分类信息:将训练数据集中的每条时间序列的历史数据(x1,x2,...,xT)输入到时间序列分类模型θ中,获得分类模型的输出gθ(x1:T),并取概率值最大的维度c作为该时间序列的类别。
(3.2)拟合每条时间序列历史数据:根据(3.1)中得到的每条时间序列类别c,选择第c个类别对应的预测模型φc为该条时间序列的预测模型,将每条时间序列的历史数据(x1,x2,...,xT)输入到该预测模型中,得到预测结果(o1,o2,...,oT)。
步骤四、识别是否发生概念漂移:
其中yt=xt+1。
其中α为更新参数时学习率,一般设定为0.005。定义φ′c为历史拟合模型。
(4.2)基于模型中间参数在新数据上建模概念漂移:
基于之前对于概念漂移的定义,概念漂移可以通过模型在新数据上的拟合效果来反映。如果在历史数据上拟合好的模型在新数据上拟合的误差很大,则认为出现了概念漂移。给定新数据(xT+1,x2,...,xT+K),使用历史拟合模型φ′c的拟合,记拟合损失函数为
步骤五、根据拟合历史数据的损失和概念漂移更新时间序列预测系统的所有参数:
其中β为更新参数时的学习率,一般设为0.001。相比α,β的值通常会设置得更小,因为历史数据要比新数据长(3∶2),所以其梯度所占比重应该设置得更大;另外,由于新数据损失函数的加入会使得训练过程变得不稳定,所以通过减小新数据损失函数的训练比重可以防止预测模型的参数发生巨大的变动,从而使得训练过程更加稳定。
(5.2)更新分类模型参数:由于在训练数据集中并没有时间序列属于那个类的真实标签,为了能更新分类模型参数,通过REINFORCE规则[1]来为分类模型计算目标函数,该目标函数用于计算更新分类模型参数的梯度。基于REINFORCE规则计算的目标函数为,
更新分类模型参数θ的方式为梯度下降,记为,
步骤六、在完成以上步骤中所有参数的更新后,继续使用训练集中的所有时间序列执行步骤三~步骤五一共1000轮次,结束训练步骤。结束训练步骤时记录下训练集中所有时间序列的分类模型的分类结果,记为c(i)。
(二)系统测试步骤:给定训练集中的任意N条时间序列,预测K个未来其未来数据,并在已经划分出来的未来数据上计算时间序列预测的精确度。
步骤三:根据得到的K个预测结果和未来数据,计算相应指标MAE和RMSE。
本发明的时间序列预测系统中部署的预测模型可以是任意的现有的时间序列预测模型,在测试系统的过程中,选择了现有效果最优的几个时间序列预测模型:循环门控单元神经网络(GRU[2]),长短期记忆循环神经网络(LSTM[3])和时序卷积网络(TCN[4])作为系统中的预测模型。基于测试结果,分别部署预测模型到本发明的系统中的时间序列预测精确度都比相应的预测模型、以及现有的时间序列预测系统有明显提高。其中,预测精确度最好的当属GRU作为预测模型部署到本发明的系统中,特别在Stock数据集上,预测精确度提高可以达33%。在三个相同的数据集上,使用GRU作为时间序列预测模块中预测器的结构时,与其他时间序列预测模型在各个数据集上预测的RMSE和MAE的对比:
Climate数据集:
ARIMA:RMSE1.0644,MAE0.8485
GRU:RMSE0.84,MAE0.60
LSTM:RMSE0.86,MAE0.82
TCN:RMSE0.86,MAE0.82
Timed-LSTM:RMSE0.79,MAE0.61
DARNN:RMSE0.79,MAE0.53
LSTNet:RMSE0.75,MAE0.57
LLF(GRU):RMSE0.69,MAE0.51
Stock数据集:
ARIMA:RMSE1.0080,MAE0.5553
GRU:RMSE0.87,MAE0.52
LSTM:RMSE0.97,MAE0.63
TCN:RMSE0.97,MAE0.63
Timed-LSTM:RMSE0.97,MAE0.53
DARNN:RMSE0.85,MAE0.74
LSTNet:RMSE0.79,MAE0.61
LLF(GRU):RMSE0.58,MAE0.51
Synthetic数据集:
ARIMA:RMSE0.0224,MAE0.0201
GRU:RMSE0.02,MAE0.02
LSTM:RMSE0.03,MAE0.02
TCN:RMSE0.03,MAE0.02
Timed-LSTM:RMSE0.05,MAE0.03
DARNN:RMSE0.02,MAE0.01
LSTNet:RMSE0.03,MAE0.02
LLF(GRU):RMSE0.0077,MAE0.0046
本发明能够广泛应用于基于神经网络的时间序列预测系统,以提升系统在未来时间点上的预测效果。
现有处理未来数据变化的策略有:基于新数据微调模型和基于新数据和历史数据重新训练模型[5]。与这两种策略相比,本发明时间序列预测系统在保证低于重新训练时间复杂度和模型微调方法训练时间的情况下,实现最高的时间序列预测准确度。模型预测效果以及训练时间如图3和图4所示。首先,在图3中,我们比较了使用了两种策略的ARIMA模型[6]和循环门控神经网络模型(GRU[2]),与本发明时间序列预测系统的预测精确度。该图的纵轴表示RMSE,可以看出,本发明中的时间序列预测系统(红线表示的数据)要比对比的两个模型及相应策略在所有三个数据集上取得更准确的预测效果,特别地在Stock数据集上,取得了近50%的提升。另外,由于处理未来数据变化的策略和本发明提出的方法的目的都是让预测模型在过去数据上拟合得精准,从图3可以看出,本发明提出的方法可以同时精确地拟合过去数据和新数据(红色虚线和绿色虚线之间的距离要小于三个数据集上同颜色柱子之间的差距),这说明本发明中的方法可以在保持历史信息的情况下,精准地捕捉到概率漂移的发生,并通过本发明中的更新方法来同时最小化历史数据拟合误差和新数据拟合误差,这是现有处理未来数据变化的两种策略还无法做到的。其次,图4表示了循环门控神经网络模型在三个数据集上使用基于新数据微调模型和基于新数据和历史数据重新训练模型的两种策略和本发明中的方法的训练时间,可以看出本方法所需的训练时间在三个数据集上都是最少的。
由于本发明中的时间序列预系统引入了时间序列分类模型,并基于时间序列预测的结果对数据序列进行了分类,相当于对训练数据中的时间序列进行了聚类,通过观察训练结束后分类器的分类结果,可以发现本发明的时间序列分类器可以将线形、频率等时间序列特征相似的数据分到同一个类,那么本发明中的时间序列预测系统可以认为是一个可执行多任务(聚类和时间序列预测)的系统。对训练数据集中的数据聚类效果如图5所示。在图5中,每个点表示一条时间序列,颜色相同的点为被分类模型分到同一类的点。从图中举的例子可以看出,来自不同类的时间序列有不同的频率(频率大小不同)。被聚到同一个类的序列(红色的两条时间序列),在周期和频率都有一定的相似性。
参考文献
[1]Williams R J.Simple statistical gradient-following algorithms forconnectionist reinforcement learning[J].Machine learning,1992,8(3):229-256.
[2]Chung J,Gulcehre C,Cho K H,et al.Empirical evaluation of gatedrecurrent neural networks on sequence modeling[J].arXiv preprint arXiv:1412.3555,2014.
[3]Hochreiter S,Schmidhuber J.Long short-term memory[J].Neuralcomputation,1997,9(8):1735-1780.
[4]Bai S,Kolter J Z,Koltun V.An empirical evaluation of genericconvolutional and recurrent networks for sequence modeling[J].arXiv preprintarXiv:1803.01271,2018.
[5]Zhang Y,Feng F,Wang C,et al.How to retrain recommender system?Asequential meta-learning method[C]//Proceedings of the 43rd International ACMSIGIR Conference on Research and Development in Information Retrieval.2020:1479-1488.
[6]Hillmer S C,Tiao G C.An ARIMA-model-based approach to seasonaladjustment[J].Journal of the American Statistical Association,1982,77(377):63-70.
[7]Yin X,Goudriaan J A N,Lantinga E A,et al.A flexible sigmoidfunction of determinate growth[J].Annals of botany,2003,91(3):361-371.
[8]Karlik B,Olgac A V.Performance analysis of various activationfunctions in generalized MLP architectures of neural networks[J].International Journal of Artificial Intelligence and Expert Systems,2011,1(4):111-122。
Claims (2)
1.一种提升时间序列预测系统预测时间序列效果的方法,是基于概念漂移建模技术的;其中,所述时间序列预测系统包括:若干个架构相同的时间序列预测模型,一个用于时间序列数据相似度评估的时间序列分类模型,以及若干条长度相同的时间序列数据;这里,所述时间序列数据是一组按照发生时间先后顺序进行排列的数据点序列,其中每个数据点表示为一个实数;该时间序列预测系统预测的基本流程为:时间序列预测模型以一组长度固定的时间序列作为输入,输出接下来一个时间点或几个时间点的数据点预测值;其中,作为输入的固定长度时间序列称为过去数据;在接下来一个时间点或几个时间点的真实值称为未来数据;时间序列预测系统基于过去数据输出的接下来一个时间或几个时间点的数据点称为预测结果;时间序列预测系统的目标为使得预测结果与未来数据的差距尽可能地小;
其中,所述若干个不同的时间序列预测模型用于属于不同类的时间序列的概念漂移建模以及未来数据预测;所述时间序列分类模型为一个循环神经网络模型,该循环神经网络的最后一个时间节点的输出用于计算某条时间序列属于某一个类的概率,用于对时间序列预测系统中所有的时间序列进行分类;所述若干条长度相同的时间序列用于分类,然后在同一个类的时间序列数据上使用时间序列预测模型拟合历史数据并建模概念漂移;利用基于REINFORCE规则的端到端训练框架学习所有时间序列预测模型和时间序列分类模型;
所述方法具体包括:
(1)首先,作为时间序列模型输入的过去数据与未来数据之间存在差异,定义这种差异为概念漂移;将每条时间序列的过去数据划分为历史数据和新数据;其中历史数据和新数据的总长度和过去数据的总长度相同;并将每条时间序列数据的过去数据输入给时间序列分类模型,得到该时间序列的类标签;
(2)然后,标签属于同一类的时间序列数据共享同一个时间序列预测模型,并用该时间序列预测模型在属于该类的所有历史数据上进行数据拟合,并通过拟合误差计算得到各个中间时间序列预测模型参数;这里,拟合误差也为历史数据损失函数;
(3)使用该中间参数对相应类中的时间序列数据的新数据进行拟合,计算拟合误差,将其记为新数据损失函数;若拟合误差较大,则说明历史数据和新数据之间发生了概念漂移;
(4)使用历史数据损失函数和新数据损失函数共同更新相应的时间序列预测模型参数;
(5)最后,用每条时间序列的历史数据损失函数和新数据损失函数的类概率加权总和来更新时间序列预测模型;对时间序列预测模型和分类模型的训练是一个端到端的训练过程,即该过程无需分阶段进行;在所有时间序列预测模型和分类模型都收敛后,系统中的每一个条时间序列可使用相应的时间序列预测模型进行预测。
2.根据权利要求1所述的提升时间序列预测系统预测时间序列效果的方法,其特征在于,鉴于分类模型和预测模型在训练之后才可以使用,于是所述方法的具体操作步骤分为:系统训练步骤和系统测试步骤;其中,系统训练步骤为学习时间序列预测系统中所有参数;系统测试步骤为具体使用时间序列预测系统来输出持续输出未来数据;
(一)系统训练:
步骤一、划分训练数据集:将训练集中的时间序列数据沿时间轴按照历史数据和新数据进行划分;
设时间序列预测系统中共有N条时间序列,对于任意一条时间序列数据(x1,x2,...,xt),其中,t>T,选定参数T与K,其中,序列的前T个数据构成的子序列为历史数据,T+1到T+K个数据构成的子序列为新数据,记为(xT+1,x2,...,xT+K);选定所有时间序列数据的类别总数为C;
步骤二、初始化模型:在系统训练开始之前,初始化预测模型与分类模型:
(2.1)初始化预测模型:选定C个预测模型,每个时间序列预测模型定义为其中,c∈{1,...,C},φc表示第c个预测模型的待求解参数;在每个时间点t,该模型的输入为输出为其中,该输出表示模型基于t个时间点对第t+1时间点数据的预测;使用高斯随机值来初始化φc中的所有待求解参数;
(2.2)初始化分类模型:选定的时间序列分类模型由两个部分组成:循环神经网络模型和单层全连接网络;其中,所述循环神经网络模型,其计算单元为以Relu函数为激活函数的多层全连接神经网络;在每个时间点t,该循环神经网络的输入层维度为其输出维度为向量该输出向量表示循环神经网络对于前t个时间点数据信息的压缩;所述以Relu函数为激活函数的单层全连接神经网络,其输入为循环神经网络在第T个时间点的输出向量输出向量维度该向量的每一维数值表示当前时间序列属于该维代表的类c的概率;由这两个模块组成的时间分类模型记为gθ,其中θ为以上两个模块中的所有待求解参数,其最终输出记为:gθ(x1:T);使用高斯随机值来初始化θ中的所有待求解参数;
步骤三、拟合历史数据:
(3.1)获取每条时间序列的分类信息:将训练数据集中的每条时间序列的历史数据(x1,x2,...,xT)输入到时间序列分类模型gθ中,获得分类模型的输出gθ(x1:T),并取概率值最大的维度c作为该时间序列的类别,即,
c=argmax1,...,ChC,
(3.2)拟合每条时间序列历史数据:根据(3.1)中得到的每条时间序列类别c,选择第c个类别对应的预测模型φc为该条时间序列的预测模型,将每条时间序列的历史数据(x1,x2,...,xT)输入到该预测模型中,得到预测结果(o1,o2,...,oT);
步骤四、识别是否发生概念漂移,具体使用新旧模型参数在新数据上的损失函数差距来识别是否可能发生了概念漂移:
其中,yt=xt+1;
其中,α为更新参数时学习率,为人工提前设定;定义φ′c为历史拟合模型;
(4.2)基于模型中间参数在新数据上的拟合效果来识别是否发生了概念漂移:
基于概念漂移的定义,概念漂移可以通过模型在新数据上的拟合效果来反映;如果在历史数据上拟合好的模型在新数据上拟合的误差很大,则认为出现了概念漂移;给定新数据(xT+1,x2,...,xT+K),使用历史拟合模型φ′c的拟合,记拟合损失函数为也称为新数据损失函数:
步骤五、根据拟合历史数据的损失和概念漂移,更新时间序列预测系统的所有参数:
(5.1)鉴于建立概念漂移的目的是为了最小化模型在新数据上的拟合损失函数,所以提出最小化拟合新数据的损失函数;另外,为了不使得预测模型遗忘对历史数据的拟合,所以同时也最小化拟合历史数据的损失函数;最终,使用两种损失函数来更新预测模型参数;
其中,β为更新参数时的学习率,为人工提前设置;
(5.3)更新分类模型参数:由于在训练数据集中并没有时间序列属于那个类的真实标签,为了能更新分类模型参数,通过REINFORCE规则来为分类模型计算目标函数,该目标函数用于计算更新分类模型参数的梯度;基于REINFORCE规则计算的目标函数为:
更新分类模型参数θ的方式为梯度下降,记为:
其中,β为更新参数时的学习率,为人工提前设置。
步骤六、在完成以上步骤中所有参数的更新后,继续执行步骤三~步骤五一共E轮次,训练轮次为人工提前设置,或当所有预测模型的参数几乎不发生变化的时候,结束训练步骤;结束训练步骤时时记录下训练集中所有时间序列的分类模型的分类结果,记为c(i);
(二)系统测试:给定训练集中的任意1条或N条时间序列,预测1个或K个未来其未来数据;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387699.8A CN114091752B (zh) | 2021-11-22 | 2021-11-22 | 一种提升时间序列预测系统预测时间序列效果的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387699.8A CN114091752B (zh) | 2021-11-22 | 2021-11-22 | 一种提升时间序列预测系统预测时间序列效果的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114091752A true CN114091752A (zh) | 2022-02-25 |
CN114091752B CN114091752B (zh) | 2024-09-03 |
Family
ID=80302823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111387699.8A Active CN114091752B (zh) | 2021-11-22 | 2021-11-22 | 一种提升时间序列预测系统预测时间序列效果的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114091752B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114925116A (zh) * | 2022-06-01 | 2022-08-19 | 中国西安卫星测控中心 | 一种航天器遥测数据预测方法 |
CN116595356A (zh) * | 2023-07-17 | 2023-08-15 | 腾讯科技(深圳)有限公司 | 时序信号预测方法、装置、电子设备及存储介质 |
CN117407681A (zh) * | 2023-12-15 | 2024-01-16 | 江苏为恒智能科技有限公司 | 一种基于向量聚类的时序数据预测模型建立方法 |
CN117590190A (zh) * | 2024-01-18 | 2024-02-23 | 国网山东省电力公司营销服务中心(计量中心) | 一种光伏逆变器igbt老化故障预测方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170103340A1 (en) * | 2015-10-09 | 2017-04-13 | Fair Isaac Corporation | Method for Real-Time Enhancement of a Predictive Algorithm by a Novel Measurement of Concept Drift Using Algorithmically-Generated Features |
CN111797122A (zh) * | 2020-05-28 | 2020-10-20 | 浙江大学 | 高维重现概念漂移流数据的变化趋势预测方法及装置 |
US20200401888A1 (en) * | 2019-06-24 | 2020-12-24 | Tata Consultancy Services Limited | Time series prediction with confidence estimates using sparse recurrent mixture density networks |
WO2021206807A1 (en) * | 2020-04-10 | 2021-10-14 | Microsoft Technology Licensing, Llc | Prefetching and/or computing resource allocation based on predicting classification labels with temporal data |
CN113554466A (zh) * | 2021-07-26 | 2021-10-26 | 国网四川省电力公司电力科学研究院 | 一种短期用电量预测模型构建方法、预测方法和装置 |
-
2021
- 2021-11-22 CN CN202111387699.8A patent/CN114091752B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170103340A1 (en) * | 2015-10-09 | 2017-04-13 | Fair Isaac Corporation | Method for Real-Time Enhancement of a Predictive Algorithm by a Novel Measurement of Concept Drift Using Algorithmically-Generated Features |
US20200401888A1 (en) * | 2019-06-24 | 2020-12-24 | Tata Consultancy Services Limited | Time series prediction with confidence estimates using sparse recurrent mixture density networks |
WO2021206807A1 (en) * | 2020-04-10 | 2021-10-14 | Microsoft Technology Licensing, Llc | Prefetching and/or computing resource allocation based on predicting classification labels with temporal data |
CN111797122A (zh) * | 2020-05-28 | 2020-10-20 | 浙江大学 | 高维重现概念漂移流数据的变化趋势预测方法及装置 |
CN113554466A (zh) * | 2021-07-26 | 2021-10-26 | 国网四川省电力公司电力科学研究院 | 一种短期用电量预测模型构建方法、预测方法和装置 |
Non-Patent Citations (1)
Title |
---|
仇媛: "基于神经网络的时间序列数据异常检测方法的研究", 《中国优秀硕士学位论文全文数据库》, 15 July 2021 (2021-07-15), pages 1 - 58 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114925116A (zh) * | 2022-06-01 | 2022-08-19 | 中国西安卫星测控中心 | 一种航天器遥测数据预测方法 |
CN116595356A (zh) * | 2023-07-17 | 2023-08-15 | 腾讯科技(深圳)有限公司 | 时序信号预测方法、装置、电子设备及存储介质 |
CN116595356B (zh) * | 2023-07-17 | 2023-09-22 | 腾讯科技(深圳)有限公司 | 时序信号预测方法、装置、电子设备及存储介质 |
CN117407681A (zh) * | 2023-12-15 | 2024-01-16 | 江苏为恒智能科技有限公司 | 一种基于向量聚类的时序数据预测模型建立方法 |
CN117407681B (zh) * | 2023-12-15 | 2024-03-22 | 江苏为恒智能科技有限公司 | 一种基于向量聚类的时序数据预测模型建立方法 |
CN117590190A (zh) * | 2024-01-18 | 2024-02-23 | 国网山东省电力公司营销服务中心(计量中心) | 一种光伏逆变器igbt老化故障预测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114091752B (zh) | 2024-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rangapuram et al. | Deep state space models for time series forecasting | |
CN114091752B (zh) | 一种提升时间序列预测系统预测时间序列效果的方法 | |
US10832123B2 (en) | Compression of deep neural networks with proper use of mask | |
CN111542843A (zh) | 利用协作生成器积极开发 | |
CN107992976B (zh) | 热点话题早期发展趋势预测系统及预测方法 | |
US20200167659A1 (en) | Device and method for training neural network | |
US20200193075A1 (en) | System and method for constructing a mathematical model of a system in an artificial intelligence environment | |
Petridis et al. | Predictive modular neural networks: applications to time series | |
Wei et al. | Meta-learning hyperparameter performance prediction with neural processes | |
CN114463540A (zh) | 使用神经网络对图像进行分割 | |
CN114500335A (zh) | 基于模糊c均值和混合核最小二乘支持向量机的sdn网络流程控制方法 | |
CN117743896A (zh) | 基于dtw的多元时序特征预测方法及系统 | |
CN115564155A (zh) | 一种分散式风电机组功率预测方法及相关设备 | |
Urgun et al. | Composite power system reliability evaluation using importance sampling and convolutional neural networks | |
Xiao et al. | Group-wise feature selection for supervised learning | |
CN117079017A (zh) | 可信的小样本图像识别分类方法 | |
Aoki et al. | Adaptive synapse arrangement in cortical learning algorithm | |
CN115794805A (zh) | 一种中低压配网量测数据补齐方法 | |
CN116596107A (zh) | 基于小样本学习的多失效模式下设备剩余寿命预测方法 | |
Patel et al. | Learning sampling policies for domain adaptation | |
Chandra et al. | Bayesian multi-task learning for dynamic time series prediction | |
Haque et al. | Improved adam-based feedforward deep neural network model for personalized asthma predictions | |
Goyal et al. | Strong α-cut and associated membership-based modeling for fuzzy time series forecasting | |
Hauser et al. | Probabilistic forecasting of symbol sequences with deep neural networks | |
Louw et al. | Remaining Useful Life Prediction and Uncertainty Modelling with Bayesian Deep Learning |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |