Prophet 用于为具有多个季节性且具有线性或非线性增长的时间序列数据生成高质量预测的工具

先知:自动预测程序

PROPHET是一个基于加性模型预测时间序列数据的过程,其中非线性趋势符合年度、每周和每日季节性,加上假日影响。它最适用于具有强烈季节性影响的时间序列和几个季节的历史数据。Prophet对丢失的数据和趋势中的变化很健壮,通常能很好地处理离群值

先知是open source software由Facebook‘s发布Core Data Science team该软件可在以下网址下载CRANPyPI

重要链接

在R中安装

先知是一个CRAN package所以你可以使用install.packages

install.packages('prophet')

安装后,您可以get started!

实验后端-cmdstanr

您还可以选择名为Stan Backend的试验性替代方案cmdstanr一旦您安装了prophet,请按照以下说明使用cmdstanr而不是rstan作为后端:

# R
# We recommend running this is a fresh R session or restarting your current session
install.packages(c("cmdstanr", "posterior"), repos = c("https://mc-stan.org/r-packages/", getOption("repos")))

# If you haven't installed cmdstan before, run:
cmdstanr::install_cmdstan()
# Otherwise, you can point cmdstanr to your cmdstan path:
cmdstanr::set_cmdstan_path(path = <your existing cmdstan>)

# Set the R_STAN_BACKEND environment variable
Sys.setenv(R_STAN_BACKEND = "CMDSTANR")

窗口

在Windows上,R需要编译器,因此您需要follow the instructions由以下人员提供rstan关键步骤是安装Rtools在尝试安装软件包之前

如果您有自定义的Stan编译器设置,请从源文件安装,而不是从cran二进制文件安装

在Python中安装

Prophet在PyPI上,所以您可以使用pip来安装它。从v0.6开始,不再支持Python2。从v1.0开始,pyi上的包名是“prophet”;在v1.0之前,它是“fbprophet”。

# Install pystan with pip before using pip to install prophet
# pystan>=3.0 is currently not supported
pip install pystan==2.19.1.1

pip install prophet

Prophet的默认依赖项是pystanPyStan有自己的installation instructions先用pip安装pystan,然后再使用pip安装prophet

实验后端-cmdstanpy

您还可以选择一个(更具实验性的)替代Stan后端,名为cmdstanpy它需要CmdStan命令行界面,并且您必须指定环境变量STAN_BACKEND指向它,例如:

# bash
$ CMDSTAN=/tmp/cmdstan-2.22.1 STAN_BACKEND=CMDSTANPY pip install prophet

请注意,CMDSTAN变量直接与cmdstanpy模块,如果您的CmdStan二进制文件位于$PATH

还可以安装带有两个后端的Prophet:

# bash
$ CMDSTAN=/tmp/cmdstan-2.22.1 STAN_BACKEND=PYSTAN,CMDSTANPY pip install prophet

安装后,您可以get started!

如果升级系统上安装的PyStan版本,可能需要重新安装Premiet(see here)

python

使用conda install gcc让GCC下台。安装Prophet的最简单方法是通过Conda-Forge:conda install -c conda-forge prophet

窗口

在Windows上,PyStan需要编译器,因此您需要follow the instructions在Windows中安装Prophet的最简单方法是在python中安装

Linux操作系统

确保安装了编译器(GCC、g++、build-Essential)和Python开发工具(python-dev、python3-dev)。在Red Hat系统中,安装软件包gcc64和gcc64-c++。如果您使用的是虚拟机,请注意安装PROPEET至少需要4 GB内存,使用PROPEET至少需要2 GB内存

更改日志

版本1.0(2021.03.28)

  • Python包名称从fbprophet更改为prophet
  • 修复了R Windows构建问题,以在CRAN上恢复最新版本
  • 改进了序列化、假期和R时区处理
  • 打印方面的改进

0.7版(2020.09.05)

  • 内置json序列化
  • 增加了“持平”增长选项
  • 与以下相关的错误修复holidayspandas
  • 打印方面的改进
  • 交叉验证方面的改进,例如并行化和直接指定截止时间

版本0.6(2020.03.03)

  • 修复与上游更改相关的错误holidayspandas包裹
  • 在第一次使用时编译模型,而不是在安装期间(以符合CRAN策略)
  • cmdstanpy后端现已在Python中提供
  • 不再支持Python 2

版本0.5(2019.05.14)

  • 条件季节性
  • 改进的交叉验证估计
  • Python中的绘图
  • 错误修复

版本0.4(2018.12.18)

  • 添加了假日功能
  • 错误修复

0.3版(2018.06.01)

  • 乘性季节性
  • 交叉验证错误度量和可视化
  • 用于设置潜在变化点范围的参数
  • 两种趋势类型的统一STAN模型
  • 改善了分日数据的未来趋势不确定性
  • 错误修复

版本0.2.1(2017.11.08)

  • 错误修复

0.2版(2017.09.02)

  • 利用分日数据进行预测
  • 每日季节性和自定义季节性
  • 额外回归变量
  • 获得后验预测样本
  • 交叉验证函数
  • 饱和最小值
  • 错误修复

版本0.1.1(2017.04.17)

  • 错误修复
  • 用于检测年度和每周季节性的新选项(现在是默认设置)

版本0.1(2017.02.23)

  • 初始版本

许可证

Prophet是根据MIT license