Skip to content

Latest commit

 

History

History
276 lines (211 loc) · 34.3 KB

README_CN.md

File metadata and controls

276 lines (211 loc) · 34.3 KB

一个公平、可扩展的时间序列预测基准库和工具包


EasyTorch LICENSE PyTorch PyTorch python lint

$\text{BasicTS}^{+}$ (Basic Time Series) 是一个面向时间序列预测的基准库和工具箱,现已支持时空预测、长序列预测等多种任务与数据集,涵盖统计模型、机器学习模型、深度学习模型等多类算法,为开发和评估时间序列预测模型提供了理想的工具。

如果你觉得这个项目对你有帮助,别忘了给个⭐Star支持一下,非常感谢!

BasicTS 一方面通过 统一且标准化的流程,为热门的深度学习模型提供了 公平且全面 的复现与对比平台。

另一方面,BasicTS 提供了用户 友好且易于扩展 的接口,帮助快速设计和评估新模型。用户只需定义模型结构,便可轻松完成基本操作。

你可以在快速上手找到详细的教程。另外,我们正在收集 ToDoHowTo,如果您需要更多功能(例如:更多数据集或基准模型)或教程,欢迎提出 issue 或在此处留言。

Important

如果本项目对您有用,请考虑引用下面的论文:

@article{shao2023exploring,
   title={Exploring Progress in Multivariate Time Series Forecasting: Comprehensive Benchmarking and Heterogeneity Analysis},
   author={Shao, Zezhi and Wang, Fei and Xu, Yongjun and Wei, Wei and Yu, Chengqing and Zhang, Zhao and Yao, Di and Jin, Guangyin and Cao, Xin and Cong, Gao and others},
   journal={arXiv preprint arXiv:2310.06119},
   year={2023}
 }

🔥🔥🔥 该论文已被IEEE TKDE录用!你可以在这里查看论文 🔥🔥🔥

✨ 主要功能亮点

公平的性能评估:

通过统一且全面的流程,用户能够公平且充分地对比不同模型在任意数据集上的性能表现。

使用 BasicTS 进行开发你可以:

最简代码实现 用户只需实现关键部分如模型架构、数据预处理和后处理,即可构建自己的深度学习项目。
基于配置文件控制一切 用户可以通过配置文件掌控流程中的所有细节,包括数据加载器的超参数、优化策略以及其他技巧(如课程学习)。
支持所有设备 BasicTS 支持 CPU、GPU 以及分布式 GPU 训练(单节点多 GPU 和多节点),依托 EasyTorch 作为后端。用户只需通过设置参数即可使用这些功能,无需修改代码。
保存训练日志 BasicTS 提供 `logging` 日志系统和 `Tensorboard` 支持,并统一封装接口,用户可以通过简便的接口调用来保存自定义的训练日志。

🚀 安装和快速上手

详细的安装步骤请参考 快速上手 教程。

📦 支持的模型

BasicTS 实现了丰富的基线模型,包括经典模型、时空预测模型和长序列预测模型等。

这些模型的代码实现可在 baselines 目录中找到。

下表中的代码链接(💻Code) 指向了相关论文的官方实现,感谢各位作者对代码的开源贡献!

时空预测

