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模型做任务。

相关推荐
奈落244 小时前
AI辅助的另一面:从2026年国际AI安全报告的“故障”清单到国内专家的可靠性短板,自主行动的Agent为什么更难及时干预
人工智能·安全·agent·本地部署·ai 办公
火山引擎开发者社区6 小时前
eMudhra 证书失陷:容器用户最容易忽略的镜像信任链漏洞
人工智能
LabVIEW开发7 小时前
LabVIEW 机载 DIAL:每秒万次甲烷测量
人工智能·labview·labview知识·labview功能·labview程序
1024奇点7 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
飞猫的边缘AI8 小时前
英特尔量子生意
人工智能·量子计算·边缘ai
深蓝AI8 小时前
桌面 Agent 缺的不是视觉:Vercel 开源 agent-desktop,用无障碍树 ref 替代截图坐标
人工智能·程序员
镜子AI8 小时前
镜子AI 技术复盘:三条自动化链路上的“停止条件“设计
运维·人工智能·自动化
向哆哆8 小时前
羊行为目标检测数据集:4类别、2,000张图像 | 目标检测
人工智能·yolo·目标检测·目标跟踪
如若1238 小时前
【论文复现】CoFailMed:从零复现医学图像分割的共享失败审计,含完整代码流程与科研绘图
人工智能·python
赛博守夜人9 小时前
AI安全攻防与治理之十六:对抗样本、恶意文件与多模态攻击,AI 内容安全检测的真实盲区
人工智能·安全