CN116843012A - 一种融合个性化上下文和时域动态特征的时序预测方法 - Google Patents
一种融合个性化上下文和时域动态特征的时序预测方法 Download PDFInfo
- Publication number
- CN116843012A CN116843012A CN202310622811.4A CN202310622811A CN116843012A CN 116843012 A CN116843012 A CN 116843012A CN 202310622811 A CN202310622811 A CN 202310622811A CN 116843012 A CN116843012 A CN 116843012A
- Authority
- CN
- China
- Prior art keywords
- data
- prediction
- training
- encoder
- time
- 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 58
- 238000012549 training Methods 0.000 claims abstract description 78
- 238000003062 neural network model Methods 0.000 claims abstract description 21
- 238000012360 testing method Methods 0.000 claims abstract description 12
- 238000012512 characterization method Methods 0.000 claims abstract description 3
- 238000000605 extraction Methods 0.000 claims description 54
- 230000006870 function Effects 0.000 claims description 36
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 13
- 238000013527 convolutional neural network Methods 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 5
- 239000011159 matrix material Substances 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 4
- 235000006629 Prosopis spicigera Nutrition 0.000 claims description 2
- 240000000037 Prosopis spicigera Species 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims description 2
- 230000010354 integration Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 7
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000002679 ablation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008033 biological extinction Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000012731 temporal analysis Methods 0.000 description 1
- 238000000700 time series analysis Methods 0.000 description 1
Classifications
-
- 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
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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
- G06N3/098—Distributed learning, e.g. federated learning
-
- 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
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2123/00—Data types
- G06F2123/02—Data types in the time domain, e.g. time-series data
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种融合个性化上下文和时域动态特征的时序预测方法,包含如下步骤:步骤1,对数据集中的时间序列数据进行归一化以及无重叠的窗口化;步骤2,搭建一种多任务联合训练的神经网络模型,使其能够同时捕获个性化上下文和时域动态特征,利用训练数据完成对编码器的预训练;步骤3,基于预训练后的编码器提取数据表征,完成下游预测模块的训练;步骤4,利用最终得到的编码器和预测模块,对测试数据进行预测并评估模型。本发明提供的方法通过多任务联合训练来同时提取个性化上下文和时域动态特征,丰富了编码器所提取的表征信息,能够显著提升对时间序列数据的预测效果。
Description
技术领域
本发明涉及一种时间序列预测方法,特别是一种融合个性化上下文和时域动态特征的时序预测方法。
背景技术
时序预测即时间序列预测是一种经典时间序列分析方法,其对各领域来说都具有重大意义。时间序列预测是从历史时序数据中学习其模式,并根据历史数据来对未来一段时间内数据的走向进行预测。该任务可以应用在云计算、气象监测、能源供给等领域,例如对云计算设备未来的计算需求进行预测,实现计算资源的提前分配;对各种气象指标进行预测,提前预防自然灾害;对能源消耗进行实时预测,避免出现能源短缺与能源过剩等。
传统的时间序列预测方法通过假设数据遵循某种分布,通过模拟数据的分布并进行预测。由于时间序列数据的动态性质,其数据分布会随着时间发生偏移,因此传统的时间序列预测方法已经无法很好地实现动态预测。
深度神经网络是一种灵活的非线性模型,被广泛应用于时间序列预测任务。具体而言,循环神经网络通过记忆历史信息,可以方便地学习到时间序列的时间动态。长短期记忆神经网络是一种典型的RNN变种模型,它可以通过遗忘门来缓解梯度消失,并能够学习时间序列的长期时间动态。近年来,基于表征学习的方法发展迅速,能够通过提取数据的鲁棒表征并基于表征完成预测任务。然而,现有的基于表征学习的方法往往仅提取单一的特征信息,其单一的训练任务导致模型难以获取全面的表征。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种融合个性化上下文和时域动态特征的时序预测方法。
为了解决上述技术问题,本发明公开了一种融合个性化上下文和时域动态特征的时序预测方法,包含以下步骤:
步骤1,对数据集中的包含时间序列的文本数据进行划分,划分为训练数据集和测试数据集,并对划分后的数据集分别进行数据预处理,包括归一化和无重叠窗口化,其中:
归一化,即对数据集中包含时间序列的文本数据中的每一条时间序列进行归一化操作,将所有数据放缩到同样的范围;
无重叠窗口化,即对归一化后的时间序列进行窗口化,每个窗口长度为T,窗口滑动步长为T,即将时间序列切分为不重叠的子窗口。
步骤2,搭建多任务联合训练的神经网络模型,用于捕获个性化上下文和时域动态特征,利用训练数据集对多任务联合训练的神经网络模型中进行预训练,具体包括:
步骤2-1,搭建个性化上下文提取模块,该模块包括三个部分:数据增强部分,编码器部分,以及对比学习部分,具体包括:
步骤2-1-1,所述数据增强部分,即设计两种不同的数据增强策略,分别是弱增强策略和强增强策略,为每一条数据生成一对不同但相关的样本,作为正样本对;
其中,弱增强策略是将随机扰动添加到原始数据中,并对数值进行放大;强增强策略是指将原始数据切分为随机数量的子序列,并随机打乱子序列的顺序后重新排列,最后在重新排列后的序列中添加随机扰动;
步骤2-1-2,所述编码器部分,即设计编码器结构,所述编码器包括输入投影层和空洞卷积神经网络层;其中,输入投影层是一个全连接层,用于将输入数据映射到高维空间,空洞卷积神经网络层由十个残差块组成,每个残差块包含两个带有膨胀参数的一维卷基层;将经过步骤2-1-1中的数据增强后的数据输入所述编码器,并提取数据表征;
步骤2-1-3,所述对比学习部分,即设计对比学习策略,构造正负样本对;具体包括:
将同一条数据的两个增强结果视为正样本对,同一个批次中其他数据的增强结果视为负样本对,基于InfoNCE损失训练个性化上下文提取模块,具体方法如下:
其中,是个性化上下文提取模块的损失函数,τ是温度参数,/>是指示函数,,/>和/>分别代表弱增强样本和强增强样本经过编码器后的第i个输出,rj表示第j个编码器的编码结果,B表示训练批次大小;sim(,)表示计算余弦相似度;exp()表示取指数。
步骤2-2,搭建时域动态特征提取模块,该模块包括三个部分:随机掩码部分,编码器部分,以及重构预测部分,具体包括:
步骤2-2-1,所述随机掩码部分,即对原始数据进行随机掩码,对输入序列中的每一个变量随机选取比例为r的部分,用[MASK]标记来替换掉原有数值;
步骤2-2-2,编码器部分,即数据经过步骤2-2-1中的随机掩码后,输入步骤2-1-2中设计的编码器结构,提取数据表征;
步骤2-2-3,重构预测部分,即将步骤2-2-2中获取的数据表征输入一个线性层,用于重构被掩码的数据,方法如下:
其中,数据是数据xt的重构结果,W∈Rd×m是线性层权重矩阵,其中d是多维时间序列的维度,m是所述编码器的编码结果的维度;
将对掩码部分的重构均方误差作为时域动态特征提取模块的损失函数具体计算方法如下:
其中,M代表所有被掩码的数据点的坐标集合,表示重构结果,x(t,q)表示原始输入。
步骤2-3,基于步骤2-1和步骤2-2中的两个模块搭建整体网络模型。
所述的对多任务联合训练的神经网络模型进行预训练,即联合个性化上下文提取模块和时域动态特征提取模块的损失函数,进行多任务联合预训练,总损失函数计算方法如下:
其中,α和β是权重参数;
首先定义超参数和用于更新多任务联合训练的神经网络模型参数的模型优化器,然后设置学习率调度器以及最大迭代次数或早停策略;
对多任务联合训练的神经网络模型进行无监督预训练,基于总损失函数进行梯度更新,获取预训练好的编码器。
步骤3,利用步骤2中预训练后的多任务联合训练的神经网络模型中的编码器提取数据表征,并基于数据表征对下游预测模块进行训练,将训练好的下游预测模块作为时序预测模型;
所述的下游预测模块,是由多层线性层构成的时序预测模块,将步骤2中所训练的编码器的编码结果输入该预测模块,获取预测结果。
步骤4,利用步骤3中得到的时序预测模型,对测试数据集进行预测并评估时序预测模型,具体包括:
首先将测试数据集中的数据输入步骤2中得到的经过预训练的编码器模块,获取数据表征,然后将数据表征输入步骤3中所述的的下游预测模块,获取最终的预测结果,根据最终的预测结果计算预测误差,并评估时间序列预测模型。
步骤5,将步骤4中最终获得的时序预测模型应用于目标数据集中文本数据的时序预测过程中。
步骤2-1-1中所述的随机数量,不大于5。
步骤2-1-3中所述的指示函数,即当i≠j时,指示函数的值为1,否则为0。
有益效果:
相比以往的时间序列预测方法,本发明的优势在于:通过两种训练任务分别用于提取个性化上下文和时域动态特征,并通过联合训练使模型能够同时提取这两类特征,相比于传统方法单一的训练任务能够提取到更加丰富的数据表征,进而使其在下游的时间序列预测任务上能够获得更好的预测性能。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明流程图。
图2为本发明中个性化上下文提取模块结构示意图。
图3为随机掩码示意图。
图4为本发明中时序预测模型整体结构图。
图5为本发明在电力消耗数据集上的预测效果示意图。
具体实施方式
本发明提出一种融合个性化上下文和时域动态特征的时序预测方法,通过设计两种不同的信息提取模块,并对其进行联合训练,使模型能够同时提取个性化上下文和时域动态特征,进而提升模型的预测效果,如图1所示,具体包含如下步骤:
步骤1,对数据集中的时间序列数据进行归一化以及无重叠的窗口化;
所述数据集包含时间序列的文本数据;
步骤2,搭建一种多任务联合训练的神经网络模型,使其能够同时捕获个性化上下文和时域动态特征,利用训练数据完成对编码器的预训练;
步骤3,利用步骤2中预训练后的编码器来提取数据表征,并基于数据表征完成下游预测模块的训练,获取时序预测模型;
步骤4,利用步骤3中得到的时序预测模型,对测试数据进行预测并评估模型。
本发明中,所述步骤1包括:
对数据集中每一条时间序列进行归一化操作,将每一条时间序列缩放至最小值为0,最大值为1:
其次对序列进行窗口化,每个窗口长度为T,窗口滑动步长为T,即将每一条时间序列切分为k个不重叠的长度为T的子窗口,便于后续模型提取时序依赖特征并进行时间序列预测。
本发明中,所述步骤2包括以下步骤:
步骤2-1,搭建个性化上下文提取模块,该模块包括三个部分:数据增强部分,编码器部分,以及对比学习部分;
步骤2-2,搭建时域动态特征提取模块,该模块包括三个部分:随机掩码部分,编码器部分,以及重构预测部分;
步骤2-3,基于步骤2-1和步骤2-2中的两个模块搭建整体网络模型,利用训练数据集预训练编码器;
本发明中,所述步骤2-1所示的个性化上下文提取模块,如图2所示,具体包括:
步骤2-1-1,设计两种不同的数据增强策略,分别是弱增强和强增强,为每一条数据生成一对不同但相关的样本,作为正样本对。
具体而言,弱增强策略是指将随机扰动添加到原始数据中,并对数值进行放大;强增强策略是指将原始数据切分为随机数量(最多5个)的子序列,并随机打乱子序列的顺序后重新排列,最后在重新排列后的序列中添加随机扰动。
步骤2-1-2,设计编码器结构,包括输入投影层和空洞卷积神经网络层。其中,输入投影层是一个全连接层(参考:Rosenblatt,Frank."The perceptron:a probabilisticmodel for information storage and organization in the brain."Psychologicalreview 65.6(1958):386.),用于将输入数据映射到高维空间,空洞卷积神经网络层(参考:Bai,Shaojie,J.Zico Kolter,and Vladlen Koltun."An empirical evaluation ofgeneric convolutional and recurrent networks for sequence modeling."arXivpreprint arXiv:1803.01271(2018).)由十个残差块组成,每个残差块包含两个带有膨胀参数的一维卷基层。将步骤2-1-1中数据增强后的数据输入编码器,并提取数据表征;
步骤2-1-3,设计对比学习策略,构造正负样本对。具体来说,将同一条数据的两个增强结果视为正样本对,同一个批次中其他数据的增强结果视为负样本对,基于InfoNCE损失来训练模型:
其中,τ是可调节的温度参数,是指示函数,当i≠j时值为1,否则为0,/>和/>分别代表弱增强样本和强增强样本经过编码器后的输出;
本发明中,所述步骤2-2包括:
步骤2-2-1,对原始数据进行随机掩码,如图3所示。图中的例子是一个完整的输入窗口数据,横坐标是时间戳维度,纵坐标是序列的维度,其中阴影部分即为被随机掩码的数据。具体地,对输入序列中的每一个变量随机选取比例为r的部分,用[MASK]标记来替换掉原有数值;
步骤2-2-2,数据经过步骤2-2-1中的随机掩码后,输入步骤2-1-2中设计的编码器结构,提取数据表征;
步骤2-2-3,将步骤2-2-2中获取的数据表征输入一个线性层,用于重构被掩码的那部分数据:
其中,是xt的重构结果,W∈Rd×m是线性层权重矩阵,其中d是多维时间序列的维度,m是编码器的编码结果的维度;
将模型对掩码部分的重构均方误差作为时域动态特征提取模块的损失函数:
其中,M代表所有被掩码的数据点的坐标集合;
本发明中,所述步骤2-3包括:
步骤2-3-1,结合步骤2-1中的个性化上下文提取模块和步骤2-2中的时域动态特征提取模块,共享两个模块的编码器部分,并且联合这两个模块的损失函数,实现多任务联合预训练,如图4所示,数据分别通过数据增强模块和序列掩码模块后送入编码器,将提取的编码送入个性化上下文提取模块和时域动态特征提取模块,联合两个模块的损失函数:
其中,是个性化上下文提取模块的损失函数,/>是时域动态特征提取模块的损失函数;
步骤2-3-2,定义预训练相关配置,训练模型之前,首先定义超参数和用于更新模型参数的模型优化器,然后设置学习率调度器以及最大迭代次数或相关的早停策略。具体来说,输入数据窗口长度L=96,数据表征将输入三层全连接层来获取预测结果,对于共享编码器的超参数,将输入投影层的隐藏维数设置为64,空洞卷积神经网络模块中的每个残差块的内核大小为3,通道大小为64,编码器提取的时间序列表示的维数设置为320;在个性化上下文提取模块中,弱增强的缩放比设置为0.001,强增强的抖动比设为0.001;在时域动态特征提取模块中,掩码比例r=15%。最后,对于训练过程中的超参数,优化器采用ADAM优化器,批次大小和学习率分别设置为32和0.001,训练迭代轮数设置为200;
步骤2-3-3,对模型进行无监督预训练,基于步骤2-3-1中定义的损失函数进行梯度更新,获取预训练好的编码器;
本发明中,所述步骤3包括以下步骤:
将数据输入步骤2中预训练好的编码器并提取数据表征,利用数据表征来训练由多层线性层构成的时序预测模块,将步骤2中所训练的编码器的编码结果输入该预测模块,获取预测结果;
本发明中,所述步骤4包括以下步骤:
首先将测试数据输入步骤2中得到的预训练编码器模块,获取数据表征,然后将数据表征输入步骤3中得到的预测模块,获取最终的模型预测结果。
实施例1:
在本实施例中,一种融合个性化上下文和时域动态特征的时序预测方法具体包括:
步骤1,对数据集中的时间序列数据进行归一化以及无重叠的窗口化,时间序列数据为已有的公开的时间序列数据集,所述数据集中包含时间序列的文本数据,包括:ETTh1,ETTh2,ECL和Exchange,以CSV等格式存储于计算机中。这个步骤包含:
对数据集中每一条时间序列进行归一化操作,将每一条时间序列缩放至最小值为0,最大值为1:
其次对序列进行窗口化,每个窗口长度为T,窗口滑动步长为T,即将每一条时间序列切分为k个不重叠的长度为T的子窗口,便于后续模型提取时序依赖特征并进行时间序列预测。
步骤2,搭建一种多任务联合训练的神经网络模型,使其能够同时捕获个性化上下文和时域动态特征,利用训练数据完成对编码器的预训练。这个步骤包含:
步骤2-1,搭建个性化上下文提取模块,该模块包括三个部分:数据增强部分,编码器部分,以及对比学习部分。包含:
步骤2-1-1,设计两种不同的数据增强策略,分别是弱增强和强增强,为每一条数据生成一对不同但相关的样本,作为正样本对。具体而言,弱增强策略是指将随机扰动添加到原始数据中,并对数值进行放大;强增强策略是指将原始数据切分为随机数量(最多5个)的子序列,并随机打乱子序列的顺序后重新排列,最后在重新排列后的序列中添加随机扰动。
步骤2-1-2,设计编码器结构,包括输入投影层和空洞卷积神经网络层。其中,输入投影层是一个全连接层(参考:Rosenblatt,Frank."The perceptron:a probabilisticmodel for information storage and organization in the brain."Psychologicalreview 65.6(1958):386.),用于将输入数据映射到高维空间,空洞卷积神经网络层(参考:Bai,Shaojie,J.Zico Kolter,and Vladlen Koltun."An empirical evaluation ofgeneric convolutional and recurrent networks for sequence modeling."arXivpreprint arXiv:1803.01271(2018).)由十个残差块组成,每个残差块包含两个带有膨胀参数的一维卷基层。将步骤2-1-1中数据增强后的数据输入编码器,并提取数据表征。
步骤2-1-3,设计对比学习策略,构造正负样本对。具体来说,将同一条数据的两个增强结果视为正样本对,同一个批次中其他数据的增强结果视为负样本对,基于InfoNCE损失来训练模型:
其中,τ是可调节的温度参数,是指示函数,当i≠j时值为1,否则为0,/>和/>分别代表弱增强样本和强增强样本经过编码器后的输出。
步骤2-2,搭建时域动态特征提取模块,该模块包括三个部分:随机掩码部分,编码器部分,以及重构预测部分。包含:
步骤2-2-1,对原始数据进行随机掩码,如图3所示。图中的例子是一个完整的输入窗口数据,横坐标是时间戳维度,纵坐标是序列的维度,其中阴影部分即为被随机掩码的数据。具体地,对输入序列中的每一个变量随机选取比例为r的部分,用[MASK]标记来替换掉原有数值。
步骤2-2-2,数据经过步骤2-2-1中的随机掩码后,输入步骤2-1-2中设计的编码器结构,提取数据表征。
步骤2-2-3,将步骤2-2-2中获取的数据表征输入一个线性层,用于重构被掩码的那部分数据:
其中,是xt的重构结果,W∈Rd×m是线性层权重矩阵,其中d是多维时间序列的维度,m是编码器的编码结果的维度。
将模型对掩码部分的重构均方误差作为时域动态特征提取模块的损失函数:
其中,M代表所有被掩码的数据点的坐标集合。
步骤2-3,基于步骤2-1和步骤2-2中的两个模块搭建整体网络模型,利用训练数据集预训练编码器。包含:
步骤2-3-1,结合步骤2-1中的个性化上下文提取模块和步骤2-2中的时域动态特征提取模块,共享两个模块的编码器部分,并且联合这两个模块的损失函数,实现多任务联合预训练,如图4所示,数据分别通过数据增强模块和序列掩码模块后送入编码器,将提取的编码送入个性化上下文提取模块和时域动态特征提取模块,联合两个模块的损失函数:
其中,是个性化上下文提取模块的损失函数,/>是时域动态特征提取模块的损失函数。
步骤2-3-2,定义预训练相关配置,训练模型之前,首先定义超参数和用于更新模型参数的模型优化器,然后设置学习率调度器以及最大迭代次数或相关的早停策略。具体来说,输入数据窗口长度L=96,数据表征将输入三层全连接层来获取预测结果,对于共享编码器的超参数,将输入投影层的隐藏维数设置为64,空洞卷积神经网络模块中的每个残差块的内核大小为3,通道大小为64,编码器提取的时间序列表示的维数设置为320;在个性化上下文提取模块中,弱增强的缩放比设置为0.001,强增强的抖动比设为0.001;在时域动态特征提取模块中,掩码比例r=15%。最后,对于训练过程中的超参数,优化器采用ADAM优化器,批次大小和学习率分别设置为32和0.001,训练迭代轮数设置为200。
步骤2-3-3,对模型进行无监督预训练,基于步骤2-3-1中定义的损失函数进行梯度更新,获取预训练好的编码器。
步骤3,输入步骤2中预训练好的编码器并提取数据表征,利用数据表征来训练由多层线性层构成的时序预测模块,将步骤2中所训练的编码器的编码结果输入该预测模块,获取预测结果。
步骤4,利用步骤3中得到的时序预测模型,对测试数据进行预测并评估模型。首先将测试数据输入步骤2中得到的预训练编码器模块,获取数据表征,然后将数据表征输入步骤3中得到的预测模块,获取最终的模型预测结果,根据预测误差来评估模型,在每个数据集上,都会分别测试四种不同的预测长度,具体而言,ETT数据集和Exchange数据集的预测长度设置为{24,48,168,336},ECL数据集的预测长度设置为{48,168,336,720}。
本实施例在标准公开数据集ETTh1,ETTh2,ECL和Exchange上的实验结果如表1和表2所示,本发明与主流方法Informer[会议AAAI 2021提出的方法]、TCN[发表在arxiv的方法]、TS-TCC[会议IJCAI 2021提出的方法]和TS2Vec[会议AAAI 2022提出的方法]作比较,每个数据集均对比了四种不同的预测长度,并且分别使用绝对值误差(MAE)和均方误差(MSE)两种评估指标来评估算法效果:
表1
表2
从表1可以看出,对比不同领域的公开数据集,本发明均能取得更好的效果,从四种不同的预测长度来看,不管是短期预测还是长期预测,本发明的预测性能均领先于其他主流方法,有效的证明了本发明的时间序列预测性能。另外,从表2中的消融实验结果可以看出,个性化上下文提取模块和时域动态特征提取模块均能为模型预测性能带来很大提升,验证了这两个模块的有效性。
实施例2:
本发明中所述的一种融合个性化上下文和时域动态特征的时序预测方法可以应用于电力消耗预测,本实施例介绍了本方法在真实采集的电力消耗数据集ETTm1(该数据集以CSV格式存储于计算机中)上的实施步骤及效果,具体包括:
步骤1,对数据集中的时间序列数据进行归一化以及无重叠的窗口化,时间序列数据为真实采集的跨度为两年的电力消耗数据集ETTm1,采集频率为15分钟。这个步骤包含:
对数据集中每一条时间序列进行归一化操作,将每一条时间序列缩放至最小值为0,最大值为1:
其次对序列进行窗口化,每个窗口长度为T,窗口滑动步长为T,即将每一条时间序列切分为k个不重叠的长度为T的子窗口,便于后续模型提取时序依赖特征并进行时间序列预测。
步骤2,搭建一种多任务联合训练的神经网络模型,使其能够同时捕获个性化上下文和时域动态特征,利用训练数据完成对编码器的预训练。这个步骤包含:
步骤2-1,搭建个性化上下文提取模块,该模块包括三个部分:数据增强部分,编码器部分,以及对比学习部分。包含:
步骤2-1-1,设计两种不同的数据增强策略,分别是弱增强和强增强,为每一条数据生成一对不同但相关的样本,作为正样本对。具体而言,弱增强策略是指将随机扰动添加到原始数据中,并对数值进行放大;强增强策略是指将原始数据切分为随机数量(最多5个)的子序列,并随机打乱子序列的顺序后重新排列,最后在重新排列后的序列中添加随机扰动。
步骤2-1-2,设计编码器结构,包括输入投影层和空洞卷积神经网络层。其中,输入投影层是一个全连接层(参考:Rosenblatt,Frank."The perceptron:a probabilisticmodel for information storage and organization in the brain."Psychologicalreview 65.6(1958):386.),用于将输入数据映射到高维空间,空洞卷积神经网络层(参考:Bai,Shaojie,J.Zico Kolter,and Vladlen Koltun."An empirical evaluation ofgeneric convolutional and recurrent networks for sequence modeling."arXivpreprint arXiv:1803.01271(2018).)由十个残差块组成,每个残差块包含两个带有膨胀参数的一维卷基层。将步骤2-1-1中数据增强后的数据输入编码器,并提取数据表征。
步骤2-1-3,设计对比学习策略,构造正负样本对。具体来说,将同一条数据的两个增强结果视为正样本对,同一个批次中其他数据的增强结果视为负样本对,基于InfoNCE损失来训练模型:
其中,τ是可调节的温度参数,是指示函数,当i≠j时值为1,否则为0,/>和/>分别代表弱增强样本和强增强样本经过编码器后的输出。
步骤2-2,搭建时域动态特征提取模块,该模块包括三个部分:随机掩码部分,编码器部分,以及重构预测部分。包含:
步骤2-2-1,对原始数据进行随机掩码,如图3所示。图中的例子是一个完整的输入窗口数据,横坐标是时间戳维度,纵坐标是序列的维度,其中阴影部分即为被随机掩码的数据。具体地,对输入序列中的每一个变量随机选取比例为r的部分,用[MASK]标记来替换掉原有数值。
步骤2-2-2,数据经过步骤2-2-1中的随机掩码后,输入步骤2-1-2中设计的编码器结构,提取数据表征。
步骤2-2-3,将步骤2-2-2中获取的数据表征输入一个线性层,用于重构被掩码的那部分数据:
其中,是xt的重构结果,W∈Rd×m是线性层权重矩阵,其中d是多维时间序列的维度,m是编码器的编码结果的维度。
将模型对掩码部分的重构均方误差作为时域动态特征提取模块的损失函数:
其中,M代表所有被掩码的数据点的坐标集合。
步骤2-3,基于步骤2-1和步骤2-2中的两个模块搭建整体网络模型,利用训练数据集预训练编码器。包含:
步骤2-3-1,结合步骤2-1中的个性化上下文提取模块和步骤2-2中的时域动态特征提取模块,共享两个模块的编码器部分,并且联合这两个模块的损失函数,实现多任务联合预训练,如图4所示,数据分别通过数据增强模块和序列掩码模块后送入编码器,将提取的编码送入个性化上下文提取模块和时域动态特征提取模块,联合两个模块的损失函数:
其中,是个性化上下文提取模块的损失函数,/>是时域动态特征提取模块的损失函数。
步骤2-3-2,定义预训练相关配置,训练模型之前,首先定义超参数和用于更新模型参数的模型优化器,然后设置学习率调度器以及最大迭代次数或相关的早停策略。具体来说,输入数据窗口长度L=96,数据表征将输入三层全连接层来获取预测结果,对于共享编码器的超参数,将输入投影层的隐藏维数设置为64,空洞卷积神经网络模块中的每个残差块的内核大小为3,通道大小为64,编码器提取的时间序列表示的维数设置为320;在个性化上下文提取模块中,弱增强的缩放比设置为0.001,强增强的抖动比设为0.001;在时域动态特征提取模块中,掩码比例r=15%。最后,对于训练过程中的超参数,优化器采用ADAM优化器,批次大小和学习率分别设置为32和0.001,训练迭代轮数设置为200。
步骤2-3-3,对模型进行无监督预训练,基于步骤2-3-1中定义的损失函数进行梯度更新,获取预训练好的编码器。
步骤3,输入步骤2中预训练好的编码器并提取数据表征,利用数据表征来训练由多层线性层构成的时序预测模块,将步骤2中所训练的编码器的编码结果输入该预测模块,获取预测结果,作为时间序列预测模型。
步骤4,利用步骤3中得到的时序预测模型,对真实数据集ETTm1进行预测。首先将数据输入步骤2中得到的预训练编码器模块,获取数据表征,然后将数据表征输入步骤3中得到的预测模块,获取预测结果,实现对未来电力消耗的预测,如图5所示,展示了应用本发明提出的方法后,部分实际的预测效果。可以看出,本发明能够很好的对电力消耗进行预测,通过实现高精度预测,可以优化能源供给,避免能源过剩与能源短缺问题。
具体实现中,本申请提供计算机存储介质以及对应的数据处理单元,其中,该计算机存储介质能够存储计算机程序,所述计算机程序通过数据处理单元执行时可运行本发明提供的一种融合个性化上下文和时域动态特征的时序预测方法的发明内容以及各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,ROM)或随机存储记忆体(random access memory,RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术方案可借助计算机程序以及其对应的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机程序即软件产品的形式体现出来,该计算机程序软件产品可以存储在存储介质中,包括若干指令用以使得一台包含数据处理单元的设备(可以是个人计算机,服务器,单片机,MUU或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本发明提供了一种融合个性化上下文和时域动态特征的时序预测方法的思路及方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (10)
1.一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,包含以下步骤:
步骤1,对数据集中的包含时间序列的文本数据进行划分,划分为训练数据集和测试数据集,并对划分后的数据集分别进行数据预处理;
步骤2,搭建多任务联合训练的神经网络模型,用于捕获个性化上下文和时域动态特征,利用训练数据集对多任务联合训练的神经网络模型中进行预训练;
步骤3,利用步骤2中预训练后的多任务联合训练的神经网络模型中的编码器提取数据表征,并基于数据表征对下游预测模块进行训练,将训练好的下游预测模块作为时序预测模型;
步骤4,利用步骤3中得到的时序预测模型,对测试数据集进行预测并评估时序预测模型;
步骤5,将步骤4中最终获得的时序预测模型应用于目标数据集中文本数据的时序预测过程中。
2.根据权利要求1所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤1中所述的数据预处理,包括归一化和无重叠窗口化,其中:
归一化,即对数据集中包含时间序列的文本数据中的每一条时间序列进行归一化操作,将所有数据放缩到同样的范围;
无重叠窗口化,即对归一化后的时间序列进行窗口化,每个窗口长度为T,窗口滑动步长为T,即将时间序列切分为不重叠的子窗口。
3.根据权利要求2所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤2中所述的搭建多任务联合训练的神经网络模型,具体包括:
步骤2-1,搭建个性化上下文提取模块,该模块包括三个部分:数据增强部分,编码器部分,以及对比学习部分;
步骤2-2,搭建时域动态特征提取模块,该模块包括三个部分:随机掩码部分,编码器部分,以及重构预测部分;
步骤2-3,基于步骤2-1和步骤2-2中的两个模块搭建整体网络模型。
4.根据权利要求3所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤2-1中所述的搭建个性化上下文提取模块,具体包括:
步骤2-1-1,所述数据增强部分,即设计两种不同的数据增强策略,分别是弱增强策略和强增强策略,为每一条数据生成一对不同但相关的样本,作为正样本对;
其中,弱增强策略是将随机扰动添加到原始数据中,并对数值进行放大;强增强策略是指将原始数据切分为随机数量的子序列,并随机打乱子序列的顺序后重新排列,最后在重新排列后的序列中添加随机扰动;
步骤2-1-2,所述编码器部分,即设计编码器结构,所述编码器包括输入投影层和空洞卷积神经网络层;其中,输入投影层是一个全连接层,用于将输入数据映射到高维空间,空洞卷积神经网络层由十个残差块组成,每个残差块包含两个带有膨胀参数的一维卷基层;将经过步骤2-1-1中的数据增强后的数据输入所述编码器,并提取数据表征;
步骤2-1-3,所述对比学习部分,即设计对比学习策略,构造正负样本对;具体包括:
将同一条数据的两个增强结果视为正样本对,同一个批次中其他数据的增强结果视为负样本对,基于InfoNCE损失训练个性化上下文提取模块,具体方法如下:
其中,是个性化上下文提取模块的损失函数,τ是温度参数,/>是指示函数,,/>和/>分别代表弱增强样本和强增强样本经过编码器后的第i个输出,rj表示第j个编码器的编码结果,B表示训练批次大小;sim(,)表示计算余弦相似度;exp()表示取指数。
5.根据权利要求4所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤2-2中所述的搭建时域动态特征提取模块,具体包括:
步骤2-2-1,所述随机掩码部分,即对原始数据进行随机掩码,对输入序列中的每一个变量随机选取比例为r的部分,用[MASK]标记来替换掉原有数值;
步骤2-2-2,编码器部分,即数据经过步骤2-2-1中的随机掩码后,输入步骤2-1-2中设计的编码器结构,提取数据表征;
步骤2-2-3,重构预测部分,即将步骤2-2-2中获取的数据表征输入一个线性层,用于重构被掩码的数据,方法如下:
其中,数据是数据xt的重构结果,W∈Rd×m是线性层权重矩阵,其中d是多维时间序列的维度,m是所述编码器的编码结果的维度;
将对掩码部分的重构均方误差作为时域动态特征提取模块的损失函数具体计算方法如下:
其中,M代表所有被掩码的数据点的坐标集合,表示重构结果,x(t,q)表示原始输入。
6.根据权利要求5所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤2所述的对多任务联合训练的神经网络模型进行预训练,即联合个性化上下文提取模块和时域动态特征提取模块的损失函数,进行多任务联合预训练,总损失函数计算方法如下:
其中,α和β是权重参数;
首先定义超参数和用于更新多任务联合训练的神经网络模型参数的模型优化器,然后设置学习率调度器以及最大迭代次数或早停策略;
对多任务联合训练的神经网络模型进行无监督预训练,基于总损失函数进行梯度更新,获取预训练好的编码器。
7.根据权利要求6所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤3中所述的下游预测模块,是由多层线性层构成的时序预测模块,将步骤2中所训练的编码器的编码结果输入该预测模块,获取预测结果。
8.根据权利要求7所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤4中所述的评估时序预测模型,具体包括:
首先将测试数据集中的数据输入步骤2中得到的经过预训练的编码器模块,获取数据表征,然后将数据表征输入步骤3中所述的的下游预测模块,获取最终的预测结果,根据最终的预测结果计算预测误差,并评估时间序列预测模型。
9.根据权利要求8所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤2-1-1中所述的随机数量,不大于5。
10.根据权利要求9所述的一种融合个性化上下文和时域动态特征的时序预测方法,其特征在于,步骤2-1-3中所述的指示函数,即当i≠j时,指示函数的值为1,否则为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310622811.4A CN116843012A (zh) | 2023-05-30 | 2023-05-30 | 一种融合个性化上下文和时域动态特征的时序预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310622811.4A CN116843012A (zh) | 2023-05-30 | 2023-05-30 | 一种融合个性化上下文和时域动态特征的时序预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116843012A true CN116843012A (zh) | 2023-10-03 |
Family
ID=88167916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310622811.4A Pending CN116843012A (zh) | 2023-05-30 | 2023-05-30 | 一种融合个性化上下文和时域动态特征的时序预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116843012A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117273243A (zh) * | 2023-11-21 | 2023-12-22 | 数据空间研究院 | 一种用于时序事件预测的数据处理方法及装置 |
-
2023
- 2023-05-30 CN CN202310622811.4A patent/CN116843012A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117273243A (zh) * | 2023-11-21 | 2023-12-22 | 数据空间研究院 | 一种用于时序事件预测的数据处理方法及装置 |
CN117273243B (zh) * | 2023-11-21 | 2024-02-09 | 数据空间研究院 | 一种用于时序事件预测的数据处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111080032A (zh) | 一种基于Transformer结构的负荷预测方法 | |
CN112434848B (zh) | 基于深度信念网络的非线性加权组合风电功率预测方法 | |
Dong et al. | An integrated deep neural network approach for large-scale water quality time series prediction | |
CN110210495A (zh) | 基于并行LSTM自编码器动态特征提取的XGBoost软测量建模方法 | |
CN112508244B (zh) | 一种用户级综合能源系统多元负荷预测方法 | |
CN112633604A (zh) | 一种基于i-lstm的短期用电量预测方法 | |
CN112381673B (zh) | 一种基于数字孪生的园区用电信息分析方法及装置 | |
CN112396234A (zh) | 一种基于时域卷积神经网络的用户侧负荷概率预测方法 | |
CN110956309A (zh) | 基于crf和lstm的流程活动预测方法 | |
CN116843012A (zh) | 一种融合个性化上下文和时域动态特征的时序预测方法 | |
CN113344288A (zh) | 梯级水电站群水位预测方法、装置及计算机可读存储介质 | |
CN116680105A (zh) | 一种基于邻域信息融合注意力机制的时序异常检测方法 | |
CN113762591B (zh) | 一种基于gru和多核svm对抗学习的短期电量预测方法及系统 | |
CN115146700A (zh) | 一种基于Transformer序列到序列模型的径流预测方法 | |
CN107704944B (zh) | 一种基于信息论学习的股市波动区间预测模型的构建方法 | |
Feng et al. | A dual-staged attention based conversion-gated long short term memory for multivariable time series prediction | |
CN112232570A (zh) | 一种正向有功总电量预测方法、装置及可读存储介质 | |
Zhu et al. | Prediction of air quality index based on wavelet transform combination model | |
CN114638421A (zh) | 一种发电机组备件需求的预测方法 | |
CN113962431A (zh) | 一种两阶段特征处理的母线负荷预测方法 | |
CN107220483B (zh) | 一种土体温度模式预测方法 | |
Wang et al. | Prediction of heavy metal content in multivariate chaotic time series based on LSTM | |
Xu et al. | Water Level Prediction Based on SSA-LSTM Model | |
Chen et al. | The research on the user behavior of adjustment power flow based on deep learning algorithm | |
CN117291228A (zh) | 基于CNN-BiGRU配变电压预测方法、设备及介质 |
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 |