Time Series Library (TSLib) 仓库介绍
TSLib 是由清华大学机器学习实验室(THUML)开源的面向深度学习研究者的时间序列分析工具库,核心聚焦于深度时间序列模型的评测与研发,是一个功能全面、易扩展的代码基准库。
核心定位
提供整洁、统一的代码框架,支持长短期预测、缺失值插补、异常检测、分类五大主流时间序列任务,同时适配大型时间序列模型(LTSM)的零样本预测评估,既可以复现SOTA模型,也能快速开发自定义模型。
核心特性
1. 丰富的模型支持
覆盖数十种主流/前沿时间序列模型,且持续更新: - 经典基础模型:Transformer、Informer、Autoformer、FEDformer等; - SOTA预测模型:iTransformer、TimeMixer、TimeXer、TimesNet、PatchTST、DLinear等; - 新兴模型:Mamba、Chronos2、TiRex、Sundial等大型时间序列模型(LTSM); - 专项任务模型:KAN-AD(异常检测)、MSGNet(多变量预测)、FreTS(频域MLP)等。
所有模型均提供完整实现,文件位于 models/ 目录(如 iTransformer.py、FreTS.py),且配套可复现的实验脚本。
2. 标准化的任务体系
| 任务类型 | 核心场景 | 标杆模型 |
|---|---|---|
| 长期预测 | 长时序跨度预测(分Look-Back-96/搜索式回溯) | TimeXer、iTransformer、TimeMixer |
| 短期预测 | 短周期时序预测(如M4数据集) | TimesNet、Non-stationary Transformer |
| 缺失值插补 | 时序数据缺失值填充 | TimesNet、Autoformer |
| 异常检测 | 时序异常识别(SMD/SMAP等) | TimesNet、FEDformer |
| 分类 | 时序特征分类(UEA数据集) | TimesNet、Informer |
| 零样本预测(LTSM) | 大型时序模型零样本评估 | Chronos2、TiRex、Sundial |
3. 模块化的代码结构
仓库采用高内聚、低耦合的设计,核心目录分工清晰:
Time-Series-Library/
├── run.py # 实验单入口,解析参数并调度任务
├── exp/ # 实验管线(训练/验证/测试逻辑)
│ ├── exp_long_term_forecasting.py # 长期预测实验
│ ├── exp_zero_shot_forecasting.py # LTSM零样本评估
│ └── ...(插补/异常检测/分类等)
├── data_provider/ # 数据载入与预处理(滑窗/格式适配)
├── models/ # 所有模型实现(文件名=模型名)
├── layers/ # 通用组件(注意力/卷积/嵌入层等)
│ ├── AutoCorrelation.py、Transformer_EncDec.py等
├── utils/ # 工具集(指标/早停/数据增强等)
├── scripts/ # 实验脚本(按任务/数据集分类)
└── tutorial/ # 新手教程(如TimesNet入门)
4. 易用的实验复现能力
- 标准化数据:提供预处理好的公开数据集(Google Drive/百度网盘/Hugging Face),涵盖ETT、M4、SMD、UEA等;
- 一键式实验:scripts目录下按任务/数据集提供bash脚本,直接运行即可复现论文结果;
- 统一环境:配套
requirements.txt和Docker部署方案,支持conda环境快速搭建(Python 3.11)。
5. 持续更新与社区支持
- 定期更新SOTA模型与实验基准(如2025年新增零样本预测、Accuracy Law相关分析);
- 支持贡献者提交PR,补充新模型/修复bug,团队会及时合并并更新排行榜;
- 提供中英文双语文档,配套新手教程(如TimesNet教程),对入门者友好。
快速上手
- 克隆仓库并配置环境:
git clone https://github.com/thuml/Time-Series-Library.git
cd Time-Series-Library
conda create -n tslib python=3.11 && conda activate tslib
pip install -r requirements.txt
- 下载预处理数据集,放入
./dataset目录; - 运行脚本复现实验(如长期预测):
bash scripts/long_term_forecast/ETT_script/TimeMixer.sh
适用人群
- 时间序列深度学习研究者(快速对比模型性能、验证新想法);
- 工业界时序任务开发者(复用成熟模型解决预测/异常检测等问题);
- 入门学习者(通过教程和模块化代码理解时序模型设计)。
该仓库是目前时间序列领域覆盖模型最全、任务最完整的基准库之一,且依托THUML的持续维护,保证了代码的时效性和科学性。