English | [简体中文](https://github.com/PaddlePaddle/PaddleTS/blob/release_v1.1/./README_en.md
PaddleTS is a user-friendly Python library for deep time series modeling based on the PaddlePaddle deep learning framework. It focuses on industry-leading deep models, aiming to provide domain experts and industry users with scalable time series modeling capabilities and a convenient user experience. The main features of PaddleTS include:
- Designing a unified data structure to express diverse time series data, supporting single-target and multi-target variables, and multiple types of covariates
- Encapsulating basic model functionalities such as data loading, callback settings, loss functions, training process control, and other common methods, helping developers focus on network structure itself during new model development
- Built-in industry-leading deep learning models, including time series prediction models like NBEATS, NHiTS, LSTNet, TCN, Transformer, DeepAR, Informer, time series representation models like TS2Vec and CoST, as well as time series anomaly detection models like Autoencoder, VAE, and AnomalyTransformer
- Built-in diverse data transformation operators, supporting data processing and transformation, including missing value imputation, anomaly handling, normalization, and time-related covariate extraction
- Built-in classic data analysis operators, helping developers easily implement data exploration, including data statistical information and data summary functions
- AutoTS for automatic model tuning, supporting multiple types of HPO (Hyper Parameter Optimization) algorithms, showing significant tuning effects on multiple models and datasets
- Automatic integration of third-party machine learning models and data transformation modules, supporting time series applications from libraries such as sklearn and pyod
- Support for running PaddlePaddle-based time series models on GPU devices
- Time series model ensemble learning capability
📣 Recent Updates
- 📚 "High-Precision Time Series Analysis Starriver Zero-Code Production Line Now Available", bringing together 3 major time series analysis scenario tasks, covering 11 cutting-edge time series models. High-precision multi-model fusion time series featured production line, automatically searching for the optimal model combination adaptive to different scenarios, improving time series prediction accuracy by about 20% and time series anomaly detection accuracy by 5% in real industrial application scenarios. Supports cloud-based and local service deployment and pure offline use. Live broadcast time: August 1 (Thursday) 19:00. Registration link: https://www.wjx.top/vm/YLz6DY6.aspx?udsid=146765
- [2024-06-27] 💥 PaddleX 3.0, the low-code development tool for PaddlePaddle, has been significantly updated!
- Rich model production lines: 68 high-quality PaddlePaddle models carefully selected, covering task scenarios such as image classification, object detection, image segmentation, OCR, text image layout analysis, and time series analysis;
- Low-code development paradigm: Supports full-process low-code development for single models and model production lines, provides Python API, and supports user-defined model chaining;
- Multi-hardware training and inference support: Supports model training and inference on various hardware including NVIDIA GPUs, Kunlun chips, Ascend, and Cambricon. For PaddleTS supported models, see [Model List](https://github.com/PaddlePaddle/PaddleTS/blob/release_v1.1/docs/hardware/supported_models.md
- Added time series classification capability
- Newly released 6 deep time series models. USAD (UnSupervised Anomaly Detection) and MTAD_GAT (Multivariate Time-series Anomaly Detection via Graph Attention Network) anomaly detection models, CNN and Inception Time time series classification models, SCINet (Sample Convolution and Interaction Network) and TFT (Temporal Fusion Transformer) time series prediction models
- Newly released Paddle Inference support, adapted for time series prediction and time series anomaly detection
- Added model interpretability capabilities. Including model-agnostic and model-specific interpretability
- Added support for representation-based clustering and classification
You can also refer to the Release Notes for a more detailed list of updates.
In the future, more advanced features will be further released, including but not limited to:
- More time series models
- Scenario-based Pipeline, supporting end-to-end real scenario solutions
About PaddleTS
Specifically, the PaddleTS time series library includes the following sub-modules:
模块 | 简述 |
---|---|
paddlets.datasets | 时序数据模块,统一的时序数据结构和预定义的数据处理方法 |
paddlets.autots | 自动超参寻优 |
paddlets.transform | 数据转换模块,提供数据预处理和特征工程相关能力 |
paddlets.models.forecasting | 时序模型模块,基于飞桨深度学习框架PaddlePaddle的时序预测模型 |
paddlets.models.representation | 时序模型模块,基于飞桨深度学习框架PaddlePaddle的时序表征模型 |
paddlets.models.anomaly | 时序模型模块,基于飞桨深度学习框架PaddlePaddle的时序异常检测模型 |
paddlets.models.classify | 时序模型模块,基于飞桨深度学习框架PaddlePaddle的时序分类模型 |
paddlets.pipeline | 建模任务流模块,支持特征工程、模型训练、模型评估的任务流实现 |
paddlets.metrics | 效果评估模块,提供多维度模型评估能力 |
paddlets.analysis | 数据分析模块,提供高效的时序特色数据分析能力 |
paddlets.ensemble | 时序集成学习模块,基于模型集成提供时序预测能力 |
paddlets.xai | 时序模型可解释性模块 |
paddlets.utils | 工具集模块,提供回测等基础功能 |
安装
前置条件
- python >= 3.7
- paddlepaddle >= 2.3
使用pip安装paddlets的命令如下:
pip install paddlets
更多安装方式请参考:环境安装
文档
社区
欢迎通过扫描下面的微信二维码加入PaddleTS开源社区,与PaddleTS维护者及社区成员随时进行技术讨论:
代码发布与贡献
我们非常感谢每一位代码贡献者。如果您发现任何Bug,请随时通过提交issue的方式告知我们。
如果您计划贡献涉及新功能、工具类函数、或者扩展PaddleTS的核心组件相关的代码,请您在提交代码之前先提交issue,并针对此次提交的功能与我们进行讨论。
如果在没有讨论的情况下直接发起的PR请求,可能会导致此次PR请求被拒绝。原因是对于您提交的PR涉及的模块,我们也许希望该模块朝着另一个不同的方向发展。
许可证
PaddleTS 使用Apache风格的许可证,可参考 LICENSE 文件。