本文约2000字,建议阅读8分钟
本文提出了片段级别结构损失函数 Patch-wise Structural (PS) Loss,通过在局部片段上对相关性、方差和均值进行对齐,从而实现对时间序列结构的更细致建模。
现有预测模型大多依赖均方误差等逐点损失函数,这类方法将每个时间步视为独立单元,忽略了时序数据固有的结构依赖性,导致难以准确捕捉复杂的时序模式。
为应对这些挑战,天津大学研究团队提出了一种创新的片段级别结构损失(PS Loss),通过片段级时序对比来增强结构对齐能力。PS Loss 为复杂时序数据的精确建模设立了新基准,为时序损失函数设计提供了全新视角。大量实验表明,PS Loss 显著提升了前沿模型在多样化现实数据集上的预测性能。
【论文标题】
Patch-wise Structural Loss for Time Series Forecasting
【论文地址】
https://arxiv.org/abs/2503.00877
【论文代码】
https://github.com/Dilfiraa/PS_Loss
研究背景
近年来,基于深度学习的时间序列预测模型在建模复杂依赖关系方面取得了显著进展,但大多数方法在训练过程中依然采用 MSE 作为损失函数。
MSE 通过计算预测值与真实值之间的逐点差异进行优化,从而忽略了时间序列中的结构性差异。论文中的图1展示了三个具有相似 MSE 值,但结构差异显著的预测结果:
(a)相关性较低,整体趋势不一致;
(b)方差不匹配,波动幅度存在差异;
(c)均值偏移,整体水平发生偏差。
这些例子表明,仅依赖 MSE 难以有效衡量预测序列与真实序列之间的结构对齐程度。相关性、方差和均值能够从不同且互补的角度刻画时间序列之间的结构差异。
然而,直接在整个序列上对这些统计特征进行对齐仍存在显著不足。由于时间序列往往具有非平稳性,这些特征在不同时间段会呈现动态变化,仅使用全局统计量会忽略序列在局部区域的细粒度差异。
综上,本文提出了片段级别结构损失函数 Patch-wise Structural (PS) Loss,通过在局部片段上对相关性、方差和均值进行对齐,从而实现对时间序列结构的更细致建模。
方法介绍
该方法包括三个关键组成部分:基于傅里叶变换的自适应分段(FAP)、片段级别结构损失(PS Loss),以及基于梯度的动态权重调整(GDW),如下图所示。
01 基于傅里叶变换的自适应分段
为了更有效地捕捉时间序列中的局部结构,PS Loss 采用基于傅里叶变换的自适应分段(FAP)将预测序列与真实序列划分为若干片段。该划分基于傅里叶变换提取出的主导周期,使得每个片段尽可能覆盖周期性结构。同时,为避免片段长度过大而掩盖局部细节,引入阈值 δ 控制最大片段长度,从而在结构完整性与局部细粒度之间实现平衡。
02 片段级别结构损失(PS Loss)
在划分后的每个局部片段上,PS Loss 从三个互补角度度量预测值与真实值之间的结构差异:
- 相关性损失: 通过皮尔逊相关系数计算预测片段与真实片段之间的相关程度,用于衡量两者在方向与整体趋势上的一致性。
- 方差损失: 通过计算两个序列 softmax 后的 KL 散度,刻画不同时间步的相对偏离程度,从而衡量预测与真实序列在局部波动强度上的一致性。
- 均值损失: 通过计算片段均值间的 MAE,度量整体数值上的偏移情况。
最终的 PS Loss 为三项损失的加权和:
03 基于梯度的动态权重调整
为了在训练过程中实现三个结构损失子项之间的合理权重平衡,防止某一项在优化中占据主导地位,PS Loss 引入了基于梯度的动态权重调整(GDW)策略。 在每一次训练迭代中,GDW 会分别计算三项结构损失相对于模型输出层参数的梯度,并根据梯度范数动态分配权重,从而确保三项指标在训练中保持平衡优化。此外,GDW 引入两个动态因子,根据相关性和方差的对齐程度动态调整均值损失的权重,使其在结构逐步对齐后逐步增强作用。
最终的损失函数由 MSE 和 PS 损失组成,两者通过权重系数 λ 进行加权组合:
实验结果
- 主实验:
本文在基于 Transformer、MLP、CNN 和 LLM 等不同主干结构的 7 个SOTA代表性模型上进行了实验。结果表明,PS Loss 在不同模型和数据集上均展现出良好的适应性与稳定的性能提升,验证了其在时间序列预测任务中的有效性。
- Zero-shot 实验:
PS Loss 在跨数据集预测任务中整体优于 MSE,展现出了更好的泛化能力。
- 预测可视化:
使用 PS Loss 后,模型生成的序列在趋势、波动和均值上与真实序列更加一致。