TempusBench
收藏资源简介:
TempusBench是由Simulacrum团队开发的一个开源时间序列预测评估框架,旨在解决现有评估框架的四大核心问题。该数据集包含未包含在现有TSFM预训练语料库中的新时间序列数据,覆盖能源、交通、气候等10个领域,具有严格的训练/测试数据隔离机制。其创新性地设计了基于平稳性、季节性和数据质量等统计特性的基准任务类型,并提供了标准化超参数调优流程。该框架通过TensorBoard可视化界面,为研究者和从业者提供了模型性能的直观分析工具,主要应用于时间序列预测模型的公平比较和能力评估。
TempusBench is an open-source time series forecasting evaluation framework developed by the Simulacrum team, which aims to address four core issues of existing evaluation frameworks. This dataset includes novel time series data not covered in current TSFM pre-training corpora, covering 10 domains such as energy, transportation and climate, and features a strict train/test data isolation mechanism. It innovatively designs benchmark task types based on statistical properties including stationarity, seasonality and data quality, and provides a standardized hyperparameter tuning workflow. This framework offers intuitive model performance analysis tools for researchers and practitioners via the TensorBoard visualization interface, and is mainly applied to the fair comparison and capability evaluation of time series forecasting models.
TempusBench 数据集概述
数据集基本信息
- 数据集名称: Time Series Forecasting Benchmarking Pipeline (TempusBench)
- 主要用途: 为时间序列预测模型提供一个统一的基准测试框架。
- 核心功能: 评估包括传统统计模型和现代基础模型在内的多种时间序列预测模型的性能。
支持的时间序列任务
- 单变量时间序列任务: 25个,存放于
tempus_bench/tasks/univariate/目录下。- 示例:
chickenpox_dense_univariate,coinbase_days_univariate。
- 示例:
- 多变量时间序列任务: 23个,存放于
tempus_bench/tasks/multivariate/目录下。- 示例:
baggage_100_multivariate,madrid_transport_multivariate。
- 示例:
支持的预测模型
传统模型
- 统计模型: ARIMA, Theta, Seasonal Naive, Exponential Smoothing, Croston Classic。
- 机器学习模型: XGBoost, Random Forest, SVR。
- 深度学习模型: LSTM, DeepAR。
- 集成模型: TabPFN。
基础模型
- Chronos (亚马逊), LagLlama, Moirai (微软), TimesFM (谷歌), Tiny Time Mixer, Toto, Moment。
框架关键特性
- 自动模型发现: 框架自动从
models目录发现可用模型,所有模型均能无缝处理单变量和多变量数据集。 - 统一模型接口: 所有模型通过基类(
BaseModel)实现一致的接口。 - 全面的数据处理: 自动处理多种任务格式、灵活的窗口划分、自动频率检测、数据归一化和滚动窗口评估。
- 灵活的配置系统: 通过配置文件支持模型特定参数、任务配置、评估设置和系统配置。
- 隔离执行: 每个模型在独立的 Conda 环境中运行,以避免依赖冲突。
- 超参数调优: 自动优化模型参数。
- 确定性及随机性预测: 根据任务类型自动路由。
评估指标与聚合
- 点预测指标: 平均绝对误差 (MAE), 均方根误差 (RMSE), 平均绝对百分比误差 (MAPE), 对称平均绝对百分比误差 (SMAPE)。
- 概率预测指标: 连续分级概率评分 (CRPS), 区间评分。
- 性能聚合器:
- 胜率: 计算每个模型的平均胜率。
- 技能评分: 计算每个模型相对于基线模型(默认为
seasonal_naive)的技能评分。
项目结构与安装
- 项目结构: 包含
config/,tasks/,metrics/,models/,pipeline/,aggregators/,utils/等核心模块目录。 - 安装要求: Python 3.8+ 和 Conda。所有模型必须与 Python 3.0 或更高版本(Python 3.x 系列)兼容。
- 安装步骤:
- 克隆代码库。
- 运行安装脚本
source install.sh。
使用方法
- 命令行运行:
python -m tempus_bench.run_benchmark。 - Python API: 使用
BenchmarkRunner类初始化和运行基准测试。 - 运行单个模型: 使用
ModelExecutor执行特定模型和超参数。 - 添加新模型: 在
tempus_bench/models/下创建模型目录,实现BaseModel类,并配置settings.yaml和benchmark.yaml。




