报错详情
在构建Prophet模型进行时间序列预测时,python报错,如下图所示:
model = Prophet()
model.fit(df1)
Error:
14:55:05 - cmdstanpy - INFO - Chain [1] start processing
14:55:06 - cmdstanpy - INFO - Chain [1] done processing
14:55:06 - cmdstanpy - ERROR - Chain [1] error: terminated by signal 3221225657
Optimization terminated abnormally. Falling back to Newton.
14:55:06 - cmdstanpy - INFO - Chain [1] start processing
14:55:06 - cmdstanpy - INFO - Chain [1] done processing
14:55:06 - cmdstanpy - ERROR - Chain [1] error: terminated by signal 3221225657
.....
RuntimeError: Error during optimization:
主要从以下几个方面解决:
1.安装cmdstanpy
I have got mine working.
I installed the cmdstanpy package and imported by using the following...
import cmdstanpy
cmdstanpy.install_cmdstan()
cmdstanpy.install_cmdstan(compiler=True) # only valid on Windows
2.安装cmdstan
有几种方法可以安装 CmdStan。根据您的操作系统和专业水平,您可以:
使用 conda 包管理系统安装 CmdStan 的预构建版本以及所需的依赖项。推荐给 Windows 用户。
conda安装方式
使用 conda,您可以从 conda-forge 通道安装 CmdStan。这将安装 CmdStan 的预构建版本以及所需的依赖项(即 C++ 编译器、Make 版本和所需的库),详见下文 [源代码安装]。conda 安装经过精心设计,因此可以无缝地使用 R 或 Python 绑定到 CmdStan。此外,它还提供了从任何位置激活 CmdStan 生成文件的命令。cmdstan_model
注意:这要求您的计算机上已安装 conda。您可以安装 miniconda,这是一个免费的、最小的 conda 安装程序,也可以获得完整的 Anaconda 系统,该系统为 MacOS 和 Windows 用户提供图形安装程序向导。
建议在新的 conda 环境中安装 CmdStan:
conda create -n stan -c conda-forge cmdstan
此命令创建一个名为的新 conda 环境,并下载并安装包以及 CmdStan 和所需的 C++ 工具链。stancmdstan
要安装到现有的 conda 环境中,请使用 conda 命令而不是:installcreate
conda install -c conda-forge cmdstan
无论您使用哪种安装方法,之后都必须激活新环境或停用/激活现有环境。例如,如果您将 cmdstan 安装到新环境中,请运行以下命令stan
conda activate stan
默认情况下,将安装最新版本的 CmdStan。如果需要 CmdStan 的特定版本,则可以通过在 install 命令中指定来安装 CmdStan 版本 2.26.1 及更高版本。例如,若要将早期版本的 CmdStan 安装到当前 conda 环境中,请运行以下命令,然后重新激活该环境cmdstan==VERSION
conda install -c conda-forge cmdstan=2.27.0
conda 下的 CmdStan 安装位置
Conda 环境是包含特定 Conda 包集合的目录。若要查看 conda 环境的位置,请使用以下命令
conda info -e
请在此处直接向 conda-forge 问题跟踪器报告特定于 conda 的安装问题。
从 GitHub 安装
从 GitHub CmdStan 存储库安装源代码。这需要现代的 C++ 编译器和工具链。有关详细信息,请参阅 C++ 工具链部分。
从 GitHub 安装包括以下步骤:
验证您是否具有新式 C++ 工具链。有关详细信息,请参阅 C++ 工具链部分。
从 GitHub 下载 CmdStan 源代码
生成 CmdStan 库和可执行文件
通过编译并运行 CmdStan 示例模型来检查安装。bernoulli.stan