📊Baseline 📝Title 📄Paper 💻Code 🏛Venue 🎯Task
BigST Linear Complexity Spatio-Temporal Graph Neural Network for Traffic Forecasting on Large-Scale Road Networks Link Link VLDB'24 STF
STDMAE Spatio-Temporal-Decoupled Masked Pre-training for Traffic Forecasting Link Link IJCAI'24 STF
STWave When Spatio-Temporal Meet Wavelets: Disentangled Traffic Forecasting via Efficient Spectral Graph Attention Networks Link Link ICDE'23 STF
STAEformer Spatio-Temporal Adaptive Embedding Makes Vanilla Transformer SOTA for Traffic Forecasting Link Link CIKM'23 STF
MegaCRN Spatio-Temporal Meta-Graph Learning for Traffic Forecasting Link Link AAAI'23 STF
DGCRN Dynamic Graph Convolutional Recurrent Network for Traffic Prediction: Benchmark and Solution Link Link ACM TKDD'23 STF
STID Spatial-Temporal Identity: A Simple yet Effective Baseline for Multivariate Time Series Forecasting Link Link CIKM'22 STF
STEP Pretraining Enhanced Spatial-temporal Graph Neural Network for Multivariate Time Series Forecasting Link Link SIGKDD'22 STF
D2STGNN Decoupled Dynamic Spatial-Temporal Graph Neural Network for Traffic Forecasting Link Link VLDB'22 STF
STNorm Spatial and Temporal Normalization for Multi-variate Time Series Forecasting Link Link SIGKDD'21 STF
STGODE Spatial-Temporal Graph ODE Networks for Traffic Flow Forecasting Link Link SIGKDD'21 STF
GTS Discrete Graph Structure Learning for Forecasting Multiple Time Series Link Link ICLR'21 STF
StemGNN Spectral Temporal Graph Neural Network for Multivariate Time-series Forecasting Link Link NeurIPS'20 STF
MTGNN Connecting the Dots: Multivariate Time Series Forecasting with Graph Neural Networks Link Link SIGKDD'20 STF
AGCRN Adaptive Graph Convolutional Recurrent Network for Traffic Forecasting Link Link NeurIPS'20 STF
GWNet Graph WaveNet for Deep Spatial-Temporal Graph Modeling Link Link IJCAI'19 STF
STGCN Spatio-Temporal Graph Convolutional Networks: A Deep Learning Framework for Traffic Forecasting Link Link IJCAI'18 STF
DCRNN Diffusion Convolutional Recurrent Neural Network: Data-Driven Traffic Forecasting Link Link1, Link2 ICLR'18 STF

Long-Term Time Series Forecasting

📊Baseline 📝Title 📄Paper 💻Code 🏛Venue 🎯Task
GLAFF Rethinking the Power of Timestamps for Robust Time Series Forecasting: A Global-Local Fusion Perspective Link Link NeurIPS'24 LTSF
CycleNet CycleNet: Enhancing Time Series Forecasting through Modeling Periodic Patterns Forecasting Link Link NeurIPS'24 LTSF
Fredformer Fredformer: Frequency Debiased Transformer for Time Series Forecasting Link Link KDD'24 LTSF
UMixer An Unet-Mixer Architecture with Stationarity Correction for Time Series Forecasting Link Link AAAI'24 LTSF
TimeMixer Decomposable Multiscale Mixing for Time Series Forecasting Link Link ICLR'24 LTSF
Time-LLM Time-LLM: Time Series Forecasting by Reprogramming Large Language Models Link Link ICLR'24 LTSF
SparseTSF Modeling LTSF with 1k Parameters Link Link ICML'24 LTSF
iTrainsformer Inverted Transformers Are Effective for Time Series Forecasting Link Link ICLR'24 LTSF
Koopa Learning Non-stationary Time Series Dynamics with Koopman Predictors Link Link NeurIPS'24 LTSF
CrossGNN CrossGNN: Confronting Noisy Multivariate Time Series Via Cross Interaction Refinement Link Link NeurIPS'23 LTSF
NLinear Are Transformers Effective for Time Series Forecasting? Link Link AAAI'23 LTSF
Crossformer Transformer Utilizing Cross-Dimension Dependency for Multivariate Time Series Forecasting Link Link ICLR'23 LTSF
DLinear Are Transformers Effective for Time Series Forecasting? Link Link AAAI'23 LTSF
DSformer A Double Sampling Transformer for Multivariate Time Series Long-term Prediction Link Link CIKM'23 LTSF
SegRNN Segment Recurrent Neural Network for Long-Term Time Series Forecasting Link Link arXiv LTSF
MTS-Mixers Multivariate Time Series Forecasting via Factorized Temporal and Channel Mixing Link Link arXiv LTSF
LightTS Fast Multivariate Time Series Forecasting with Light Sampling-oriented MLP Link Link arXiv LTSF
ETSformer Exponential Smoothing Transformers for Time-series Forecasting Link Link arXiv LTSF
NHiTS Neural Hierarchical Interpolation for Time Series Forecasting Link Link AAAI'23 LTSF
PatchTST A Time Series is Worth 64 Words: Long-term Forecasting with Transformers Link Link ICLR'23 LTSF
TiDE Long-term Forecasting with TiDE: Time-series Dense Encoder Link Link TMLR'23 LTSF
TimesNet Temporal 2D-Variation Modeling for General Time Series Analysis Link Link ICLR'23 LTSF
Triformer Triangular, Variable-Specific Attentions for Long Sequence Multivariate Time Series Forecasting Link Link IJCAI'22 LTSF
NSformer Exploring the Stationarity in Time Series Forecasting Link Link NeurIPS'22 LTSF
FiLM Frequency improved Legendre Memory Model for LTSF Link Link NeurIPS'22 LTSF
FEDformer Frequency Enhanced Decomposed Transformer for Long-term Series Forecasting Link Link ICML'22 LTSF
Pyraformer Low complexity pyramidal Attention For Long-range Time Series Modeling and Forecasting Link Link ICLR'22 LTSF
HI Historical Inertia: A Powerful Baseline for Long Sequence Time-series Forecasting Link None CIKM'21 LTSF
Autoformer Decomposition Transformers with Auto-Correlation for Long-Term Series Forecasting Link Link NeurIPS'21 LTSF
Informer Beyond Efficient Transformer for Long Sequence Time-Series Forecasting Link Link AAAI'21 LTSF

