时间序列学习论文笔记
清华2025年的这一篇工作对时间序列分析做了一个综述。
时序基础概念
时间序列(time series)的定义:按照时间排序的T条观测数据
形式化的定义:
其中,是在t时间步下的观测结果,表示观测的变量数量
时序分析经典任务:预测、填补、异常检测与时序分类
基础工具与方法
平稳性(Stationarity)
序列的统计属性不随时间而变化的特性,一般是指有稳定的均值和方差
统计分析方法中可以通过差分分析(differencing)、log转换(log-transformation)等方式将非平稳性序列转换成平稳序列
深度学习方法中,一般通过数据归一化实现平稳性的转换:deep adaptive input normalization(DAIN)、RevIN、Non-Stationary Transformer、SAN等工作均有一些研究
序列分解
将原始序列分解成多个子序列,这些子序列可以表达更规律的时序模式
傅立叶变换
模型架构
| 基座 | 示例 |
|---|---|
| MLP | ![]() |
| RNN | ![]() |
| CNN | ![]() |
| GNN | ![]() |
其中的GNN方法主要用于多变量时序学习,将多个变量之间建边构建成图
Transformer架构
根据建模方法又分成了三类
Point-wise
将每一个独立的序列值直接映射成高纬向量,再使用Tramsformer学习
其中,是值映射函数, 表示位置编码,是时间编码。
所以这一类的工作主要有两方面,一个是设计好的预处理模块,另一类是改造更适合的注意力机制。RevIN和Non-Stationary等都属于这一分支
这种方法无法很好地学习时间序列中的局部语义。
Patch-wise
将原始时间序列划分成若干个patch,每个patch映射成一个高纬向量,再进行学习的方法 PatchTST是一个经典的patch-wise方法,Pathformer更近一步尝试了动态patching的方法
Series-wise
直接讲一个完整时间序列映射到向量空间,目的是捕获多变量之间的依赖
未来的研究方向
一、时序预训练方法:当前集中在对比学习和掩码学习两方面的探索
SimCLR这类的对比学习方法对时间依赖建模欠缺,因此效果不佳
二、时序基础模型(Time Series Foundation Models):训练时序领域的基础大模型,TimeGPT、Lag-LlaMa、Timer、MOIRAI等都是这方面的尝试
三、语言大模型的直接应用:微调与prompting方式



