Time-Series-Library README

The project's README from github.com/thuml/Time-Series-Library. As one markdown file: README.md.

Time Series Library (TSLib)

TSLib is an open-source library for deep learning researchers, especially for deep time series analysis.

中文文档:README_zh.md

We provide a neat code base to evaluate advanced deep time series models or develop your model, which covers five mainstream tasks: long- and short-term forecasting, imputation, anomaly detection, and classification.

:triangular_flag_on_post:News (2026.04) Due to the limited bandwidth of the current maintainers, we will not be actively adding new features to this library. Since the library was originally released three years ago, many of its benchmarks may no longer be meaningful for evaluating the effectiveness or progress of current research. However, the baseline implementations remain correct. We therefore recommend seeking out newer benchmarks.

:triangular_flag_on_post:News (2025.12) Many thanks to the great work from ailuntz, which provides an updated requirements and docker deployment, as well as a well-organized document. This is quite meaningful to this project and beginners.

:triangular_flag_on_post:News (2025.11) Considering the rapid development of Large Time Series Models (LTSMs), we have newly added a [zero-shot forecasting] feature in TSLib. You can try this script to evaluate LTSMs.

:triangular_flag_on_post:News (2025.10) Given the recent confusion among researchers regarding minor improvements on standard benchmarks, we propose the [Accuracy Law] to characterize the objectives of deep time series forecasting tasks, which can be used to identify saturated datasets.

:triangular_flag_on_post:News (2024.10) We have included [TimeXer], which defined a practical forecasting paradigm: Forecasting with Exogenous Variables. Considering both practicability and computation efficiency, we believe the new forecasting paradigm defined in TimeXer can be the "right" task for future research.

:triangular_flag_on_post:News (2024.10) Our lab has open-sourced [OpenLTM], which provides a distinct pretrain-finetuning paradigm compared to TSLib. If you are interested in Large Time Series Models, you may find this repository helpful.

:triangular_flag_on_post:News (2024.07) We wrote a comprehensive survey of [Deep Time Series Models] with a rigorous benchmark based on TSLib. In this paper, we summarized the design principles of current time series models supported by insightful experiments, hoping to be helpful to future research.

:triangular_flag_on_post:News (2024.04) Many thanks for the great work from frecklebars. The famous sequential model Mamba has been included in our library. See this file, where you need to install mamba_ssm with pip at first.

:triangular_flag_on_post:News (2024.03) Given the inconsistent look-back length of various papers, we split the long-term forecasting in the leaderboard into two categories: Look-Back-96 and Look-Back-Searching. We recommend researchers read TimeMixer, which includes both look-back length settings in experiments for scientific rigor.

:triangular_flag_on_post:News (2023.10) We add an implementation to iTransformer, which is the state-of-the-art model for long-term forecasting. The official code and complete scripts of iTransformer can be found here.

:triangular_flag_on_post:News (2023.09) We added a detailed tutorial for TimesNet and this library, which is quite friendly to beginners of deep time series analysis.

:triangular_flag_on_post:News (2023.02) We release the TSlib as a comprehensive benchmark and code base for time series models, which is extended from our previous GitHub repository Autoformer.

Leaderboard for Time Series Analysis

Till March 2024, the top three models for five different tasks are:

Model
Ranking
Long-term
Forecasting
Look-Back-96
Long-term
Forecasting
Look-Back-Searching
Short-term
Forecasting
Imputation Classification Anomaly
Detection
🥇 1st TimeXer TimeMixer TimesNet TimesNet TimesNet TimesNet
🥈 2nd iTransformer PatchTST Non-stationary
Transformer
Non-stationary
Transformer
Non-stationary
Transformer
FEDformer
🥉 3rd TimeMixer DLinear FEDformer Autoformer Informer Autoformer

Note: We will keep updating this leaderboard. If you have proposed advanced and awesome models, you can send us your paper/code link or raise a pull request. We will add them to this repo and update the leaderboard as soon as possible.

Compared models of this leaderboard. ☑ means that their codes have already been included in this repo.

See our latest paper [TimesNet] for the comprehensive benchmark. We will release a real-time updated online version soon.

Newly added baselines. We will add them to the leaderboard after a comprehensive evaluation.

Newly added Large Time Series Models. This library also supports the zero-shot evaluation of the following LTSMs.

Getting Started

Prepare Data

You can obtain the well-preprocessed datasets from [Google Drive], [Baidu Drive] or [Hugging Face]. Then place the downloaded data in the folder ./dataset.