其他方法

📊Baseline 📝Title 📄Paper 💻Code 🏛Venue 🎯Task
LightGBM LightGBM: A Highly Efficient Gradient Boosting Decision Tree Link Link NeurIPS'17 Machine Learning
NBeats Neural basis expansion analysis for interpretable time series forecasting Link Link1, Link2 ICLR'19 Deep Time Series Forecasting
DeepAR Probabilistic Forecasting with Autoregressive Recurrent Networks Link Link1, Link2, Link3 Int. J. Forecast'20 Probabilistic Time Series Forecasting
WaveNet WaveNet: A Generative Model for Raw Audio. Link Link 1, Link 2 arXiv Audio

📦 支持的数据集

BasicTS 支持多种类型的数据集,涵盖时空预测、长序列预测及大规模数据集。

时空预测

🏷️Name 🌐Domain 📏Length 📊Time Series Count 🔄Graph ⏱️Freq. (m) 🎯Task
METR-LA Traffic Speed 34272 207 True 5 STF
PEMS-BAY Traffic Speed 52116 325 True 5 STF
PEMS03 Traffic Flow 26208 358 True 5 STF
PEMS04 Traffic Flow 16992 307 True 5 STF
PEMS07 Traffic Flow 28224 883 True 5 STF
PEMS08 Traffic Flow 17856 170 True 5 STF

长序列预测

🏷️Name 🌐Domain 📏Length 📊Time Series Count 🔄Graph ⏱️Freq. (m) 🎯Task
BeijingAirQuality Beijing Air Quality 36000 7 False 60 LTSF
ETTh1 Electricity Transformer Temperature 14400 7 False 60 LTSF
ETTh2 Electricity Transformer Temperature 14400 7 False 60 LTSF
ETTm1 Electricity Transformer Temperature 57600 7 False 15 LTSF
ETTm2 Electricity Transformer Temperature 57600 7 False 15 LTSF
Electricity Electricity Consumption 26304 321 False 60 LTSF
ExchangeRate Exchange Rate 7588 8 False 1440 LTSF
Illness Ilness Data 966 7 False 10080 LTSF
Traffic Road Occupancy Rates 17544 862 False 60 LTSF
Weather Weather 52696 21 False 10 LTSF

大规模数据集

🏷️Name 🌐Domain 📏Length 📊Time Series Count 🔄Graph ⏱️Freq. (m) 🎯Task
CA Traffic Flow 35040 8600 True 15 Large Scale
GBA Traffic Flow 35040 2352 True 15 Large Scale
GLA Traffic Flow 35040 3834 True 15 Large Scale
SD Traffic Flow 35040 716 True 15 Large Scale

📉 主要结果

请参阅论文 多变量时间序列预测进展探索:全面基准评测和异质性分析

贡献者 ✨

感谢这些优秀的贡献者们 (表情符号指南):

S22
S22

🚧 💻 🐛
blisky-li
blisky-li

💻
LMissher
LMissher

💻 🐛
CNStark
CNStark

🚇
Azusa
Azusa

🐛
Yannick Wölker
Yannick Wölker

🐛
hlhang9527
hlhang9527

🐛
Chengqing Yu
Chengqing Yu

💻
Reborn14
Reborn14

📖 💻
TensorPulse
TensorPulse

🐛
superarthurlx
superarthurlx

💻 🐛
Yisong Fu
Yisong Fu

💻
Xubin
Xubin

📖
DU YIFAN
DU YIFAN

💻

此项目遵循 all-contributors 规范。欢迎任何形式的贡献!

Star History

Star History Chart

🔗 致谢

BasicTS 是基于 EasyTorch 开发的,这是一个易于使用且功能强大的开源神经网络训练框架。