sktime/pytorch-forecasting
Time series forecasting with PyTorch
解决的问题
PyTorch Forecasting 简化了最先进的深度学习架构在时间序列预测中的实现。它通过提供一个高级 API,处理时间序列数据的数据准备、训练和评估等繁琐方面,弥合了复杂的研究模型与实际部署之间的差距。
如何工作
基于 PyTorch Lightning 构建,该库提供了预测的结构化工作流程:
- 数据处理:专用的
TimeSeriesDataSet类管理变量转换、缺失值、随机子采样和多种历史长度。 - 模型架构:实现了多种先进的神经网络(如 Temporal Fusion Transformers、N-BEATS 和 PatchTST),这些模型针对实际应用进行了优化,并包含内置的可解释性功能。
- 训练与扩展:利用 PyTorch Lightning 自动在 CPU 和单个或多个 GPU 上扩展训练,并通过 TensorBoard 集成日志记录。
- 优化:与 Optuna 集成以进行超参数调优,并包含多时域时间序列指标以评估性能。
适用人群
该项目专为需要最大部署灵活性的专业人士以及需要合理默认值以快速上手神经网络预测的初学者设计。
主要亮点
- 多样化的模型库:包含高性能模型,如 Temporal Fusion Transformers (TFT)、N-BEATS、N-HiTS、DeepAR 和 PatchTST。
- 集成的数据流水线:简化了将 pandas DataFrames 转换为模型就绪的时间序列数据集的过程。
- 硬件无关性:通过 PyTorch Lightning 原生支持 CPU 和 GPU 训练。
- 可解释性:提供具有内置预测解释能力的模型。
相关
- 项目
- 项目
- 项目
- 项目
- 项目