THUML 团队开源的时间序列深度学习工具箱

TSLib 小白零基础上手教程(一步一步跑通,零代码门槛)

https://github.com/thuml/Time-Series-Library这是清华THUML团队开源的时间序列深度学习工具箱 ,不用手写复杂模型,直接跑长短时预测、缺失值填补、异常检测、时序分类 5大核心任务,内置TimesNet、iTransformer、Mamba等SOTA模型,小白跟着复制命令就能用。


一、前置准备(必做,3个基础工具)

先装3个软件,全程点下一步即可:

  1. Git:下载代码 → https://git-scm.com/
  2. Anaconda:管理Python环境,避免冲突 → https://www.anaconda.com/
  3. GPU可选:有NVIDIA显卡更快,无显卡用CPU也能跑(只是慢一点)

二、第一步:下载代码 + 搭建环境

打开电脑CMD(Windows)终端(Mac/Linux)逐行复制命令运行

1. 克隆仓库到本地

bash 复制代码
# 下载代码
git clone https://github.com/thuml/Time-Series-Library.git
# 进入项目文件夹
cd Time-Series-Library

2. 创建专属Python环境(避坑核心)

bash 复制代码
# 创建环境(固定Python3.11,不兼容会报错)
conda create -n tslib python=3.11
# 激活环境(❗每次使用前必须先跑这行)
conda activate tslib

3. 安装依赖(分GPU/CPU,直接复制对应版本)

① 安装PyTorch
  • 有NVIDIA GPU(CUDA12.1)
bash 复制代码
pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cu121
  • 无GPU(CPU版)
bash 复制代码
pip install torch==2.5.1
② 安装剩余依赖
bash 复制代码
pip install -r requirements.txt
③ (可选)Mamba模型(仅Linux需要,Windows直接跳过)
bash 复制代码
pip install https://github.com/state-spaces/mamba/releases/download/v2.2.6.post3/mamba_ssm-2.2.6.post3+cu12torch2.5cxx11abiFALSE-cp311-cp311-linux_x86_64.whl

三、第二步:准备数据(放对位置=成功一半)

不用自己洗数据,仓库提供预处理好的数据集:

  1. 下载数据
  2. 关键放置
    解压后,把所有数据文件夹直接放到项目根目录的 dataset 文件夹里
    • 正确路径:Time-Series-Library/dataset/ETT-small
    • 没有dataset文件夹,自己新建一个

四、第三步:小白一键测试(5大任务跑通)

激活环境后,逐行复制下面命令,每个任务只跑1轮,超快验证环境:

1. 长时序预测

bash 复制代码
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

2. 短时序预测

bash 复制代码
python -u run.py --task_name long_term_forecast --is_training 1 --root_path ./dataset/ETT-small/ --data_path ETTh1.csv --model_id test_short --model TimesNet --data ETTh1 --features M --seq_len 24 --label_len 12 --pred_len 24 --e_layers 2 --d_layers 1 --d_model 16 --d_ff 32 --enc_in 7 --dec_in 7 --c_out 7 --top_k 5 --train_epochs 1 --num_workers 2

3. 缺失值填补

bash 复制代码
python -u run.py --task_name imputation --is_training 1 --root_path ./dataset/ETT-small/ --data_path ETTh1.csv --model_id test_imp --model TimesNet --data ETTh1 --features M --seq_len 96 --e_layers 2 --d_layers 1 --d_model 16 --d_ff 32 --enc_in 7 --dec_in 7 --c_out 7 --top_k 3 --train_epochs 1 --num_workers 2 --label_len 0 --pred_len 0 --mask_rate 0.125 --learning_rate 0.001

4. 异常检测

bash 复制代码
python -u run.py --task_name anomaly_detection --is_training 1 --root_path ./dataset/PSM --model_id test_ad --model TimesNet --data PSM --features M --seq_len 100 --pred_len 0 --d_model 64 --d_ff 64 --e_layers 2 --enc_in 25 --c_out 25 --anomaly_ratio 1.0 --top_k 3 --train_epochs 1 --batch_size 128 --num_workers 2

5. 时序分类

bash 复制代码
python -u run.py --task_name classification --is_training 1 --root_path ./dataset/Heartbeat/ --model_id Heartbeat --model TimesNet --data UEA --e_layers 2 --d_layers 1 --factor 3 --d_model 64 --d_ff 128 --top_k 3 --train_epochs 1 --batch_size 16 --learning_rate 0.001 --num_workers 0

成功标志 :终端输出loss/acc数值,最后显示Experiment done


五、第四步:一键复现SOTA(用官方脚本)

不想敲长命令?直接运行仓库自带脚本,复现论文效果:

bash 复制代码
# 长时序预测(TimesNet+ETTh1)
bash ./scripts/long_term_forecast/ETT_script/TimesNet_ETTh1.sh

# 异常检测(TimesNet+PSM)
bash ./scripts/anomaly_detection/PSM/TimesNet.sh

Windows用户:用Git Bash 运行,把bash替换为sh即可。


六、小白必避坑(90%的人都踩过)

  1. 环境未激活 :每次使用前必须跑conda activate tslib
  2. 数据找不到 :严格放在./dataset目录下,别放错层级
  3. GPU报错:CUDA不兼容,直接换CPU版PyTorch
  4. Windows跑脚本失败:用Git Bash,别用系统CMD
  5. Mamba安装失败:Windows跳过,不影响基础任务

七、简单自定义(不改代码,只换3个参数)

不用懂深度学习,改命令里3个参数就能换模型/任务:

  1. --model:换模型(TimesNet/iTransformer/DLinear)
  2. --task_name:换任务(long_term_forecast/imputation/anomaly_detection)
  3. --data_path:换数据集(ETTh1.csv/ETTh2.csv/ETTm1.csv)

示例:长预测换iTransformer模型

bash 复制代码
python -u run.py --task_name long_term_forecast --is_training 1 --root_path ./dataset/ETT-small/ --data_path ETTh1.csv --model_id test_it --model iTransformer --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

八、总结

TSLib小白上手核心流程:克隆代码→装环境→放数据→一键运行,不用懂复杂原理,就能直接用时间序列SOTA模型做任务。

相关推荐
ZhengEnCi15 分钟前
05-自注意力机制详解 🧠
人工智能·pytorch·深度学习
前端程序媛-Tian30 分钟前
前端 AI 提效实战:从 0 到 1 打造团队专属 AI 代码评审工具
前端·人工智能·ai
weixin_4171970536 分钟前
DeepSeek V4绑定华为:一场飞行中换引擎的国产算力革命
人工智能·华为
翼龙云_cloud1 小时前
阿里云代理商:阿里云深度适配DeepSeek V4让中小企业 AI零门槛上云
人工智能·阿里云·云计算·ai智能体·deepseek v4
MATLAB代码顾问1 小时前
DeepSeek R1:国产开源推理大模型的崛起与实践
人工智能
__Wedream__1 小时前
ICMR2024 | 当对比学习遇上知识蒸馏:轻量超分模型压缩新框架
人工智能·深度学习·计算机视觉·知识蒸馏·超分辨率重建·对比学习
风吹落叶花飘荡1 小时前
Hermes-Agent:开源自主智能体的范式革命
开源
研究点啥好呢1 小时前
专为求职者开发的“面馆”!!!摆脱面试焦虑!!!
python·面试·开源·reactjs·求职招聘·fastapi
aneasystone本尊1 小时前
OpenClaw 快速入门:从安装到第一次对话
人工智能
aneasystone本尊1 小时前
OpenClaw 接入第一个通道:Telegram
人工智能