ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

【10分钟跑通】Time-Series-Library 时间序列预测:从克隆仓库到出第一张预测曲线的完整指南

2026/9/13 4:32:42 拓冰建站 浏览量
【10分钟跑通】Time-Series-Library 时间序列预测:从克隆仓库到出第一张预测曲线的完整指南 【10分钟跑通】Time-Series-Library 时间序列预测从克隆仓库到出第一张预测曲线的完整指南【免费下载链接】Time-Series-LibraryA Library for Advanced Deep Time Series Models for General Time Series Analysis.项目地址: https://gitcode.com/GitHub_Trending/ti/Time-Series-Library还在为搭时序深度学习环境反复踩坑Autoformer、TimesNet、PatchTST 这些 SOTA 模型散落在不同仓库里装完一个换一个参数还对不上本文带你用 10 分钟在 Time-Series-Library 上跑通第一次训练一套环境统一 6 大任务长/短时序预测、填补、分类、异常检测、零样本预测40 多个模型直接换名字就能跑跑不通的报错也有对应的修法。 先让它跑起来最小命令链Time-Series-Library 是一个统一的时间序列深度学习工具箱一个入口 run.py 按--task_name分发到 exp/ 下的任务管线模型集中在 models/数据加载在 data_provider/。你只要改参数不用碰代码。下面这条链路从克隆到出结果全程 4 步。# 1. 克隆仓库 git clone https://gitcode.com/GitHub_Trending/ti/Time-Series-Library cd Time-Series-Library # 2. 建独立环境官方用 Python 3.11 验证 conda create -n tslib python3.11 conda activate tslib # 3. 先装 torch版本和 CUDA 严格绑定推荐 2.5.1再装其余依赖 pip install torch2.5.1 --index-url https://download.pytorch.org/whl/cu121 pip install -r requirements.txt装好后跑一次 1 epoch 的最小训练验证环境无错官方 Quick Test 同款命令用轻量模型 DLinearGPU 上一两分钟完成# 4. 首次运行ETTh1 长时序预测1 个 epoch 快速验证 python -u run.py --task_name long_term_forecast --is_training 1 \ --root_path ./dataset/ETT-small/ --data_path ETTh1.csv \ --model_id test_long --model DLinear --data ETTh1 \ --features M --seq_len 96 --pred_len 96 \ --enc_in 7 --dec_in 7 --c_out 7 \ --train_epochs 1 --num_workers 2看到终端打印 MSE/MAE 指标、checkpoints/目录生成文件就算跑通了。想看到预测曲线换用 TimesNet 完整训练# 换模型即可参数与上方一致 --model TimesNet --e_layers 2 --d_layers 1 --d_model 16 --d_ff 32 --top_k 5训练完成后测试阶段会把预测值与真实值画成对比曲线类似下图官方教程 tutorial/result.png 中的示例 参数速查表run.py 里的参数不少第一次只需要盯住下面这些其余全部用默认值参数作用示例值--task_name选任务long_term_forecast/short_term_forecast/imputation/classification/anomaly_detection/zero_shot_forecastlong_term_forecast--is_training1训练测试0只推理1--model模型名对应 models/ 下同名文件TimesNet--root_path数据根目录注意结尾斜杠./dataset/ETT-small/--data_path具体数据文件名ETTh1.csv--data数据集名决定用哪个加载器ETTh1--featuresM多变量进多变量出S单变量进单变量出MS多变量进单变量出M--seq_len输入窗口长度即看过去多少步来预测96--label_len解码器起始已知序列长度Informer 系使用48--pred_len预测未来步数96--enc_in / --dec_in / --c_out输入/解码/输出通道数等于数据特征列数7--freq时间频率编码h小时、d天、w周、m月h--batch_size批大小显存不够时第一个调它32--train_epochs训练轮数10--d_model / --d_ff模型宽度和前馈宽度越大越准也越吃显存512/2048--model_id / --des实验命名决定 checkpoint 保存位置ETTh1_96_96依赖版本以 requirements.txt 为准numpy2.1.2、pandas2.3.3、scikit-learn1.7.2、matplotlib3.10.8torch 需单独先装推荐 2.5.1。️ 数据与任务怎么选数据放哪所有预处理数据统一放进仓库根目录的./dataset/下载渠道见 README.md 的 Prepare Data 一节。目录结构如下每行注释说明用途dataset/ ├── ETT-small/ # 电力变压器温度4 个子集 ETTh1/2、ETTm1/2小时/15分钟粒度 ├── Electricity/ # 电力负载862 个变量 ├── Traffic/ # 交通流量862 个传感器 ├── Weather/ # 气象站数据21 个指标 ├── Exchange/ # 汇率7 个国家 ├── ILI/ # 流感报告序列很短24~60 步 ├── M4/ # M4 竞赛 6 个子集专用于短时序预测 ├── UEA/ # 分类数据Heartbeat 等 10 个子集 └── PSM/ SMD/ SMAP/ SWaT/ MSL/ # 异常检测 5 个基准任务对照表选--task_name前先对号入座任务典型数据评估指标序列长度长时序预测ETT、Electricity、Traffic、WeatherMSE / MAE96~720短时序预测M4 六个子集SMAPE / MASE / OWA6~48数据填补ETT、Electricity、WeatherMSE / MAE96分类UEA 10 个子集Accuracy29~1751异常检测SMD、MSL、SMAP、SWaT、PSMPrecision / Recall / F1100官方教程 tutorial/TimesNet_tutorial.ipynb 里也有一张同样的任务-基准-指标速查表每个任务对应的实验逻辑在 exp/ 下比如长时序预测是 exp/exp_long_term_forecasting.py零样本评估是 exp/exp_zero_shot_forecasting.py。 跑不通的 4 种常见情况1. CUDA out of memory显存爆按顺序试这三招# 降批大小最直接 --batch_size 16 --d_model 128 --d_ff 256 # 开混合精度训练 --use_amp # 实在不行强制 CPU慢但能验证流程 --no_use_gpu2. 依赖装不上 / 版本冲突先装 torch 再装 requirements 的顺序不能反README 特意提醒 torch 预编译包与 CUDA 版本绑定# 确认 CUDA 版本后选对应 wheel 源cu118 / cu121 python -c import torch; print(torch.__version__, torch.version.cuda) pip install -r requirements.txt个别包冲突时按 requirements.txt 里的版本号逐个固定安装如pip install numpy2.1.2。3. FileNotFoundError找不到数据90% 是路径问题--root_path必须以/结尾且指向数据集根目录--data_path才是文件名# 正确写法根目录 文件名分开给 --root_path ./dataset/ETT-small/ --data_path ETTh1.csv4. 用现成脚本时 GPU 没生效scripts/ 下的脚本开头默认写了export CUDA_VISIBLE_DEVICESx先改成你的显卡编号再跑否则训练会慢得离谱。⚙️ 往上走一层自定义模型在 models/ 里照着 models/Transformer.py 写一个新文件类名对上模型名即可被--model直接调用再在 scripts/ 下放一份复现脚本。批量实验scripts/long_term_forecast/ETT_script/ 这类目录按数据集/模型组织一条命令复现论文配置例如# 复现 TimesNet 在 ETTh1 上 96/192/336/720 四档预测长度 bash ./scripts/long_term_forecast/ETT_script/TimesNet_ETTh1.sh模型组件复用注意力、卷积、频域算子都在 layers/ 里写新模型时优先复用而不是重写。 继续深入新手引导教程TimesNet 逐步训练可视化tutorial/TimesNet_tutorial.ipynb项目结构与架构说明从脚本层到数据层的完整阅读路径README.md 的 Inspect the project structure 一节实验指标实现utils/metrics.py数据加载与滑窗逻辑data_provider/data_loader.pyDocker 部署方式Dockerfile、docker-compose.yml跑通之后想提交新模型或改进管线先读一下 CONTRIBUTING.md 了解贡献流程。【免费下载链接】Time-Series-LibraryA Library for Advanced Deep Time Series Models for General Time Series Analysis.项目地址: https://gitcode.com/GitHub_Trending/ti/Time-Series-Library创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考