一种基于改进SAITS模型的时间序列补全方法及系统
本发明涉及时间序列数据处理,尤其涉及一种基于改进saits模型的时间序列补全方法及系统。
背景技术:
1、随着智能交通系统的快速发展,交通流数据的采集规模与维度持续增长。然而,在实际数据采集过程中,由于传感器故障、通信中断、恶劣天气及设备维护等因素,交通数据缺失问题普遍存在。这一问题在桥梁交通场景中尤为突出,桥梁作为城市路网的关键节点,其交通流量数据不仅承载着日常通勤压力,还需应对特殊事件带来的突发性冲击。数据缺失不仅破坏了时间序列的完整性,更严重制约了桥梁健康评估、交通状态感知及应急响应的准确性与可靠性。
2、现有的交通数据补全方法主要分为三类:基于统计学习的方法、基于低秩矩阵/张量分解的方法以及基于深度学习的方法。早期统计方法(如均值填补、k近邻)简单直观,但难以捕捉交通流中复杂的非线性依赖。低秩方法(如鲁棒矩阵补全、张量补全)能充分利用数据的全局低秩特性,但其性能依赖于数据全局低秩性的假设,且对突发变化敏感。深度学习方法(如生成对抗网络、图神经网络、循环神经网络)虽能建模非线性关系,但存在训练不稳定、模式崩溃、难以捕捉长距离时间依赖等问题。
3、近年来,基于自注意力机制的transformer架构因能够并行处理序列数据并直接建模长程依赖而受到关注。例如,saits模型是该架构在时间序列补全任务中的成功应用。然而,直接将其应用于城市桥梁准周期交通数据仍面临挑战:模型未显式编码绝对时间语义,对桥梁交通量典型的日周期与周周期规律的感知能力有限;其原始融合层直接拼接完整注意力矩阵,输入维度随窗口长度增长,存在参数冗余;且原始训练策略不能确保观测值重建与缺失值推断两个目标的同步收敛。因此,如何设计一种既能充分挖掘长时序依赖,又能灵活应对局部动态变化,且具备强周期感知能力的桥梁交通量补全模型,成为亟待解决的问题。
4、需要说明的是,上述以城市桥梁交通数据为例描述现有技术,但本发明所提出的改进saits模型具有通用性,可应用于任何时间序列缺失补全任务,如电力负荷、气象数据、网络流量等。下文以城市桥梁交通数据为例进行详细说明,但本发明的保护范围不限于此。
技术实现思路
1、本发明的目的是提供一种基于改进saits模型的时间序列补全方法及系统,有效解决自注意力模型在非平稳时序数据上的过拟合与训练不稳定的问题,提升模型的泛化性能,显著增强对时间序列中周期性及非平稳变化的感知能力,大幅降低模型参数冗余,同时使融合系数的生成基于历史注意力汇总特征与掩码信息,能够自适应地识别并移除不符合规律的离群点,为模型提供了高质量的训练数据基础。
2、为实现上述目的,本发明提供了一种基于改进saits模型的时间序列补全方法,包括以下步骤:
3、步骤s1、获取原始时间序列数据,得到含缺失值的原始时间序列;
4、步骤s2、对原始时间序列进行异常值剔除处理,得到高质量观测序列;
5、步骤s3、对saits基础模型架构进行改进,构建i-saits模型包括:在输入层引入多尺度时间特征以增强周期感知能力、采用adamw优化器、梯度裁剪及联合损失早停机制优化训练策略、重构注意力权重池化策略以生成自适应融合系数;
6、步骤s4、利用高质量观测序列对i-saits模型进行训练;
7、步骤s5、将待补全的含缺失值序列输入至训练完成的i-saits模型,输出补全后的完整序列。
8、优选的,在步骤s2中,对原始时间序列进行异常值剔除处理,得到高质量观测序列,具体过程如下:
9、步骤s21、读取原始桥梁交通量时间序列数据,根据时间特征对序列中的工作日及节假日进行标记,分别形成工作日数据集与节假日数据集;
10、步骤s22、采用k-means聚类算法,分别对工作日数据集与节假日数据集中的交通量数据进行聚类,将数据划分为低峰时段簇、平峰时段簇和高峰时段簇三个互不相交的簇,使得簇内平方和最小化,如下所示:
11、;
12、其中,为簇内平方和目标函数;为第个交通量样本;为第个簇的聚类中心;为第个簇;为向量范数的平方;k-means聚类算法通过以下迭代步骤求解:
13、(1)初始化:从数据集中随机选取3个样本点作为初始聚类中心,,;
14、(2)分配步骤:对于第次迭代,将每个样本点分配到距离最近的聚类中心所对应的簇,如下所示:
15、;
16、其中,为迭代轮次;为第次迭代中的第个簇;和分别为第次迭代中第个簇和第个簇的聚类中心;、∈{1,2,3};
17、(3)更新步骤:重新计算每个簇的聚类中心,取簇内所有样本点的均值,如下所示:
18、;
19、其中,为第次迭代中第个簇的更新聚类中心;为第次迭代中第个簇;为第次迭代中第个簇所包含的样本数量;
20、(4)终止条件:重复执行分配步骤和更新步骤,直至聚类中心不再发生变化对所有成立或达到预设的最大迭代次数;
21、步骤s23、基于聚类算法得到的各时段簇,分别计算不同工作日/节假日下各时段低峰、平峰、高峰的箱型图上限及下限,如下所示:
22、;
23、;
24、其中,为对应时段簇内交通量数据的第一四分位数;为第三四分位数;为四分位距;
25、步骤s24、将每个时段簇内处于区间之外的数据点标记为异常值,遍历全部时间序列,剔除所有被标记的异常值,得到标记为缺失后的高质量观测序列。
26、优选的,在步骤s3中,给定标记为缺失后的高质量观测序列及其对应的原始缺失掩码矩阵,在训练阶段对部分观测值施加人工掩码,构造人工掩码矩阵,以强制模型学习预测被掩盖位置,并将原始缺失位置和人工掩盖位置置为0,得到经人工掩码处理的待补全输入序列及其对应的模型实际输入掩码;
27、多尺度时间特征增强,在输入层引入三类时域特征,构成多尺度时间特征矩阵,与待补全输入序列及其对应的模型实际输入掩码拼接后共同作为第一、第二dmsa块的输入,具体包括:
28、(1)日内时刻正弦-余弦编码:对于第t个时间步,根据其时间戳提取小时值ht和分钟值mt,计算连续小时变量τt=ht+mt/60,其中0≤τt<24;再将连续小时变量τt映射为单位圆上的二维周期编码向量et,使同一小时内不同分钟对应的时间槽具有不同编码,并保持跨日边界处的周期连续性,如下所示:
29、;
30、其中,ht∈{0,1,…,23}为第t个时间步对应时间戳的小时值;mt∈{0,1,…,59}为对应的分钟值;τt为将小时值和分钟值换算得到的连续小时变量;
31、(2)节假日标志:定义一个二值变量来表示第天的节假日状态,以区分工作日与节假日之间交通流量的显著差异,如下所示:
32、;
33、(3)时段类型:以各时间槽在历史数据中的平均交通流量为特征,采用k-means聚类算法将一天内各时间槽划分为低峰、平峰、高峰三类,分别赋予整数值标签0、1、2,作为整数编码输入模型,以引导模型捕捉不同拥堵状态下的流量分布差异,如下所示:
34、;
35、其中,为第个时间步所属的时段类型标签;当时间步对应低峰、平峰和高峰时,分别取0、1和2;低峰、平峰和高峰依据聚类中心从小到大的顺序确定;
36、将时间特征矩阵与待补全输入序列及其对应的模型实际输入掩码在特征维度拼接,得到增强输入,如下所示:
37、;
38、其中,为增强输入;
39、经线性投影后与固定位置编码相加,使模型既能通过位置编码理解序列内部的相对顺序,又能借助时间特征感知绝对时刻的语义信息。
40、优选的,在步骤s3中,对训练策略进行优化,具体包括:
41、(1)联合早停监控指标:将早停机制的监控指标由单一mit损失改进为观测重建损失ort与掩码填补损失mit的联合验证损失,如下所示:
42、;
43、其中,为观测重建验证损失;为掩码填补验证损失;
44、(2)adamw优化器与权重衰减:将adam替换为解耦权重衰减的adamw优化器,其参数更新规则,如下所示:
45、;
46、其中,为优化迭代次数;为第次迭代的模型参数;为第次迭代的模型参数;为学习率;为防止分母为0的稳定常数;、分别为偏差校正后的一阶矩与二阶矩估计;为权重衰减系数;
47、(3)梯度裁剪:引入梯度裁剪策略,将梯度的l2范数限制在预设阈值以内,防止因序列长程依赖导致的反向传播梯度爆炸问题。
48、优选的,在步骤s3中,注意力权重池化重构,包含以下内容:
49、(1)提取平均注意力权重:将第二dmsa块输出的多头注意力权重在头维度上取平均,得到;
50、(2)压缩为历史注意力汇总特征向量:对每个目标时刻,计算其对所有源时刻注意力的均值,得到一维历史注意力汇总特征向量,如下所示:
51、;
52、其中,表示第个目标时间步对第个源时间步的平均注意力权重;为第个目标时间步对应的历史注意力汇总特征,用于概括平均注意力权重沿源时间维度的统计结果,并作为融合系数生成网络的辅助输入;
53、历史注意力汇总特征向量作为池化后的辅助统计特征,与模型实际输入掩码共同输入融合系数生成网络,并与可学习参数共同确定融合系数;
54、(3)生成融合系数:将池化后的历史注意力汇总特征向量与模型实际输入掩码在特征维度拼接,经线性层与sigmoid激活函数生成自适应融合系数,如下所示:
55、;
56、其中,,为可学习参数;
57、(4)加权融合与输出:利用融合系数对粗估计与精估计进行凸组合,得到融合后的中间结果,如下所示:
58、;
59、最终,补全结果保留原始观测位置的值,如下所示:
60、;
61、其中,为粗估计;为精估计;为缺失序列。
62、优选的,在步骤s4中,利用高质量观测序列对i-saits模型进行训练,具体过程如下:
63、步骤s41、数据预处理:按时间顺序将样本划分为训练集、验证集和测试集;分别对训练集、验证集和测试集的子序列采用滑动窗口法将高质量观测序列切分为固定长度的样本,每个样本包含:交通量子序列、对应的原始观测掩码矩阵以及多尺度时间特征矩阵;
64、步骤s42、构造人工掩码监督信号:在训练集上对每个样本随机生成动态人工掩码矩阵;人工掩码仅在原始观测位置上施加,被掩盖位置的值在输入模型前置为0;最终输入模型的缺失掩码为,如下所示:
65、;
66、其中,为模型实际输入掩码;为原始观测掩码;为人工掩码;⊙表示逐元素乘法;
67、在验证集和测试集上,使用固定随机种子生成静态人工掩码,以保证评估的可重复性;
68、步骤s43、采用端到端的联合优化策略训练i-saits模型,训练过程如下:
69、(1)前向传播:将当前批次的待补全输入序列及其对应的模型实际输入掩码和多尺度时间特征送入i-saits模型,依次经过第一dmsa块、中间序列更新、第二dmsa块和动态加权融合,得到粗估计、精估计和最终补全结果;
70、(2)损失计算:总损失函数由观测重建损失与掩码填补损失加权求和得到,如下所示:
71、;
72、其中,为原始观测位置上模型输出与真实值的平均绝对误差,同时监督粗估计、精估计和融合估计三个输出分支;仅在人工掩码位置上计算最终补全结果与真实值的平均绝对误差;
73、(3)反向传播与优化:采用adamw优化器更新模型参数,初始学习率,权重衰减系数;在每个梯度更新后,执行梯度裁剪,将梯度的l2范数限制在阈值以内,防止梯度爆炸;
74、(4)早停机制:每个训练周期结束后,在验证集上计算联合损失;若验证损失连续个周期未下降,则停止训练,并保存验证损失最小的模型参数作为最优模型;
75、(5)超参数设置:超参数通过optuna框架进行贝叶斯优化确定,共执行80次独立试验,搜索阶段最大训练轮数80,早停耐心值10;最终训练阶段最大轮数400,早停耐心值30。
76、优选的,在步骤s5中,将待补全的含缺失值序列输入至训练完成的i-saits模型,输出补全后的完整序列,具体过程如下:
77、步骤s51、滑动窗口全局补全策略:对于待补全的完整长序列,采用滑动窗口方法进行全局补全,对于每个窗口提取待补全子序列、对应的原始观测掩码、多尺度时间特征矩阵;
78、步骤s52、窗口级模型推理:将每个窗口的三元组输入至训练完成的最优i-saits模型,执行前向传播,得到该窗口的补全结果;
79、步骤s53、重叠窗口平均:最终补全序列在时间步的值取所有覆盖窗口补全值的算术平均;
80、步骤s54、反标准化与观测值强制保留:需对推理得到的补全结果进行反标准化操作,强制保留原始观测位置的数据,确保补全序列中所有原本存在观测值的位置不被修改。
81、一种基于改进saits模型的时间序列补全系统,具体包括:数据获取与预处理模块、模型构建模块、模型训练模块和缺失数据补全模块;
82、(1)数据获取与预处理模块:用于获取原始时间序列数据,将其转换为标准化的时间序列格式,并进行异常值剔除;
83、(2)模型构建模块:用于构建改进的saits模型i-saits,模型包括输入嵌入层、双阶段对角掩码自注意力模块、动态加权融合模块;
84、(3)模型训练模块:用于利用预处理后的高质量数据对i-saits模型进行训练,并采用联合损失与早停机制优化模型参数;
85、(4)缺失数据补全模块:用于将待补全的含缺失值序列输入训练完成的i-saits模型,输出补全后的完整序列。
86、因此,本发明采用上述一种基于改进saits模型的时间序列补全方法及系统,有益效果如下:
87、(1)高精度补全能力:本发明提出的i-saits模型,通过引入多尺度时间特征,显著增强了对时间序列中周期性及非平稳变化的感知能力。以城市桥梁交通数据为例,相比原始saits模型mape降低超过60%,补全精度显著优于现有基线模型。
88、(2)训练稳定性与泛化性强:通过采用adamw优化器、梯度裁剪以及基于ort+mit的联合损失早停策略,有效解决了自注意力模型在非平稳时序数据上的过拟合与训练不稳定问题,提升了模型的泛化性能。
89、(3)模型效率与融合表征能力高:通过重构注意力权重池化策略,将二维注意力矩阵压缩为一维历史注意力汇总特征向量,大幅降低模型参数冗余;该汇总特征与掩码信息共同参与融合系数生成,为粗估计与精估计的逐时刻门控融合提供辅助统计信息。
90、(4)数据质量保障:本发明提出的融合k-means聚类与箱型图法的异常值剔除算法,充分考虑了工作日/节假日及日内时段特征,能够自适应地识别并移除不符合交通流规律的离群点,为模型提供了高质量的训练数据基础。
91、下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
- 还没有人留言。
