DeepSeek总结的Python时间序列预测包Nixtla StatsForecast
2026/5/2 14:19:24 网站建设 项目流程

来源:https://github.com/Nixtla/statsforecast

Nixtla

StatsForecast提供了一系列广泛使用的单变量时间序列预测模型,包括针对高性能优化的自动ARIMAETSCESTheta建模。它还包含了大量基准测试模型。

安装

您可以通过以下方式安装StatsForecast

pip install statsforecast

conda install-c conda-forge statsforecast

更多安装说明,请访问我们的安装指南。

快速开始

最小示例

fromstatsforecastimportStatsForecastfromstatsforecast.modelsimportAutoARIMAfromstatsforecast.utilsimportAirPassengersDF df=AirPassengersDF sf=StatsForecast(models=[AutoARIMA(season_length=12)],freq='ME',)sf.fit(df)sf.predict(h=12,level=[95])

快速入门指南快速指南

阅读此端到端演练了解最佳实践。

为什么选择 StatsForecast?

当前 Python 中的统计模型替代方案速度慢、不准确且可扩展性差。因此我们创建了一个可用于生产环境预测或作为基准的库。StatsForecast包含大量模型,可以高效地拟合数百万条时间序列。

特性

  • Python 中速度最快、最准确的AutoARIMAAutoETSAutoCESMSTLTheta实现。
  • 开箱即用地兼容 Spark、Dask 和 Ray。
  • 概率预测和置信区间。
  • 支持外生变量和静态协变量。
  • 异常检测。
  • 熟悉的 sklearn 语法:.fit.predict

亮点

  • 为 ARIMA 增加了外生变量预测区间的支持。
  • pmdarima20 倍
  • 比 R 语言快 1.5 倍。
  • 比 Prophet 快 500 倍。
  • statsmodels4 倍
  • 使用 ray 在30 分钟内处理1,000,000条序列。
  • 通过两行代码替换 FB-Prophet,获得更快的速度和更高的准确率。查看相关实验此处。
  • 5 分钟内1,000,000条序列上拟合10 个基准模型

缺少某些功能?请提出问题或通过 slack 联系我们。

示例和指南

📚 端到端演练:针对多条时间序列的模型训练、评估和选择

🔎 异常检测:使用样本内预测区间检测时间序列中的异常。

👩‍🔬 交叉验证:稳健的模型性能评估。

❄️ 多季节性:如何使用 MSTL 预测具有多季节性的数据。

🔌 预测需求峰值:电力负荷预测,用于检测每日峰值并降低电费。

📈 间歇需求:预测非零观测值很少的序列。

🌡️ 外生回归变量:如天气或价格。

模型

自动预测

自动预测工具会为一组时间序列搜索最佳参数并选择可能的最佳模型。这些工具对于大规模的单变量时间序列集合非常有用。

模型点预测概率预测样本内拟合值概率拟合值外生特征
AutoARIMA
AutoETS
AutoCES
AutoTheta
AutoMFLES
AutoTBATS

ARIMA 家族

这些模型利用时间序列中存在的自相关性。

模型点预测概率预测样本内拟合值概率拟合值外生特征
ARIMA
AutoRegressive

Theta 家族

对去季节化的时间序列拟合两条 Theta 线,使用不同的技术获取并组合这两条 Theta 线以生成最终预测。

模型点预测概率预测样本内拟合值概率拟合值外生特征
Theta
OptimizedTheta
DynamicTheta
DynamicOptimizedTheta

多季节性

适用于具有多于一个明显季节性的信号,对电力和日志等低频数据非常有用。

模型点预测概率预测样本内拟合值概率拟合值外生特征
MSTL若趋势预测器支持
MFLES
TBATS

GARCH 和 ARCH 模型

适用于建模随时间变化具有非恒定波动性的时间序列。ARCH 模型是 GARCH 的一个特例。

模型点预测概率预测样本内拟合值概率拟合值外生特征
GARCH
ARCH

基线模型

用于建立基线的经典模型。

模型点预测概率预测样本内拟合值概率拟合值外生特征
HistoricAverage
Naive
RandomWalkWithDrift
SeasonalNaive
WindowAverage
SeasonalWindowAverage

指数平滑

使用所有过去观测值的加权平均,其中权重随回溯期呈指数衰减。适用于具有明显趋势和/或季节性的数据。对于没有明显趋势或季节性的数据,请使用SimpleExponential家族。

模型点预测概率预测样本内拟合值概率拟合值外生特征
SimpleExponentialSmoothing
SimpleExponentialSmoothingOptimized
SeasonalExponentialSmoothing
SeasonalExponentialSmoothingOptimized
Holt
HoltWinters

稀疏或间歇需求

适用于非零观测值非常少的序列。

模型点预测概率预测样本内拟合值概率拟合值外生特征
ADIDA
CrostonClassic
CrostonOptimized
CrostonSBA
IMAPA
TSB

🔨 如何贡献

请参阅 CONTRIBUTING.md。

引用

@misc{garza2022statsforecast, author={Azul Garza, Max Mergenthaler Canseco, Cristian Challú, Kin G. Olivares}, title = {{StatsForecast}: Lightning fast forecasting with statistical and econometric models}, year={2022}, howpublished={{PyCon} Salt Lake City, Utah, US 2022}, url={https://github.com/Nixtla/statsforecast} }

贡献者 ✨

感谢这些杰出的人们(表情符号说明):

本项目遵循 all-contributors 规范。欢迎任何形式的贡献!

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询