Installation

  1. Clone this repository.

    git clone https://github.com/thuml/Time-Series-Library.git
    cd Time-Series-Library
    
  2. Create a new Conda environment.

    conda create -n tslib python=3.11
    conda activate tslib
    
  3. Install Core Dependencies

    ⚠️ CUDA Compatibility Notice The torch prebuilt package is CUDA-version specific. (See https://pytorch.org/get-started/previous-versions/) Please make sure to install the package that matches your local CUDA version (e.g., cu118 or cu121). Recommended: torch==2.5.1

    pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cu121
    
    pip install -r requirements.txt
    
  4. Install Dependencies for Mamba Model (Required for Time-Series-Library/models/Mamba.py)

    ⚠️ Linux only ⚠️ CUDA Compatibility Notice The prebuilt Mamba wheel is CUDA-version specific. Please make sure to install the wheel that matches your local CUDA version (e.g., cu11 or cu12). Installing a mismatched version may result in runtime errors or import failures.

    Example for CUDA 12:

    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
    
  5. Install Dependencies for Moirai Model (Required for Time-Series-Library/models/Moirai.py)

    pip install uni2ts --no-deps
    

Docker Deployment

# Build and start the Docker container in detached mode
docker compose -f 'Time-Series-Library/docker-compose.yml' up -d --build

# Download / place the dataset into a newly created folder ./dataset at the repository root
mkdir -p dataset  # create the dataset directory

# Copy the local dataset into the container at /workspace/dataset
docker cp ./dataset tslib:/workspace/dataset

# Enter the running container to continue training / evaluation
docker exec -it tslib bash

# Switch to the workspace directory inside the container
cd /workspace

# Run zero-shot forecasting with the pre-trained Moirai model
python -u run.py \
  --task_name zero_shot_forecast \   # task type: zero-shot forecasting
  --is_training 0 \                  # 0 = inference only (no training)
  --root_path ./dataset/ETT-small/ \ # root directory of the dataset
  --data_path ETTh1.csv \            # dataset file name
  --model_id ETTh1_512_96 \          # experiment/model identifier
  --model Moirai \                   # model name (TimesFM / Moirai)
  --data ETTh1 \                     # dataset name
  --features M \                     # multivariate forecasting
  --seq_len 512 \                    # input sequence length
  --pred_le

Time-Series-Library (thuml/Time-Series-Library)

Searching Database…

Что это такое?TSLib — это open-source библиотека на Python для исследователей в области глубокого обучения, которые работают с временными рядами: аккуратная кодовая база, чтобы оценивать продвинутые глубокие модели временных рядов или разрабатывать свои собственные. У проекта около 13 000 звёзд на GitHub.
Это библиотека, которую я импортирую в свой код, или набор экспериментов, которые я запускаю?Это исследовательская кодовая база, которую запускают, а не ставят через pip: реализации моделей плюс скрипт run.py, который обучает и оценивает их на стандартных датасетах. В основном вы запускаете эксперименты, а не вызываете API.
Как её запустить?Склонируйте репозиторий, создайте окружение Conda и установите основные зависимости, затем скачайте предобработанные датасеты (с Google Drive, Baidu Drive или Hugging Face) в папку ./dataset и запускайте эксперименты через run.py. В качестве альтернативы прилагается настройка через Docker Compose.
Есть ли подводные камни при установке, о которых стоит знать?Да: готовый пакет torch должен совпадать с вашей локальной версией CUDA (например cu118 или cu121; рекомендуется torch 2.5.1), а дополнительные зависимости Mamba работают только под Linux с wheels под конкретную версию CUDA, поэтому несовпадения приводят к ошибкам при импорте или во время выполнения.
Что такое Accuracy Law?Это принцип, который авторы предложили в октябре 2025 года, чтобы описать цели задач глубокого прогнозирования временных рядов; он помогает выявлять насыщенные датасеты, где небольшой прирост на бенчмарках больше не означает реального прогресса.
Зачем создали эту библиотеку?Она вышла в феврале 2023 года как исчерпывающий бенчмарк и кодовая база для моделей временных рядов, расширяющая предыдущий репозиторий авторов Autoformer, чтобы исследователи могли сравнивать модели в одном аккуратном окружении.
Что такое TimesNet и почему он постоянно возглавляет таблицу результатов?TimesNet — это модель авторов с ICLR 2023 для универсального анализа временных рядов, которая моделирует двумерные временные вариации. В таблице лидеров из README она занимает первое место в краткосрочном прогнозировании, заполнении пропусков, классификации и обнаружении аномалий.
Есть ли что-то для новичков?Да, авторы опубликовали подробный туториал по TimesNet и библиотеке (сентябрь 2023 года), который сами описывают как дружелюбный к новичкам в глубоком анализе временных рядов.
Creator
thuml
Size
78.4 MB
Stars
13K
Updated
CommitApr 18
Age
3y
Commits · 90 Days