TFB:面向时间序列预测方法的全面公平基准测试
我们已创建了一个时间序列预测排行榜,可通过点击 https://decisionintelligence.github.io/OpenTS/ 访问。
我们正在进一步优化代码,欢迎任何修改建议。
目录
简介
TFB是为时间序列预测研究人员设计的开源库。
我们提供了一个简洁的代码库,用于对时间序列预测模型进行端到端评估,在各种评估策略和指标下比较它们与基准算法的性能。
下图提供了TFB流程的直观概览。
下表直观展示了TFB的关键特性与其他时间序列预测库的对比。
快速开始
安装
从PyPI安装
给定一个Python环境(注意:本项目在Python 3.8下完全测试通过),使用以下命令安装依赖:
pip install -r requirements.txt
从Docker安装
我们还提供了一个Dockerfile。要使用此设置,您需要安装Docker服务。您可以从Docker网站获取。
docker build . -t tfb:latest
docker run -it -v $(pwd)/:/app/ tfb:latest bash
数据准备
您可以从Google Drive获取预处理好的数据集。然后将下载的数据放在./dataset
文件夹下。
训练和评估模型
我们在./scripts/multivariate_forecast
和./scripts/univariate_forecast
文件夹下提供了所有基准测试的实验脚本。例如,您可以按以下方式复现实验结果:
sh ./scripts/multivariate_forecast/ILI_script/DLinear.sh
开发自己的方法的步骤
我们提供了关于如何开发自己的方法的教程,您可以点击这里查看。
在自己的时间序列上评估的步骤
我们提供了关于如何在自己的时间序列上进行评估的教程,您可以点击这里查看。
常见问题
如何使用PyCharm运行代码?
在PyCharm下运行时,请转义双引号,删除空格,并删除开头和结尾的单引号。
例如:'{"d_ff": 512, "d_model": 256, "horizon": 24}' ---> {\"d_ff\":512,\"d_model\":256,\"horizon\":24}
--config-path "rolling_forecast_config.json" --data-name-list "ILI.csv" --strategy-args {\"horizon\":24} --model-name "time_series_library.DLinear" --model-hyper-params {\"batch_size\":16,\"d_ff\":512,\"d_model\":256,\"lr\":0.01,\"horizon\":24,\"seq_len\":104} --adapter "transformer_adapter" --gpus 0 --num-workers 1 --timeout 60000 --save-path "ILI/DLinear"
引用
如果您觉得这个仓库有用,请引用我们的论文。
@article{qiu2024tfb,
title = {TFB: Towards Comprehensive and Fair Benchmarking of Time Series Forecasting Methods},
author = {Xiangfei Qiu and Jilin Hu and Lekui Zhou and Xingjian Wu and Junyang Du and Buang Zhang and Chenjuan Guo and Aoying Zhou and Christian S. Jensen and Zhenli Sheng and Bin Yang},
journal = {Proc. {VLDB} Endow.},
volume = {17},
number = {9},
pages = {2363--2377},
year = {2024}
}
致谢
该库的开发得到了华为云的支持,我们在此感谢他们的贡献和帮助。
联系方式
如果您有任何问题或建议,请随时联系:
- 邱相飞 (xfqiu@stu.ecnu.edu.cn)
- 吴星健 (xjwu@stu.ecnu.edu.cn)
或在Issues中描述。