CN116993185A - 时间序列预测方法、装置、设备及存储介质 - Google Patents
时间序列预测方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116993185A CN116993185A CN202311272194.6A CN202311272194A CN116993185A CN 116993185 A CN116993185 A CN 116993185A CN 202311272194 A CN202311272194 A CN 202311272194A CN 116993185 A CN116993185 A CN 116993185A
- Authority
- CN
- China
- Prior art keywords
- feature
- subsequences
- sequence
- prediction
- cross
- 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 117
- 238000003860 storage Methods 0.000 title claims abstract description 25
- 239000013598 vector Substances 0.000 claims abstract description 265
- 238000012545 processing Methods 0.000 claims abstract description 106
- 238000007499 fusion processing Methods 0.000 claims abstract description 41
- 238000005070 sampling Methods 0.000 claims abstract description 25
- 238000012549 training Methods 0.000 claims description 145
- 230000009466 transformation Effects 0.000 claims description 42
- 238000013507 mapping Methods 0.000 claims description 21
- 230000004927 fusion Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 abstract description 31
- 238000013473 artificial intelligence Methods 0.000 abstract description 17
- 230000006870 function Effects 0.000 description 26
- 239000011159 matrix material Substances 0.000 description 26
- 238000000605 extraction Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 18
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 238000012417 linear regression Methods 0.000 description 8
- 230000004913 activation Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 108010001267 Protein Subunits Proteins 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 230000001131 transforming effect Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012731 temporal analysis Methods 0.000 description 2
- 238000000700 time series analysis Methods 0.000 description 2
- 241000070023 Phoenicopterus roseus Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008033 biological extinction Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000009022 nonlinear effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
- G06Q10/06375—Prediction of business process outcome or impact based on a proposed change
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/27—Regression, e.g. linear or logistic regression
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Educational Administration (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Primary Health Care (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种时间序列预测方法、装置、设备及存储介质,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景;本申请从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征;对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列;基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。在本申请中,将相邻子序列间的相关性引入子序列中,以增加子序列的特征表示的准确性,以得到准确的时间序列预测结果。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种时间序列预测方法、装置、设备及存储介质。
背景技术
时间序列预测是一种利用历史数据来预测未来数据变化趋势。它在各个领域如交通流量预测、天气预测、能源需求预测等都有广泛的应用。例如,以交通流量预测为例,可以使用时间序列数据来预测道路上的交通流量,以便调整交通信号灯和路线规划,从而优化交通流动性。
现有技术中,常使用机理模型方法、统计学或机器学习方法等方法进行时间序列预测。然而,由于时间序列数据常具有复杂的非线性关系,导致难以准确捕捉深层次的数据关系,以使得预测结果不准确。
发明内容
本申请实施例提供一种时间序列预测方法、装置、设备及存储介质,可以得到准确的时间序列预测结果。
本申请实施例提供一种时间序列预测方法,包括:从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述子序列的相关性,所述特征向量由所述子序列的序列特征变换得到;对所述交叉特征以及目标子序列的特征向量进行融合处理,得到所述目标子序列的目标特征,所述目标子序列为所述相邻时间段对应的两个所述子序列中的任一所述子序列;基于所述多个子序列的所述目标特征,对所述历史时间序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
本申请实施例还提供一种时间序列预测装置,包括:获取单元,用于从待预测对象的历史时间序列采样,以得到多个子序列;交叉单元,用于对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述子序列的相关性,所述特征向量由所述子序列的序列特征变换得到;融合单元,用于对所述交叉特征以及目标子序列的所述特征向量进行融合处理,得到所述目标子序列的目标特征,所述目标子序列为所述相邻时间段对应的两个所述子序列中的任一所述子序列;预测单元,用于基于所述多个子序列的所述目标特征,对所述历史时间序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
在一些实施方式中,所述时间序列预测装置还包括采样单元,所述采样单元包括第一获取子单元和采样子单元,包括:所述第一获取子单元,用于获取预设的时间窗口;所述采样子单元,用于通过所述预设的时间窗口对所述历史时间序列进行滑动采样,得到多个子序列。
在一些实施方式中,所述时间序列预测装置还包括注意力单元,所述注意力单元包括变换子单元和处理子单元,包括:所述第一变换单元,用于对所述子序列进行线性变换,得到第一注意力向量;所述处理子单元,用于通过所述第一注意力向量,对所述子序列进行注意力处理,得到所述子序列对应的特征向量。
在一些实施方式中,所述第一注意力向量包括第一查询向量、第一键向量以及第一值向量,处理单元包括第一处理子单元、第二处理子单元以及第三处理子单元,包括:所述第一处理子单元,用于由所述第一查询向量以及所述第一键向量,计算得到初始注意力权重;所述第二处理子单元,用于通过所述初始注意力权重,对所述第一值向量进行加权处理,得到目标注意力权重;所述第三处理子单元,用于通过所述目标注意力权重,对所述子序列进行加权处理,得到所述子序列对应的特征向量。
在一些实施方式中,所述相邻时间段对应的两个所述子序列包括第一子序列以及第二子序列,所述特征向量包括第二注意力向量,交叉单元包括第二变换子单元以及计算子单元,包括:所述第二变换单元,用于对所述子序列对应的特征向量进行线性变换,得到第二注意力向量,所述第二注意力向量包括第二查询向量以及第二键向量;所述计算单元,用于由所述第一子序列对应的第二查询向量以及所述第二子序列对应的第二键向量,交叉计算得到交叉特征。
在一些实施方式中,所述第二注意力向量还包括第二值向量,融合单元包括第二获取子单元以及融合子单元,包括:所述第二获取子单元,用于获取所述第一子序列对应的所述第二值向量;所述融合子单元,用于由所述交叉特征以及所述第一子序列对应的所述第二值向量,融合计算得到所述第一子序列的目标特征。
在一些实施方式中,所述预测单元包括合并子单元以及第一预测子单元,包括:合并子单元,用于对所述多个子序列的目标特征进行合并处理,得到合并后的特征序列;第一预测子单元,用于对所述合并后的特征序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
在一些实施方式中,合并子单元包括第一合并子单元、第二合并子单元以及第三合并子单元,包括:所述第一合并子单元,用于对所述目标特征进行特征映射,得到映射特征;所述第二合并子单元,用于对所述映射特征进行至少一次残差处理,得到处理后的特征;所述第三合并子单元,用于对所述多个子序列对应的所述处理后的特征进行合并处理,得到合并后的特征序列。
在一些实施方式中,所述预测单元还包括第二预测子单元,包括:所述第二预测子单元,用于将任一所述子序列对应的所述处理后的特征作为所述任一所述子序列的序列特征,返回执行步骤对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,以及后续步骤,直至达到预设的终止条件。
在一些实施方式中,所述第一预测单元包括第三获取子单元以及加权子单元,包括:第三获取子单元,用于获取回归预测系数;加权子单元,用于通过所述回归预测系数,对所述合并后的特征序列进行加权处理,得到所述待预测对象在预测时间段内的预测时间序列。
在一些实施方式中,所述时间序列预测装置还包括训练单元,训练单元包括第一训练子单元、第二训练子单元、第三训练子单元、第四训练子单元以及第五训练子单元,包括:所述第一训练子单元,用于获取初始时间序列预测模型以及训练数据集,所述初始时间序列预测模型包括特征交叉网络、特征融合处理网络以及回归预测网络,所述训练数据集包括多个训练用时间序列以及所述训练用时间序列的序列标签,所述训练用时间序列包括多个训练用子序列;所述第二训练子单元,用于通过所述特征交叉网络,对相邻时间段对应的两个所述训练用子序列的特征向量进行特征交叉处理,得到训练用交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述训练用子序列的相关性;所述第三训练子单元,用于通过所述特征融合处理网络,对所述训练用交叉特征以及训练用目标子序列的特征向量进行融合处理,得到所述训练用目标子序列的训练用目标特征,所述训练用目标子序列为所述相邻时间段对应的两个所述训练用子序列中的任一所述训练用子序列;所述第四训练子单元,用于通过所述回归预测网络,基于所述多个训练用子序列的所述训练用目标特征,对所述训练用时间序列进行回归预测,得到在预测时间段内的训练用预测时间序列;所述第五训练子单元,用于根据所述训练用预测时间序列与所述序列标签之间的损失值,调整所述初始时间序列预测模型的模型参数,得到训练后的时间序列预测模型,所述训练后的时间序列预测模型用于得到所述待预测对象在预测时间段内的预测时间序列。
本申请实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行本申请实施例所提供的任一种时间序列预测方法中的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种时间序列预测方法中的步骤。
本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现本申请实施例所提供的任一种时间序列预测方法中的步骤。
本申请实施例可以从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述子序列的相关性,所述特征向量由所述子序列的序列特征变换得到;对所述交叉特征以及目标子序列的特征向量进行融合处理,得到所述目标子序列的目标特征,所述目标子序列为所述相邻时间段对应的两个所述子序列中的任一所述子序列;基于所述多个子序列的所述目标特征,对所述历史时间序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
在本申请中,通过对历史时间序列中相邻时间段对应的两个子序列进行特征交叉处理,建立相邻子序列之间的关联性,以利用交叉特征反应相邻子序列的相关性。再通过交叉特征与子序列的融合处理,将相邻子序列间的相关性引入子序列中,帮助捕捉序列间的依赖关系,以增加子序列的特征表示的准确性,以由子序列的特征表示得到准确的时间序列预测结果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的时间序列预测方法的场景示意图;
图1b是本申请实施例提供的时间序列预测方法的流程示意图;
图2a是本申请实施例提供的时间序列预测模型的示意图;
图2b是本申请另一个实施例提供的时间序列预测方法的流程示意图;
图2c是本申请另一个实施例提供的时间序列预测方法的又一流程示意图;
图2d是本申请实施例提供的预测结果对比表的示意图;
图3是本申请实施例提供的时间序列预测装置的结构示意图;
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种时间序列预测方法、装置、设备及存储介质。
其中,该时间序列预测装置具体可以集成在电子设备中,该电子设备可以为终端、服务器等设备。其中,终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在一些实施例中,该时间序列预测装置还可以集成在多个电子设备中,比如,时间序列预测装置可以集成在多个服务器中,由多个服务器来实现本申请的时间序列预测方法。
在一些实施例中,服务器也可以以终端的形式来实现。
例如,参考图1a,该时间序列预测可以集成在服务器,该服务器可以从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,交叉特征表征相邻时间段对应的两个子序列的相关性;对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列;基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
以下分别进行详细说明。需说明的是,以下实施例的先后顺序不作为对实施例优选顺序的限定。可以理解的是,在本申请的具体实施方式中,涉及到用户访问量、下载量、活跃用户数等与用户相关的数据,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互系统、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。预训练模型是深度学习的最新发展成果,融合了以上技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、数字孪生、虚拟人、机器人、人工智能生成内容(AIGC)、对话式交互、智能医疗、智能客服、游戏AI等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
预训练模型(Pre-training model),也称基石模型、大模型,指具有大参量的深度神经网络(Deep neural network,DNN),在海量未标记的数据上对其进行训练,利用大参量DNN的函数近似能力使PTM在数据上提取共性特征,经微调(fine tune)、参数高效微调(PEFT)、prompt-tuning等技术,适用于下游任务。因此,预训练模型可以在小样本(Few-shot)或零样本(Zero-shot)场景下达到理想效果。PTM按照处理的数据模态可以分为语言模型(ELMO,BERT,GPT)、视觉模型(swin-transformer,ViT,V-MOE)、语音模型(VALL-E)、多模态模型(ViBERT, CLIP,Flamingo,Gato)等,其中多模态模型指建立两种或以上数据模态特征表示的模型。预训练模型是输出人工智能生成内容(AIGC)重要工具,也可以作为连接多个具体任务模型的通用接口。
在本实施例中,提供了一种涉及人工智能的时间序列预测方法,如图1b所示,该时间序列预测方法的具体流程可以如下:
110、从待预测对象的历史时间序列采样,以得到多个子序列。
其中,待预测对象是指要进行时间序列预测的对象。待预测对象可以是任何具有时间序列数据的事物或现象。在实际应用中,本申请实施例提供的时间序列预测方法可以应用在不同应用场景中,在不同应用场景中,待预测对象可以根据具体需求和应用场景的不同而各异。例如,待预测对象可以是具体的物体、组织或个体等实体,如某个产品的销售量、某个城市的人口增长、某个电池的容量变化等,待预测对象也可以是虚拟或抽象的概念或指标,如某个网站的用户访问量、某个应用程序的下载量、某个社交媒体平台的活跃用户数、天气变化等。
其中,历史时间序列是指待预测对象在历史时间段内的时间序列,该历史时间段可以根据应用场景或实际需要设置,如,历史时间段可以为过去一天、一周、一月、一季度或一年等,也可以为其他自定义的时间段,如历史时间段可以为特定事件发生的时间段。时间序列可以指待预测对象在一段时间内的连续观测值,该时间序列可以包括但不限于数值型、类别型或文本型等类型观测值中的一种或多种。例如,以待预测对象为天气变化为例,观测值可以包括气温、降雨量、风速、湿度等数值型气象数据,还可以包括晴天、多云、阴天、雨天、雪天等类别型天气类型,还可以包括天气预报文字描述、气象专家的解读等文本型的天气描述。
其中,子序列是指历史时间序列中的部分数据构成的时间序列,多个子序列可以由历史时间序列分割得到。例如,可以根据预设的时间尺度如小时、天、周、月、季度或年等,将待预测对象的历史时间序列分割为多个子序列。
在一些实施方式中,可以通过时间窗口对历史时间序列进行滑动采样,捕捉历史时间序列中连续的子序列,以保留子序列之间的连续性和时序关系。具体地,从待预测对象的历史时间序列采样,以得到多个子序列,包括:
获取预设的时间窗口;
通过预设的时间窗口对历史时间序列进行滑动采样,得到多个子序列。
其中,预设的时间窗口是指对历史时间序列进行滑动采样的时间窗口,可以根据应用场景以及实际需要设置预设的事件窗口。
例如,可以使用预设的固定时间窗口T对历史时间序列X进行滑动采样,即从X的起始位置开始,以固定的间隔T,从X中以此划分出每个patch(块)即子序列,以将X划分为连续的、不重叠的多个patch,如{patch1、patch2、…、patcht、patcht+1、…、patchn}。
120、对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征。
交叉特征表征相邻时间段对应的两个子序列的相关性,特征向量由子序列的序列特征变换得到。其中,相邻时间段是指在时间轴上相邻的两个时间段,该两个时间段可以为历史时间段内相邻的两个子时间段。可以理解的是,可以将历史时间序列划分为多个子时间段分别对应的子序列,如划分得到的n个子序列可以按照时间先后顺序表示为patch1、patch2、…、patcht、patcht+1、…、patchn,以此任意子序列patcht和子序列patcht+1即为相邻时间段对应的两个子序列。
其中,序列特征是指从子序列中提取得到的特征。对于不同子序列中不同类型观测值,可以采用不同的方法转换为相应的特征,以得到序列特征。例如,当子序列包括数值型观测值时,可以将其直接作为子序列的特征;当子序列包括类别型观测值,可以对其进行编码如独热编码,得到子序列的特征;当子序列包括文本型观测值时,可以通过自然语音处理从中获取子序列的特征。可以将子序列的所有特征根据其对应的观测值在子序列中的顺序拼接得到子序列的初始特征,如n个子序列的初始特征可以分别表示为,可以将初始特征中/>作为该序列patcht的序列特征。可以对n个子序列的序列特征分别进行变换分别得到n个子序列的特征向量T1、T2、…、Tt、Tt+1、…、Tn。
在一些实施方式中,为了简化特征交叉处理过程,提升特征交叉处理效率,可以仅获取预测对象在历史时间段内的数值型观测值作为历史时间序列,以此可以将历史时间序列直接作为其历史时间序列的初始特征或序列特征。
其中,特征交叉处理是指对特征向量进行交叉融合,得到新的特征的过程。可以采用具有注意力机制的RNN(Recurrent Neural Network,循环神经网络)网络、DNN(DeepNeural Network,深度神经网络)网络,FNN(Factorization-machine supported NeuralNetworks,前馈神经网络)网络,或其他方法对特征进行特征交叉处理,等等。
例如,对于历史时间序列中的任意两个相邻的子序列patcht和子序列patcht+1,可以对子序列patcht的特征向量Tt和子序列patcht+1的特征向量Tt+1进行特征交叉处理得到新的交叉特征T’ t。由于在交叉处理过程中,特征向量Tt和特征向量Tt+1通过相互作用,可以捕捉到特征之间的非线性关系和相互依赖性,如若特征向量Tt和特征向量Tt+1为正相关,则交叉特征T’ t可以随这两个特征向量的增加而增加,若特征向量Tt和特征向量Tt+1为负相关,则交叉特征T3可以随这两个特征向量中的任一个的增加而减少,以此交叉特征T’ t可以反应子序列patcht和子序列patcht+1之间的相关性。由此,可以得到历史时间序列中两两相邻的子序列的交叉特征,如历史时间序列包括{patch1、patch2、patch3},可以分别计算得到patch1和patch2的交叉特征1、以及patch2和patch3的交叉特征2。可以理解的是,本申请实施例通过对历史时间序列中相邻时间段对应的两个子序列进行特征交叉处理,建立相邻子序列之间的关联性,以利用交叉特征反应相邻子序列的相关性。
在一些实施方式中,由于一个子序列内的观测值往往具有较强的关联性,因此可以通过对子序列线性变换得到注意力向量,以根据注意力向量进行注意力处理,获取子序列中不同元素位置或不同元素之间的关系,以更好地理解子序列的序列信息,使得到的子序列的特征向量可以反应子序列内元素之间的相关性。具体地,对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征之前,还包括:
对子序列进行线性变换,得到第一注意力向量;
通过第一注意力向量,对子序列进行注意力处理,得到子序列的序列特征。
其中,线性变换是指将输入向量通过线性映射转换为输出向量的操作过程。
其中,注意力向量是指注意力机制中的向量如查询向量Q、键向量K以及值向量V,Q用来学习自己本身和其他元素之间的关系,K用来学习其他元素和本身之间的关系,V则是表示每个元素的特定信息。第一注意力向量是指子序列线性变换后得到的注意力向量。
在一些实施方式中,可以通过查询向量、键向量以及值向量在注意力机制中建立子序列中不同元素位置或不同元素之间的关联性,以学习到序列中不同元素之间的重要程度,使得到的子序列的序列特征可以反应子序列内元素之间的相关性。具体地,第一注意力向量包括第一查询向量、第一键向量以及第一值向量,通过第一注意力向量,对子序列进行注意力处理,得到子序列的序列特征,包括:
由第一查询向量以及第一键向量,计算得到初始注意力权重;
通过初始注意力权重,对第一值向量进行加权处理,得到目标注意力权重;
通过目标注意力权重,对子序列进行加权处理,得到子序列的序列特征。
例如,对于任一子序列patcht的初始特征,可以获取查询第一参数矩阵WQ、WK以及Wv,通过Q=X*WQ、K=X*WK以及V=X*Wv线性变换得到第一查询向量Q、第一键向量K以及第一值向量V,其中*表示乘。由第一查询向量以及第二键向量进行矩阵乘法,得到注意力矩阵,通过softmax函数对注意力矩阵进行归一化处理,得到归一化的初始注意力权重,将初始注意力权重与第一值向量进行加权求和,得到能反应子序列内元素之间的相关性的子序列的特征表示,该特征表示即为子序列的自注意力表示(即目标注意力权重)。上述步骤也可以通过公式实现:Weight_self_attention=softmax(QKT)V。其中,Weight_self_attention表示目标注意力权重,QKT表示由Q与K的转置计算得到的初始注意力权重,Q、K、V分别表示第一查询向量、第一键向量以及第一值向量。再通过子序列patcht的初始特征乘目标注意力权重Weight_self_attention得到patcht的序列特征x_self_attention。以此,可以根据每个子序列对应的第一注意力向量对每个子序列进行注意力处理,得到每个子序列的序列特征。
需说明的是,每个子序列的初始特征可以包括多个输入向量。该输入向量可以为子序列中的观测值,也即一个观测值为一个第一输入向量。该输入向量也可以为每个观测点的观测值,观测点可以指行观察、测量或采样时刻,也即一次观察、测量或采样得到的观测值为一个第一输入向量。以此,第一查询向量Q、第一键向量K以及第一值向量V的矩阵中每一行均表示一个输入向量。也即通过查询向量、键向量以及值向量在注意力机制中建立子序列中不同输入向量之间的关联性,以建模不同观测值或观测点之间的相关性。
在一些实施方式中,在通过注意力向量,对子序列进行注意力处理,得到子序列的序列特征之前,可以通过全连接网络对多个子序列的初始特征分别进行线性变换,以得到各子序列对应的降维后的特征,再通过注意力向量,对子序列对应的降维后的特征进行注意力处理,得到子序列的序列特征。
在一些实施方式中,可以通过相邻子序列的第二查询向量以及第二键向量的交叉处理,建模不同子序列之间的相关性。具体地,相邻时间段对应的两个子序列包括第一子序列以及第二子序列,特征向量包括第二注意力向量,对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征之前,还包括:
对子序列的序列特征进行线性变换,得到第二注意力向量,第二注意力向量包括第二查询向量以及第二键向量;
对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,包括:
由第一子序列对应的第二查询向量以及第二子序列对应的第二键向量,交叉计算得到交叉特征。
其中,第二注意力向量是指子序列的序列特征线性变换后得到的注意力向量。
例如,可以通过第二参数矩阵对历史时间序列中的所有子序列的序列特征分别进行线性变换,得到每个子序列对应的第二注意力向量,第二参数矩阵包括WQ和WK。如对于子序列patcht和子序列patcht+1,可以根据Q=X*WQ、K=X*WK得到子序列patcht对应的第二查询向量Qpatcht=Xt*WQ和第二键向量Kpatcht= Xt*WK,以及得到子序列patcht+1对应的第二查询向量Qpatcht+1=Xt+1*WQ和第二键向量Kpatcht+1=Xt+1*WK,Xt和Xt+1分别为子序列patcht和子序列patcht+1的序列特征。其中,子序列patcht可以为第一子序列、子序列patcht+1可以为第二子序列,或子序列patcht可以为第二子序列、子序列patcht+1可以为第一子序列。以子序列patcht可以为第一子序列、子序列patcht+1可以为第二子序列为例,可以由子序列patcht的第二查询向量和子序列patcht+1的第二键向量进行特征交叉处理,得到子序列patcht与子序列patcht+1的交叉特征。
在一些实施方式中,为了简化交叉特征的计算过程,获得更直观的表示不同子序列之间的相关性的交叉特征,可以对第一子序列对应的第二查询向量以及第二子序列对应的第二键向量进行乘法运算,得到交叉特征。
例如,可以通过子序列patcht的第二查询向量Q和子序列patcht+1的第二键向量K的点积运算如Qpatcht*Kpatcht+1,得到子序列patcht与子序列patcht+1的交叉特征St,其中*表示乘。可以理解的是,查询向量Q和键向量K都是用来表示输入序列中不同位置的信息。通过计算查询向量与键向量的点积,可以得到一个矩阵(即交叉特征),其中的每个元素都反映了查询向量与对应位置的键向量之间的相关性。点积的计算过程将查询向量的每个维度与键向量的相应维度相乘,并将结果相加。如果两个向量在某个维度上的取值相似,那么它们在这个维度上的点积就会较大,表示具有较高的相关性;反之,如果两个向量在某个维度上的取值差异较大,那么它们在这个维度上的点积就会较小,表示相关性较低。
需说明的是,历史时间序列可以包括多个输入向量。该输入向量可以为历史时间序列中的子序列,即一个输入向量对应一个子序列。第二查询向量Q、第二键向量K以及第二值向量V的矩阵中每一行均表示一个输入向量。也即通过相邻子序列的第二查询向量以及第二键向量的交叉处理,可以建模不同子序列之间的相关性。
130、对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征。
目标子序列为相邻时间段对应的两个子序列中的任一子序列。其中,融合处理是指将不同的特征或特征表示进行结合,以得到一个更综合和有信息量的特征表示的过程。
例如,可以使用特征拼接、特征加权等中的一种或多种将交叉特征以及相邻子序列中至少一个子序列进行融合处理,如对交叉特征St和子序列patcht+1的特征向量进行融合处理,得到子序列patcht+1的目标特征Qt+1。由于相邻的子序列patcht和子序列patcht+1之间通常存在一定的关联性和依赖关系,通过融合处理,可以将子序列patcht与子序列patcht+1的相关性引入子序列patcht+1对应的特征中,以将序列间的上下文关系引入子序列中,帮助捕捉序列间的依赖关系,增加子序列的特征表示的准确性,以由子序列的特征表示得到准确的时间序列预测结果。
在一些实施方式中,可以将查询向量和键向量交叉得到的交叉特征引入子序列的值向量中,以融合不同维度的注意力向量,提供更准确、完整的子序列的特征表示。具体地,第二注意力向量还包括第二值向量,对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,包括:
获取第一子序列对应的第二值向量;
由交叉特征以及第一子序列对应的第二值向量,融合计算得到第一子序列的目标特征。
例如,第二参数矩阵还包括Wv,可以通过第二参数矩阵对历史时间序列中的所有子序列的序列特征分别进行线性变换,计算得到第二值向量。如对于子序列patcht和子序列patcht+1,可以根据V=X*WV得到子序列patcht对应的第二值向量Vpatcht= Xt*WV,以及得到子序列patcht+1对应的第二值向量Vpatcht+1= Xt+1*WV,其中*表示乘。以子序列patcht可以为第一子序列、子序列patcht+1可以为第二子序列为例,可以由交叉特征St对子序列patcht进行特征拼接、特征加权等融合处理,得到子序列patcht的目标特征Ot,Ot中每个元素表示patcht和patcht+1中对应元素的相关性权重,其可以表示子序列patcht基于注意力的上下文表示。
在一些实施方式中,可以通过交叉特征对第一子序列对应的第二值向量进行特征加权,得到第一子序列的目标特征。以通过交叉特征对子序列的值向量进行特征加权,降低冗余或无关特征的权重,强调重要特征,提供更准确的子序列的特征表示。
例如,可以通过softmax函数对交叉特征St进行归一化处理,得到归一化处理结果At如At=Softmax(St),以消除不同观测值的量纲影响,提供更直观、准确的不同子序列之间的相关性表示。以子序列patcht可以为第一子序列、子序列patcht+1可以为第二子序列为例,可以通过归一化处理结果At对子序列patcht的第二值向量Vpatcht进行特征加权,得到子序列patcht的目标特征Ot=At*Vpatcht,其中*表示乘。
在一些实施方式中,第一子序列早于第二子序列,也即第一子序列对应的子时间段早于第二子序列对应的子时间段。以从历史时间序列的起始位置依次根据每个子序列对于的交叉特征对该子序列进行融合处理,以维持子序列间的上下文关系,使融合处理后目标特征构成的时间序列能更好地表征特征之间基于时间顺序的相互作用和演变规律。
140、基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
其中,回归预测是指使用已有的数据,对未知或未观测到的数据进行预测并给出相应的数值输出的过程。例如,可以使用线性回归模型、逻辑回归模型、多项式回归模型或逐步回归模型等回归预测模型对历史时间序列进行回归预测,得到预测时间序列。其中,预测时间序列是指待预测对象在预测时间段内的时间序列。预测时间段可以指历史时间序列的下一时间段,该下一时间段的可以与子时间段的长度相同、或可以为下一观测点对应的时间段、或可以为其他指定时长的时间段。也即通过回归预测,可以预测到待预测对象在预测时间段如下一观测点的观测值。
例如,回归预测过程可以表示为=regressor(Eall),其中Eall表示合并后的特征序列,regressor()表示用于回归预测模型,/>表示预测到的待预测对象在下一观测点的观测值。
在一些实施方式中,单个子序列可能受到噪声或异常值的影响,导致预测结果不准确,因此可以合并多个子序列的目标特征,以综合多个序列的特征进行回归预测,减少噪声的影响,使得预测结果更稳定和可靠。具体地,基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列,包括:
对多个子序列的目标特征进行合并处理,得到合并后的特征序列;
对合并后的特征序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
其中,合并处理是指将多个目标特征按照规则或关联性进行合并。例如,合并处理可以包括但不限于拼接、级联等方法。
例如,对于历史时间序列中的{patch1、patch2、…、patcht、patcht+1、…、patchn},可以获取其中每个子序列的目标特征O,并根据时间先后顺序将n个子序列的目标特征拼接得到合并后的特征序列{O1、O2、…、Ot、Ot+1、…、On}。再使用回归预测模型如线性回归模型对合并后的特征序列进行回归预测,得到预测时间序列。
在一些实施方式中,可以通过回归预测系数进行回归预测,以快速获取回归预测结果。具体地,对合并后的特征序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列,包括:
获取回归预测系数;
通过回归预测系数,对合并后的特征序列进行加权处理,得到待预测对象在预测时间段内的预测时间序列。
例如,可以通过y^=Xβ进行回归预测,其中β为回归预测系数,X为合并后的特征序列,y^为预测时间序列。其中,回归预测系数可以为训练后的回归预测模型中的系数。以通过回归预测实现合并后的特征序列到下一观测点的观测值之间的映射,以得到表征下一观测点的观测值的预测时间序列。
在一些实施方式中,回归预测系数可以为训练后的岭回归模型中的回归预测系数。岭回归是一种用于处理多重共线性问题的线性回归方法。岭回归通过最小化残差平方和L2正则化项构建目标函数,通过最小化目标函数求解岭回归模型的回归预测系数。再使用求解得到的回归预测系数对合并后的特征序列进行加权处理得到预测时间序列。岭回归模型通过增加L2正则化项,可以限制模型的复杂度,防止过拟合现象的出现,提高模型的稳定性和泛化能力。
在一些实施方式中,在回归预测之前,可以对目标特征进行线性变换后,再对多个子序列对应的变换后的特征进行合并处理,得到合并后的特征序列,以对历史时间序列进行回归预测。以通过权重调节和非线性激活,对目标特征进行加权或非线性变换,从而生成更丰富的特征表示,以根据该特征表示生成更准确的回归预测结果。
例如,可以将n个子序列的目标特征O1、O2、…、Ot、Ot+1、…、On一一输入全连接层,通过权重矩阵进行线性变换,再通过非线性激活函数如Sigmoid函数对线性变换结果进行激活处理,引入非线性性质,以通过全连接网络的权重调节和非线性激活,对目标特征进行加权或非线性变换,从而生成更丰富的特征表示即变换后的特征P。可以根据时间先后顺序将n个子序列对应的变换后的特征P拼接得到合并后的特征序列{P1、P2、…、Pt、Pt+1、…、Pn}。再使用回归预测模型如线性回归模型对合并后的特征序列进行回归预测,得到预测时间序列。
在一些实施方式中,在回归预测之前,可以使用特征提取网络对目标特征进行特征提取后,再根据提取得到的特征,对历史时间序列进行回归预测。其中,特征提取网络是指能用于特征提取的神经网络,例如,特征提取网络可以包括残差网络(Resnet)、注意力网络(GAT)、卷积网络(CNN)、前馈神经网络(BP)、循环网络(RNN)中的一个或多个。
在一些实施方式中,可以通过残差处理对目标特征进行特征提取,以将目标特征添加到提取的特征中,以使信息从浅层传递到深层,以对输入数据的多个细节和层次进行建模,提高提取特征的表达能力。具体地,对多个子序列的目标特征进行合并处理,得到合并后的特征序列,包括:
对目标特征进行特征映射,得到映射特征;
对映射特征进行至少一次残差处理,得到处理后的特征;
对多个子序列对应的处理后的特征进行合并处理,得到合并后的特征序列。
例如,可以使用残差网络对目标特征进行特征提取,残差网络可以包括一个或多个顺序连接的残差块,形成一个层叠的结构。这些残差块之间的工作方式如下:首先,输入数据经过一个初始的卷积层和激活函数进行初步处理(特征映射),生成第一个映射特征。接下来,生成的第一个映射特征会依次输入到多个残差块中。每个残差块都会对输入映射特征进行一系列卷积操作和激活函数处理,以提取更高级的特征信息。这些残差块可以堆叠在一起,使得网络可以学习到更复杂的特征表示。最后一个残差块的输出特征映射经过一系列卷积层、池化层和全连接层等操作,最终生成网络的输出结果(即处理后的特征)。
每个残差块均包括一个残差分支和至少两个卷积层组成的卷积分支。具体地,在残差块中,输入特征传递到卷积分支进行卷积操作,即经过一系列卷积层和激活函数处理的卷积分支输出特征,将输入特征与卷积分支输出特征相加(或连接)得到残差特征,最后,将残差特征传递到下一个残差块或输出层。以此,在每个残差块内部,通过残差连接将输入特征映射直接添加到残差块的输出上。这样的跳跃连接允许信息从浅层传递到深层,有助于缓解梯度消失问题,并促进特征的有效传递和学习,并对输入数据的多个细节和层次进行建模,提高提取特征的表达能力。
在一些实施方式中,在回归预测之前,可以对目标特征进行线性变换后,再使用特征提取网络对变换后的特征进行特征提取后,对多个子序列对应的提取得到的特征进行合并处理,得到合并后的特征序列,以对历史时间序列进行回归预测。以此,联合线性变化以及特征提取过程,捕捉和提取目标特征中的复杂关系和非线性关系,提高特征的表达能力。
例如,可以将n个子序列的目标特征O1、O2、…、Ot、Ot+1、…、On一一输入全连接网络,经全连接网络线性变换后得到变换后的特征P1、P2、…、Pt、Pt+1、…、Pn,再通过E=encoder(P)使用残差网络对变换后的特征进特征映射,得到映射特征,对映射特征进行至少一次残差处理,得到处理后的特征E,其中encoder()残差网络对变换后的特征的处理(编码)过程。根据时间先后顺序将n个子序列对应的处理后的特征E拼接得到合并后的特征序列{E1、E2、…、Et、Et+1、…、En},再使用回归预测模型如线性回归模型对合并后的特征序列进行回归预测,得到预测时间序列。
在一些实施方式中,可以对引入了序列间相关性的映射特征,可以将其作为子序列的特征向量,再执行一次交叉处理和融合处理,以进一步捕捉序列间的依赖关系,捕捉序列间更细粒度的上下文信息,以获得更准确的子序列的特征表示。具体地,方法,还包括:
将任一子序列对应的处理后的特征作为任一子序列的序列特征,返回执行步骤对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,以及后续步骤,直至达到预设的终止条件。
其中,预设的终止条件是指根据应用场景或实际需求设置的,终止循环执行步骤的条件。例如,预设的终止条件可以为达到一定的循环次数或其他条件。
在一些实施方式中,预设的终止条件为循环两次。也即在执行两次特征交叉处理和融合处理过程后,即结束循环,执行下一步骤基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列,以避免过拟合,也减少计算开销。
例如,可以将n个子序列对应的处理后的特征E1、E2、…、Et、Et+1、…、En分别作为这n个子序列的序列特征X’ 1、X’ 2、…、X’ t、X’ t+1、…、X’ n。通过对相邻时间段对应的两个序列特征变换得到的特征向量如Qpatcht和Kpatcht+1进行特征交叉处理,得到每个子序列对应的交叉特征。再将每个子序列对应的交叉特征与其对应的特征向量Vpatcht进行融合处理,可以得到n个子序列的目标特征O’ 1、O’ 2、…、O’ t、O’ t+1、…、O’ n,再对目标特征进行线性变换、特征映射以及残差处理,分别得到n个子序列对应的处理后的特征E’ 1、E’ 2、…、E’ t、E’ t+1、…、E’ n,线性变换、特征映射以及残差处理的实现方式和原理相同,可以参见前述相应部分,在此不再赘述。根据时间先后顺序将n个子序列对应的处理后的特征E’拼接得到合并后的特征序列{E’ 1、E’ 2、…、E’ t、E’ t+1、…、E’ n},再使用回归预测模型如线性回归模型对合并后的特征序列进行回归预测,得到预测时间序列。
在一些实施方式中,由于目标特征中每个元素表示相邻两个子序列中对应元素的相关性权重,因此可以通过子序列的目标特征和处理后的特征进行融合处理,可以更好地捕捉序列中上下文信息,再使用回归预测模型如线性回归模型对融合后特征合并得到的合并后的特征序列进行回归预测,以帮助回归预测模型更好地理解输入的序列,提供更准确的预测结果。具体地,对多个子序列对应的处理后的特征进行合并处理,得到合并后的特征序列,包括:
对子序列的目标特征以及子序列对应的处理后的特征进行融合处理,得到子序列对应的融合后的特征;
将多个子序列对应的融合后的特征进行合并处理,得到合并后的特征序列。
其中,目标特征和处理后的特征可以为前述目标特征O和处理后的特征E,或可以为前述目标特征O’和处理后的特征E’。例如,在得到到n个子序列对应的处理后的特征E’1、E’2、…、E’t、E’t+1、…、E’n后,可以通过每个子序列如子序列patcht的目标特征与相应的处理后的特征计算得到融合后的特征W_Et= O’t* E’t,再将根据时间先后顺序将n个子序列对应的融合后的特征W_Et拼接得到合并后的特征序列{W_E1、W_E2、…、W_Et、W_Et+1、…、W_En},再使用回归预测模型如线性回归模型对合并后的特征序列进行回归预测,得到预测时间序列。
在一些实施方式中,可以使用训练数据集对初始时间序列预测模型进行训练,并通过比较训练过程中的预测值和序列标签的损失值,调整模型参数,以优化模型的性能,得到更准确的预测时间序列。具体地,对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征之前,还包括:
获取初始时间序列预测模型以及训练数据集,初始时间序列预测模型包括特征交叉网络、特征融合处理网络以及回归预测网络,训练数据集包括多个训练用时间序列以及训练用时间序列的序列标签,训练用时间序列包括多个训练用子序列;
通过特征交叉网络,对相邻时间段对应的两个训练用子序列的特征向量进行特征交叉处理,得到训练用交叉特征,交叉特征表征相邻时间段对应的两个训练用子序列的相关性;
通过特征融合处理网络,对训练用交叉特征以及训练用目标子序列的特征向量进行融合处理,得到训练用目标子序列的训练用目标特征,训练用目标子序列为相邻时间段对应的两个训练用子序列中的任一训练用子序列;
通过回归预测网络,基于多个训练用子序列的训练用目标特征,对训练用时间序列进行回归预测,得到在预测时间段内的训练用预测时间序列;
根据训练用预测时间序列与序列标签之间的损失值,调整初始时间序列预测模型的模型参数,得到训练后的时间序列预测模型,训练后的时间序列预测模型用于得到待预测对象在预测时间段内的预测时间序列。
其中,训练用时间序列、训练用子序列、训练用交叉特征、训练用目标子序列、训练用目标特征以及训练用预测时间序列是指初始时间序列预测模型训练过程中的时间序列、子序列、交叉特征、目标子序列、目标特征。训练用时间序列可以为待预测对象的历史时间序列或与待预测对象对应的应用场景相关的时间序列,例如,以待预测对象为某城市的天气变化为例,训练用时间序列可以为该城市的历史气象数据组成的时间序列,也可以为天气变化预测场景内的不同区域的气象数据组成的时间序列。
其中,序列标签是指表征训练用时间序列类别或其他类别标识的值,也即为训练过程中的真实值,其用于对初始时间序列预测模型进行监督学习任务。
例如,可以使用训练数据集来训练初始时间序列预测模型,确定训练数据集中每个训练用时间序列的训练用预测时间序列,并通过预设的时间窗口对各训练用预测时间序列进行滑动采样,得到各训练用预测时间序列的多个训练用子序列,模型训练过程中,特征交叉网络、特征融合处理网络以及回归预测网络与前述特征交叉处理、特征融合处理以及回归预测处理的实现方式和原理相同,可以参见前述相应部分,在此不再赘述。将通过损失函数每个训练用时间序列的训练用预测时间序列与其对应的序列标签训进行比较,计算损失值,再通过梯度反向传播,调整初始时间序列预测模型的模型参数,模型参数可以包括但不限于特征交叉网络、特征融合处理网络以及回归预测网络的网络参数等如第一参数矩阵、第二参数矩阵、回归预测系数,模型参数还可以包括但不限于全连接网络以及特征提取网络的网络参数等,直至损失函数收敛,结束训练,将得到的模型作为训练后的时间序列预测模型。
在一些实施方式中,可以使用均方误差函数作为损失函数来计算训练用预测时间序列与序列标签之间的损失值。例如,均方误差函数可以表示为,其中,n表示n各训练用时间序列,/>表示训练用时间序列i的训练用预测时间序列(即预测值),/>表示训练用时间序列i的序列标签(即真实值)。以此,通过计算i+1时刻预测结果/>与i+1时刻真实值/>之间的均方差,作为时域预测结果的监督损失函数,并进行梯度反向传播,调整初始时间序列预测模型的模型参数。
本申请实施例提供的时间序列预测方案可以应用在各种预测场景中。比如交通流量预测、天气预测、能源需求预测等,以交通流量预测为例,从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,交叉特征表征相邻时间段对应的两个子序列的相关性,特征向量由子序列的序列特征变换得到;对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列;基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
由上可知,本申请实施例通过对历史时间序列中相邻时间段对应的两个子序列进行特征交叉处理,建立相邻子序列之间的关联性,以利用交叉特征反应相邻子序列的相关性。再通过交叉特征与子序列的融合处理,将相邻子序列间的相关性引入子序列中,帮助捕捉序列间的依赖关系,以增加子序列的特征表示的准确性,以由子序列的特征表示得到准确的时间序列预测结果。
根据上述实施例所描述的方法,以下将作进一步详细说明。
在本实施例中,将以天气预测为例,对本申请实施例的方法进行详细说明。
本申请实施例的时间序列预测方法可以由如图2a所示的时间序列预测模型实现,该时间序列预测模型包括注意力模块、特征交叉模块、特征提取模块以及回归预测模块,注意力模块包括注意力网络,特征交叉模块包括特征交叉网络以及特征融合网络,特征提取模块包括全连接网络和特征提取网络,回归预测模块包括回归预测网络。时间序列预测模型可以实现如图2b所示的时间序列预测方法的流程。
在实际应用中,可以将本申请的时间序列预测模型部署在云服务器中,以通过云计算资源实现本申请实施例的时间序列预测方法。
如图2c所示,一种时间序列预测方法具体流程如下:
210、通过预设的时间窗口对历史时间序列进行滑动采样,得到多个子序列。
例如,可以采集某城市过去一年的气温、降雨量、风速、湿度等数值型气象数据,该气象数据包括多个信号点的观测值。并将采集到的气象数据作为原始输入信号X按固定时间窗口T进行不交叉的patch(块)划分,得到patch1~ patchn:,一个patch即为一个子序列。也即如图2b所示的时间序列预测方法的流程,可以将气象数据组成的历史时间序列划分为子序列1~子序列n。
220、通过第一注意力向量,对子序列进行注意力处理,得到子序列的序列特征。
例如,如图2b所示的时间序列预测方法的流程,对于每个patch(子序列)内部,通过注意力模块中的注意力网络计算不同patch内的自注意力,用于建模不同信号点之间的相关性。自注意力具体计算过程如下:将任一patch信号x输入一个全连接层得到其降维后的线性表征,然后将线性表征乘三个第一参数矩阵WQ、WK以及Wv,得到第一注意力向量Q、K、V,然后通过下列公式Weight_self_attention=softmax(QKT)V计算得到目标注意力权重。将patch信号x乘目标注意力权重得到自注意力加权后的输出子序列对应的特征向量,特征向量用于表示不同信号点之间关系。第一参数矩阵WQ、WK以及Wv由训练数据集对初始时间序列预测模型进行训练得到,训练前初始参数矩阵可以人工设置或随机设置。
230、对子序列的序列特征进行线性变换,得到第二注意力向量。
第二注意力向量包括第二查询向量、第二键向量以及第二值向量。例如,如图2b所示的时间序列预测方法的流程,对于patch(子序列)间,可以通过特征交叉模块中的特征交叉网络利用特征交叉处理计算相邻时间段的两个patch的相关性系数用于建模前后信号窗口间的相关性,并由该相关性计算得到子序列的目标特征。对于相邻的两组信号patcht和patcht+1,首先将patch_t和patch_t+1分别过线性层W_patch_q,W_patch_k,W_patch_v,通过Qpatcht=Xt*WQ、Kpatcht= Xt*WK、Vpatcht= Xt*WV、Qpatcht+1=Xt+1*WQ、Kpatcht+1=Xt+1*WK以及Vpatcht+1=Xt+1*WV得到矩阵Qpatcht、Kpatcht、Vpatcht、Qpatcht+1、Kpatcht+1以及Vpatcht+1。第二参数矩阵WQ、WK以及Wv由训练数据集对初始时间序列预测模型进行训练得到,训练前初始参数矩阵可以人工设置或随机设置。
240、由第一子序列对应的第二查询向量以及第二子序列对应的第二键向量,交叉计算得到交叉特征。
例如,可以通过特征交叉网络利用St=Qpatcht*Kpatcht+1计算 Qpatcht和Kpatcht+1之间的相似度矩阵St即交叉特征,*表示计算点积。可以通过At=Softmax(St)对相似度矩阵St进行归一化处理,得到相似度矩阵At,At中每个元素表示patcht中每个元素对patcht+1中每个元素的相关程度。
250、对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征。
例如,如图2b所示的时间序列预测方法的流程,可以通过特征交叉模块中的特征融合网络利用Ot=At*Vpatcht将归一化后的矩阵At与第二值向量Vpatcht相乘,得到矩阵Ot即目标特征,其中每个元素表示patcht和patcht+1中对应元素的相关性权重。
260、对目标特征进行线性变换,得到变换后的特征。
例如,如图2b所示的时间序列预测方法的流程,可以通过特征提取模块中的全连接网络采用全连接层方式对矩阵Ot进行线性变换,得到最终的输出矩阵Pt即变换后的特征,其中每个元素表示输入序列中每个元素的加权表示。Pt为完成自注意力自相关建模和patch间交叉注意力互相关建模以后的信号。
270、对变换后的特征进行特征提取,得到处理后的特征。
例如,如图2b所示的时间序列预测方法的流程,可以通过特征提取模块中特征提取网络将Pt输入残差网络构成的特征编码器,通过E=encoder(P)得到其编码特征Et即处理后的特征,不同窗口对应的变换后的特征P共享特征编码器权重。
280、将任一子序列对应的处理后的特征作为任一子序列的序列特征,返回执行步骤230~步骤280,以得到目标子序列的融合后的特征。
例如,对于相邻时刻的编码特征Et和Et+1,可以将其分别作为patcht和patcht+1的特征向量,重复执行步骤230~步骤280。具体地,计算相邻时刻的编码特征之间的处理后的交叉特征,并由编码特征Et对应的交叉特征以及值向量V’ patcht相乘计算得到目标特征O’ t。可以由目标特征O’ t通过线性变换、特征映射以及残差处理,得到处理后的特征E’ t,再通过W_Et= O’ t* E’t计算得到融合后的特征W_Et。
290、基于多个子序列的融合后的特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
例如,再将各patch对应的融合后的特征W_Et进行拼接,得到整体信号的特征表达即合并后的特征序列Embeddings_all=concat(W_E1、W_E2、…、W_Et、W_Et+1、…、W_En),其中concat表示拼接。
如图2b所示的时间序列预测方法的流程,可以通过回归预测模块中的回归预测网络使用岭回归作为回归器对合并后的特征序列进行回归预测,以得到预测时间序列。岭回归可以实现Embeddings_all到下一时刻信号之间的映射,得到预测信号i+1时刻预测结果:/>=regressor(Embeddings_i_all),其中,regressor表示回归器。
为了验证本申请实施例的时间序列预测方法的效果,在现有的交通时序信号预测数据集Traffic datasets以及天气预测数据集Weather datasets上,将本申请实施例的时间序列预测方法采用的时间序列预测模型(下称本方法)、现有的时间序列预测方法任务通用的时序分析骨干网络的预测模型TimesNet(下称方法一)以及用于时间序列预测的指数平滑 Transformer结构的预测模型ETSformer(下称方法二)进行了验证实验,其实验效果见如图2d所示的预测结果对比表。
表中给出了本方法、方法一和方法二的RMSE(均方根误差)指标,均方根误差指标可以通过如下公式计算得到:
;
其中,X表示数据集,h表示预测模型,m表示数据集中的样本数量,i表示样本的索引,y表示样本的真实值。
表中预测步长为预测时间段的长度。表中RMSE(均方根误差)指标数值越大,表明模型的预测效果越差。由此,可以看出,对于两个数据集,本方法相对于现有的方法一和方法二相比,有更好的预测效果。且在不同预测步长上,本方法相对于现有的方法一和方法二相比,也有更好的预测效果,也即本方法在不同尺度预测上均可以有较好的预测效果。
由上可知,本申请实施例通过对历史时间序列中子序列内信号点间关系及相邻序列间关系进行建模,提升对信号间相关性的特征提取。以融合多子序列的信号特征,进一步提高预测模型效果。
为了更好地实施以上方法,本申请实施例还提供一种时间序列预测装置,该时间序列预测装置具体可以集成在电子设备中,该电子设备可以为终端、服务器等设备。其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、个人电脑等设备;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。
比如,在本实施例中,将以时间序列预测装置具体集成在服务器为例,对本申请实施例的方法进行详细说明。
例如,如图3所示,该时间序列预测装置可以包括获取单元310、交叉单元320、融合单元330以及预测单元340,如下:
(一)获取单元310
用于从待预测对象的历史时间序列采样,以得到多个子序列。
在一些实施方式中,该时间序列预测装置还包括采样单元,采样单元包括第一获取子单元和采样子单元,包括:
第一获取子单元,用于获取预设的时间窗口;
采样子单元,用于通过预设的时间窗口对历史时间序列进行滑动采样,得到多个子序列。
(二)交叉单元320
用于对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,交叉特征表征相邻时间段对应的两个子序列的相关性,特征向量由子序列的序列特征变换得到。
在一些实施方式中,该时间序列预测装置还包括注意力单元,注意力单元包括变换子单元和处理子单元,包括:
第一变换单元,用于对子序列进行线性变换,得到第一注意力向量;
处理子单元,用于通过第一注意力向量,对子序列进行注意力处理,得到子序列对应的特征向量。
在一些实施方式中,第一注意力向量包括第一查询向量、第一键向量以及第一值向量,处理单元包括第一处理子单元、第二处理子单元以及第三处理子单元,包括:
第一处理子单元,用于由第一查询向量以及第一键向量,计算得到初始注意力权重;
第二处理子单元,用于通过初始注意力权重,对第一值向量进行加权处理,得到目标注意力权重;
第三处理子单元,用于通过目标注意力权重,对子序列进行加权处理,得到子序列对应的特征向量。
在一些实施方式中,相邻时间段对应的两个子序列包括第一子序列以及第二子序列,特征向量包括第二注意力向量,交叉单元包括第二变换子单元以及计算子单元,包括:
第二变换单元,用于对子序列对应的特征向量进行线性变换,得到第二注意力向量,第二注意力向量包括第二查询向量以及第二键向量;
计算单元,用于由第一子序列对应的第二查询向量以及第二子序列对应的第二键向量,交叉计算得到交叉特征。
(三)融合单元330
用于对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列。
在一些实施方式中,第二注意力向量还包括第二值向量,融合单元包括第二获取子单元以及融合子单元,包括:
第二获取子单元,用于获取第一子序列对应的第二值向量;
融合子单元,用于由交叉特征以及第一子序列对应的第二值向量,融合计算得到第一子序列的目标特征。
(四)预测单元340
用于基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
在一些实施方式中,预测单元包括合并子单元以及第一预测子单元,包括:
合并子单元,用于对多个子序列的目标特征进行合并处理,得到合并后的特征序列;
第一预测子单元,用于对合并后的特征序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
在一些实施方式中,合并子单元包括第一合并子单元、第二合并子单元以及第三合并子单元,包括:
第一合并子单元,用于对目标特征进行特征映射,得到映射特征;
第二合并子单元,用于对映射特征进行至少一次残差处理,得到处理后的特征;
第三合并子单元,用于对多个子序列对应的处理后的特征进行合并处理,得到合并后的特征序列。
在一些实施方式中,预测单元还包括第二预测子单元,包括:
第二预测子单元,用于将任一子序列对应的处理后的特征作为任一子序列的序列特征,返回执行步骤对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,以及后续步骤,直至达到预设的终止条件。
在一些实施方式中,第一预测单元包括第三获取子单元以及加权子单元,包括:
第三获取子单元,用于获取回归预测系数;
加权子单元,用于通过回归预测系数,对合并后的特征序列进行加权处理,得到待预测对象在预测时间段内的预测时间序列。
在一些实施方式中,该时间序列预测装置还包括训练单元,训练单元包括第一训练子单元、第二训练子单元、第三训练子单元、第四训练子单元以及第五训练子单元,包括:
第一训练子单元,用于获取初始时间序列预测模型以及训练数据集,初始时间序列预测模型包括特征交叉网络、特征融合处理网络以及回归预测网络,训练数据集包括多个训练用时间序列以及训练用时间序列的序列标签,训练用时间序列包括多个训练用子序列;
第二训练子单元,用于通过特征交叉网络,对相邻时间段对应的两个训练用子序列的特征向量进行特征交叉处理,得到训练用交叉特征,交叉特征表征相邻时间段对应的两个训练用子序列的相关性;
第三训练子单元,用于通过特征融合处理网络,对训练用交叉特征以及训练用目标子序列的特征向量进行融合处理,得到训练用目标子序列的训练用目标特征,训练用目标子序列为相邻时间段对应的两个训练用子序列中的任一训练用子序列;
第四训练子单元,用于通过回归预测网络,基于多个训练用子序列的训练用目标特征,对训练用时间序列进行回归预测,得到在预测时间段内的训练用预测时间序列;
第五训练子单元,用于根据训练用预测时间序列与序列标签之间的损失值,调整初始时间序列预测模型的模型参数,得到训练后的时间序列预测模型,训练后的时间序列预测模型用于得到待预测对象在预测时间段内的预测时间序列。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本实施例的时间序列预测装置包括获取单元、交叉单元、融合单元以及预测单元。其中,获取单元,用于从待预测对象的历史时间序列采样,以得到多个子序列;交叉单元,用于对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,交叉特征表征相邻时间段对应的两个子序列的相关性,特征向量由子序列的序列特征变换得到;融合单元,用于对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列;预测单元,用于基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
由此,本申请实施例可以通过对历史时间序列中相邻时间段对应的两个子序列进行特征交叉处理,建立相邻子序列之间的关联性,以利用交叉特征反应相邻子序列的相关性。再通过交叉特征与子序列的融合处理,将相邻子序列间的相关性引入子序列中,帮助捕捉序列间的依赖关系,以增加子序列的特征表示的准确性,以由子序列的特征表示得到准确的时间序列预测结果。
本申请实施例还提供一种电子设备,该电子设备可以为终端、服务器等设备。其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、个人电脑,等等;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,等等。
在一些实施例中,该时间序列预测装置还可以集成在多个电子设备中,比如,时间序列预测装置可以集成在多个服务器中,由多个服务器来实现本申请的时间序列预测方法。
在本实施例中,将以本实施例的电子设备是服务器为例进行详细描述,比如,如图4所示,其示出了本申请实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器410、一个或一个以上计算机可读存储介质的存储器420、电源430、输入模块440以及通信模块450等部件。本领域技术人员可以理解,图4中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器410是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行服务器的各种功能和处理数据。在一些实施例中,处理器410可包括一个或多个处理核心;在一些实施例中,处理器410可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器410中。
存储器420可用于存储软件程序以及模块,处理器410通过运行存储在存储器420的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器420还可以包括存储器控制器,以提供处理器410对存储器420的访问。
服务器还包括给各个部件供电的电源430,在一些实施例中,电源430可以通过电源管理系统与处理器410逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源430还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入模块440,该输入模块440可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
该服务器还可包括通信模块450,在一些实施例中通信模块450可以包括无线模块,服务器可以通过该通信模块450的无线模块进行短距离无线传输,从而为用户提供了无线的宽带互联网访问。比如,该通信模块450可以用于帮助用户收发电子邮件、浏览网页和访问流式媒体等。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器410会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器420中,并由处理器410来运行存储在存储器420中的应用程序,从而实现各种功能,如下:
从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,交叉特征表征相邻时间段对应的两个子序列的相关性,特征向量由子序列的序列特征变换得到;对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列;基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本申请实施例通过对历史时间序列中相邻时间段对应的两个子序列进行特征交叉处理,建立相邻子序列之间的关联性,以利用交叉特征反应相邻子序列的相关性。再通过交叉特征与子序列的融合处理,将相邻子序列间的相关性引入子序列中,帮助捕捉序列间的依赖关系,以增加子序列的特征表示的准确性,以由子序列的特征表示得到准确的时间序列预测结果。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种时间序列预测方法中的步骤。例如,该指令可以执行如下步骤:
从待预测对象的历史时间序列采样,以得到多个子序列;对相邻时间段对应的两个子序列的特征向量进行特征交叉处理,得到交叉特征,交叉特征表征相邻时间段对应的两个子序列的相关性,特征向量由子序列的序列特征变换得到;对交叉特征以及目标子序列的特征向量进行融合处理,得到目标子序列的目标特征,目标子序列为相邻时间段对应的两个子序列中的任一子序列;基于多个子序列的目标特征,对历史时间序列进行回归预测,得到待预测对象在预测时间段内的预测时间序列。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序/指令,该计算机程序/指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机程序/指令,处理器执行该计算机程序/指令,使得该电子设备执行上述实施例中提供的各种可选实现方式中提供的方法。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种时间序列预测方法中的步骤,因此,可以实现本申请实施例所提供的任一种时间序列预测方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种时间序列预测方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (14)
1.一种时间序列预测方法,其特征在于,包括:
从待预测对象的历史时间序列采样,以得到多个子序列;
对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述子序列的相关性,所述特征向量由所述子序列的序列特征变换得到;
对所述交叉特征以及目标子序列的所述特征向量进行融合处理,得到所述目标子序列的目标特征,所述目标子序列为所述相邻时间段对应的两个所述子序列中的任一所述子序列;
基于所述多个子序列的所述目标特征,对所述历史时间序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
2.如权利要求1所述的时间序列预测方法,其特征在于,所述对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征之前,还包括:
对所述子序列进行线性变换,得到第一注意力向量;
通过所述第一注意力向量,对所述子序列进行注意力处理,得到所述子序列的序列特征。
3.如权利要求2所述的时间序列预测方法,其特征在于,所述第一注意力向量包括第一查询向量、第一键向量以及第一值向量,所述通过所述第一注意力向量,对所述子序列进行注意力处理,得到所述子序列的序列特征,包括:
由所述第一查询向量以及所述第一键向量,计算得到初始注意力权重;
通过所述初始注意力权重,对所述第一值向量进行加权处理,得到目标注意力权重;
通过所述目标注意力权重,对所述子序列进行加权处理,得到所述子序列的序列特征。
4.如权利要求1所述的时间序列预测方法,其特征在于,所述相邻时间段对应的两个所述子序列包括第一子序列以及第二子序列,所述特征向量包括第二注意力向量,所述对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征之前,还包括:
对所述子序列的序列特征进行线性变换,得到第二注意力向量,所述第二注意力向量包括第二查询向量以及第二键向量;
所述对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,包括:
由所述第一子序列对应的第二查询向量以及所述第二子序列对应的第二键向量,交叉计算得到交叉特征。
5.如权利要求4所述的时间序列预测方法,其特征在于,所述第二注意力向量还包括第二值向量,所述对所述交叉特征以及目标子序列的所述特征向量进行融合处理,得到所述目标子序列的目标特征,包括:
获取所述第一子序列对应的所述第二值向量;
由所述交叉特征以及所述第一子序列对应的所述第二值向量,融合计算得到所述第一子序列的目标特征。
6.如权利要求1所述的时间序列预测方法,其特征在于,所述基于所述多个子序列的所述目标特征,对所述历史时间序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列,包括:
对所述多个子序列的目标特征进行合并处理,得到合并后的特征序列;
对所述合并后的特征序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
7.如权利要求6所述的时间序列预测方法,其特征在于,所述对所述多个子序列的目标特征进行合并处理,得到合并后的特征序列,包括:
对所述目标特征进行特征映射,得到映射特征;
对所述映射特征进行至少一次残差处理,得到处理后的特征;
对所述多个子序列对应的所述处理后的特征进行合并处理,得到合并后的特征序列。
8.如权利要求7所述的时间序列预测方法,其特征在于,所述方法,还包括:
将任一所述子序列对应的所述处理后的特征作为所述任一所述子序列的序列特征,返回执行步骤对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,以及后续步骤,直至达到预设的终止条件。
9.如权利要求6所述的时间序列预测方法,其特征在于,所述对所述合并后的特征序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列,包括:
获取回归预测系数;
通过所述回归预测系数,对所述合并后的特征序列进行加权处理,得到所述待预测对象在预测时间段内的预测时间序列。
10.如权利要求1所述的时间序列预测方法,其特征在于,所述从待预测对象的历史时间序列采样,以得到多个子序列,包括:
获取预设的时间窗口;
通过所述预设的时间窗口对所述历史时间序列进行滑动采样,得到多个子序列。
11.如权利要求1~10任一项所述的时间序列预测方法,其特征在于,所述对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征之前,还包括:
获取初始时间序列预测模型以及训练数据集,所述初始时间序列预测模型包括特征交叉网络、特征融合处理网络以及回归预测网络,所述训练数据集包括多个训练用时间序列以及所述训练用时间序列的序列标签,所述训练用时间序列包括多个训练用子序列;
通过所述特征交叉网络,对相邻时间段对应的两个所述训练用子序列的特征向量进行特征交叉处理,得到训练用交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述训练用子序列的相关性;
通过所述特征融合处理网络,对所述训练用交叉特征以及训练用目标子序列的特征向量进行融合处理,得到所述训练用目标子序列的训练用目标特征,所述训练用目标子序列为所述相邻时间段对应的两个所述训练用子序列中的任一所述训练用子序列;
通过所述回归预测网络,基于所述多个训练用子序列的所述训练用目标特征,对所述训练用时间序列进行回归预测,得到在预测时间段内的训练用预测时间序列;
根据所述训练用预测时间序列与所述序列标签之间的损失值,调整所述初始时间序列预测模型的模型参数,得到训练后的时间序列预测模型,所述训练后的时间序列预测模型用于得到所述待预测对象在预测时间段内的预测时间序列。
12.一种时间序列预测装置,其特征在于,包括:
获取单元,用于从待预测对象的历史时间序列采样,以得到多个子序列;
交叉单元,用于对相邻时间段对应的两个所述子序列的特征向量进行特征交叉处理,得到交叉特征,所述交叉特征表征所述相邻时间段对应的两个所述子序列的相关性,所述特征向量由所述子序列的序列特征变换得到;
融合单元,用于对所述交叉特征以及目标子序列的所述特征向量进行融合处理,得到所述目标子序列的目标特征,所述目标子序列为所述相邻时间段对应的两个所述子序列中的任一所述子序列;
预测单元,用于基于所述多个子序列的所述目标特征,对所述历史时间序列进行回归预测,得到所述待预测对象在预测时间段内的预测时间序列。
13.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行如权利要求1~11任一项所述的时间序列预测方法中的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1~11任一项所述的时间序列预测方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311272194.6A CN116993185A (zh) | 2023-09-28 | 2023-09-28 | 时间序列预测方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311272194.6A CN116993185A (zh) | 2023-09-28 | 2023-09-28 | 时间序列预测方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116993185A true CN116993185A (zh) | 2023-11-03 |
Family
ID=88521767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311272194.6A Pending CN116993185A (zh) | 2023-09-28 | 2023-09-28 | 时间序列预测方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116993185A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237856A (zh) * | 2023-11-13 | 2023-12-15 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置、计算机设备、存储介质 |
-
2023
- 2023-09-28 CN CN202311272194.6A patent/CN116993185A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237856A (zh) * | 2023-11-13 | 2023-12-15 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置、计算机设备、存储介质 |
CN117237856B (zh) * | 2023-11-13 | 2024-03-01 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置、计算机设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108446374B (zh) | 用户意图预测方法、装置、电子设备、存储介质 | |
Wu et al. | Evolving RBF neural networks for rainfall prediction using hybrid particle swarm optimization and genetic algorithm | |
CN109885756B (zh) | 基于cnn和rnn的序列化推荐方法 | |
CN113626719A (zh) | 信息推荐方法、装置、设备、存储介质及计算机程序产品 | |
CN116415654A (zh) | 一种数据处理方法及相关设备 | |
WO2022156561A1 (zh) | 一种自然语言处理方法以及装置 | |
CN112231569B (zh) | 新闻推荐方法、装置、计算机设备及存储介质 | |
WO2023221928A1 (zh) | 一种推荐方法、训练方法以及装置 | |
CN112541124B (zh) | 生成多任务模型的方法、装置、设备、介质及程序产品 | |
Chiang et al. | Hybrid time-series framework for daily-based PM 2.5 forecasting | |
CN116993185A (zh) | 时间序列预测方法、装置、设备及存储介质 | |
Raghavendra et al. | Artificial humming bird with data science enabled stability prediction model for smart grids | |
Kosana et al. | Hybrid convolutional Bi-LSTM autoencoder framework for short-term wind speed prediction | |
Said et al. | AI-based solar energy forecasting for smart grid integration | |
Tong et al. | Temporal inception convolutional network based on multi‐head attention for ultra‐short‐term load forecasting | |
Kong et al. | Real‐time facial expression recognition based on iterative transfer learning and efficient attention network | |
CN116595356B (zh) | 时序信号预测方法、装置、电子设备及存储介质 | |
CN117458440A (zh) | 基于关联特征融合的生成式电力负荷预测方法及系统 | |
Li et al. | An effective self-attention-based hybrid model for short-term traffic flow prediction | |
CN116910357A (zh) | 一种数据处理方法及相关装置 | |
CN116578774A (zh) | 一种预估排序方法、装置、计算机设备及存储介质 | |
CN113723712B (zh) | 风电功率预测方法、系统、设备及介质 | |
Chang et al. | Enhanced road information representation in graph recurrent network for traffic speed prediction | |
Liu | POI recommendation model using multi-head attention in location-based social network big data | |
Li et al. | Research on recommendation algorithm based on e-commerce user behavior sequence |
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 |