fbprophet/Prophet 拟合函数中止并重新启动 Anaconda/Spyder Python 内核

Posted

技术标签:

【中文标题】fbprophet/Prophet 拟合函数中止并重新启动 Anaconda/Spyder Python 内核【英文标题】:fbprophet/Prophet fit function aborts and restarts Anaconda/Spyder Python kernel 【发布时间】:2022-01-11 21:48:19 【问题描述】:

您好,感谢您抽出宝贵时间阅读并考虑这个问题...... 我遇到了这个问题,但我的开发环境没有改变。 就在上周,我一直在成功运行 Prophet。 为了测试,我有一个名为 ads_mod 的 24 行数据框。前两行是:

当流程到达我的代码的 Prophet 建模部分时,会发生以下情况:

m = Prophet(interval_width=interval_width)
This executed, and I could see the object instantiated in the Spyder(IDE) Variable Explorer
m.add_seasonality(name='hourly', period=1, fourier_order=30) 
This executed
m.fit(ads_mod)   
This restarted the Python Kernel in about 5 seconds and closed the active kernel and all of the existing objects.

以下是我用于测试此问题的代码的精简版本:

from fbprophet import Prophet
import pickle
 
pickle_in = open("/Users/swe03/Documents/ProductionCode/EgressModel/ads_mod.pickle","rb")
ads_mod = pickle.load(pickle_in)
 
## Start the modeling process
m = Prophet()
m.add_seasonality(name='hourly', period=1, fourier_order=30)
m.fit(ads_mod)

下面是我的 Anaconda / Spyder 在执行上面的测试代码后的屏幕截图:

以下是我当前安装的 conda 列表。 注意:在 fbprophet 0.5 和 0.7.1 中都会出现此问题。

命名版本构建频道

雪花石膏 0.7.12 py37_0 应用程序目录 1.4.4 pyhd3eb1b0_0 applaunchservices 0.2.1 pyhd3eb1b0_0 appnope 0.1.2 py37hecd8cb5_1001 argcomplete 1.12.3 pyhd3eb1b0_0 箭头 0.13.1 py37_0 小行星 2.6.6 py37hecd8cb5_0 async_generator 1.10 py37h28b3542_0 atomicwrites 1.4.0 py_0 attrs 21.2.0 pyhd3eb1b0_0 autopep8 1.5.7 pyhd3eb1b0_0 babel 2.9.1 pyhd3eb1b0_0 回拨 0.2.0 pyhd3eb1b0_0 binaryornot 0.4.4 pyhd3eb1b0_1 黑色 19.10b0 py_0 漂白 4.0.0 pyhd3eb1b0_0 brotli 1.0.9 h0d85af4_6 conda-forge brotli-bin 1.0.9 h0d85af4_6 conda-forge brotlipy 0.7.0 py37h9ed2024_1003 ca 证书 2021.10.26 hecd8cb5_2 cctools_osx-64 949.0.1 h6407bdd_22 conda-forge 证书 2021.10.8 py37hecd8cb5_0 cffi 1.14.6 py37h2125817_0 chardet 4.0.0 py37hecd8cb5_1003 字符集规范化器 2.0.4 pyhd3eb1b0_0 铿锵声 10.0.1 default_hf57f61e_1 conda-forge clang_osx-64 10.0.1 h05bbb7f_10 conda-forge clangxx 10.0.1 default_hf57f61e_1 conda-forge clangxx_osx-64 10.0.1 h05bbb7f_10 conda-forge 点击 8.0.3 pyhd3eb1b0_0 cloudpickle 2.0.0 pyhd3eb1b0_0 colorama 0.4.4 pyh9f0ad1d_0 conda-forge 编译器-rt 10.0.1 he6db49b_0 conda-forge 编译器-rt_osx-64 10.0.1 h033240e_0 conda-forge 转换日期 2.3.2 pyhd8ed1ab_0 conda-forge cookiecutter 1.7.2 pyhd3eb1b0_0 密码学 35.0.0 py37h2fd3fbb_0 循环器 0.11.0 pyhd8ed1ab_0 conda-forge cython 0.29.24 py37hd8d24ac_1 conda-forge dbus 1.13.18 h18a8e69_0 调试py 1.5.1 py37he9d5cce_0 装饰器 5.1.0 pyhd3eb1b0_0 defusedxml 0.7.1 pyhd3eb1b0_0 差异匹配补丁 20200713 pyhd3eb1b0_0 docutils 0.18.1 py37hecd8cb5_2 入口点 0.3 py37_0 ephem 4.1.1 py37h271585c_0 conda-forge 外籍人士 2.4.1 h23ab428_2 fbprophet 0.7.1 py37hdadc0f0_0 conda-forge flake8 3.9.2 pyhd3eb1b0_0 字体工具 4.28.3 py37h271585c_0 conda-forge freetype 2.10.4 h4cff582_1 conda-forge 获取文本 0.21.0 h7535e17_0 glib 2.69.1 hdf23fa2_0 回历转换器 2.2.2 pyhd8ed1ab_0 conda-forge 假期 0.11.3.1 pyhd8ed1ab_0 conda-forge ICU 58.2 h0a44026_3 idna 3.3 pyhd3eb1b0_0 图像大小 1.3.0 pyhd3eb1b0_0 导入库元数据 4.8.1 py37hecd8cb5_0 导入lib_metadata 4.8.1 hd3eb1b0_0 拐点 0.5.1 py37hecd8cb5_0 间隔树 3.1.0 pyhd3eb1b0_0 ipykernel 6.4.1 py37hecd8cb5_1 ipython 7.29.0 py37h01d92e1_0 ipython_genutils 0.2.0 pyhd3eb1b0_1 isort 5.9.3 pyhd3eb1b0_0 jbig 2.1 h0d85af4_2003 康达锻造 绝地 0.18.0 py37hecd8cb5_1 jinja2 2.11.3 pyhd3eb1b0_0 jinja2-time 0.2.0 pyhd3eb1b0_2 jpeg 9d hbcb3906_0 conda-forge jsonschema 3.2.0 pyhd3eb1b0_2 jupyter_client 6.1.12 pyhd3eb1b0_0 jupyter_core 4.9.1 py37hecd8cb5_0 jupyterlab_pygments 0.1.2 py_0 钥匙圈 23.1.0 py37hecd8cb5_0 kiwisolver 1.3.2 py37h737db71_1 conda-forge korean_lunar_calendar 0.2.1 pyh9f0ad1d_0 conda-forge 惰性对象代理 1.6.0 py37h9ed2024_0 lcms2 2.12 h577c468_0 conda-forge ld64_osx-64 530 hea264c1_17 conda-forge ldid 2.1.2 h6a69015_3 conda-forge lerc 2.2.1 h046ec9c_0 conda-forge libblas 3.9.0 12_osx64_openblas conda-forge libbrotlicommon 1.0.9 h0d85af4_6 conda-forge libbrotlidec 1.0.9 h0d85af4_6 conda-forge libbrotlinc 1.0.9 h0d85af4_6 conda-forge libcblas 3.9.0 12_osx64_openblas conda-forge libclang-cpp10 10.0.1 default_hf57f61e_1 conda-forge libcxx 12.0.0 h2f01273_0 libdeflate 1.7 h35c211d_5 conda-forge libffi 3.3 hb1e8313_2 libgfortran 5.0.0 9_3_0_h6c81a4c_23 conda-forge libgfortran5 9.3.0 h6c81a4c_23 conda-forge libiconv 1.16 h1de35cc_0 liblapack 3.9.0 12_osx64_openblas conda-forge libllvm10 10.0.1 h009f743_3 conda-forge libllvm12 12.0.1 hd011deb_2 conda-forge libopenblas 0.3.18 openmp_h3351f45_0 conda-forge libpng 1.6.37 h7cec526_2 conda-forge libsodium 1.0.18 h1de35cc_0 库空间索引 1.9.3 h23ab428_0 libtiff 4.3.0 h1167814_1 conda-forge libwebp-base 1.2.1 h0d85af4_0 conda-forge libxml2 2.9.12 hcdb78fc_0 llvm-openmp 12.0.1 hda6cdc1_1 conda-forge llvm-tools 10.0.1 h1341992_3 conda-forge 农历 0.0.9 py_0 conda-forge lz4-c 1.9.3 he49afe7_1 conda-forge 标记安全 1.1.1 py37h1de35cc_0 matplotlib 3.5.0 py37hf985489_0 conda-forge matplotlib-base 3.5.0 py37h3147e9e_0 conda-forge matplotlib 内联 0.1.2 pyhd3eb1b0_2 mccabe 0.6.1 py37_1 失谐 0.8.4 py37h1de35cc_0 munkres 1.1.4 pyh9f0ad1d_0 conda-forge mypy_extensions 0.4.3 py37_0 nbclient 0.5.3 pyhd3eb1b0_0 nbconvert 6.1.0 py37hecd8cb5_0 nbformat 5.1.3 pyhd3eb1b0_0 ncurses 6.3 hca72f7f_2 嵌套异步 1.5.1 pyhd3eb1b0_0 numpy 1.21.4 py37haefe36b_0 conda-forge numpydoc 1.1.0 pyhd3eb1b0_1 olefile 0.46 pyh9f0ad1d_1 conda-forge openjpeg 2.4.0 h6e7aa92_1 conda-forge openssl 1.1.1l h9ed2024_0 包装 21.3 pyhd8ed1ab_0 conda-forge 熊猫 1.3.4 py37h5b83a90_1 conda-forge pandocfilters 1.4.3 py37hecd8cb5_1 解析 0.8.2 pyhd3eb1b0_0 路径规范 0.7.0 py_0 pcre 8.45 h23ab428_0 pexpect 4.8.0 pyhd3eb1b0_3 pickleshare 0.7.5 pyhd3eb1b0_1003 枕头 8.3.2 py37h76dc067_0 conda-forge 点 21.2.2 py37hecd8cb5_0 即插即用 1.0.0 py37hecd8cb5_0 poyo 0.5.0 pyhd3eb1b0_0 提示工具包 3.0.20 pyhd3eb1b0_0 psutil 5.8.0 py37h9ed2024_1 ptyprocess 0.7.0 pyhd3eb1b0_2 pycodestyle 2.7.0 pyhd3eb1b0_0 pycparser 2.21 pyhd3eb1b0_0 pydocstyle 6.1.1 pyhd3eb1b0_0 pyflakes 2.3.1 pyhd3eb1b0_0 pygments 2.10.0 pyhd3eb1b0_0 pylint 2.9.6 py37hecd8cb5_1 pyls-spyder 0.4.0 pyhd3eb1b0_0 pymeeus 0.5.10 pyhd8ed1ab_0 conda-forge pyopenssl 21.0.0 pyhd3eb1b0_1 pyparsing 3.0.6 pyhd8ed1ab_0 conda-forge pyqt 5.9.2 py37h655552a_2 pyrsistent 0.18.0 py37hca72f7f_0 pysocks 1.7.1 py37hecd8cb5_0 pystan 2.17.1.0 py37h1702cab_1003 conda-forge python 3.7.11 h88f2d9e_0 python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge python-lsp-black 1.0.0 pyhd3eb1b0_0 python-lsp-jsonrpc 1.0.0 pyhd3eb1b0_0 python-lsp-server 1.2.4 pyhd3eb1b0_0 python-slugify 5.0.2 pyhd3eb1b0_0 python.app 3 py37hca72f7f_0 python_abi 3.7 2_cp37m conda-forge pytz 2021.3 pyhd8ed1ab_0 conda-forge pyyaml 6.0 py37hca72f7f_1 pyzmq 22.3.0 py37he9d5cce_2 qdarkstyle 3.0.2 pyhd3eb1b0_0 qstylizer 0.1.10 pyhd3eb1b0_0 qt 5.9.7 h468cd18_1 qtawesome 1.0.3 pyhd3eb1b0_0 qtconsole 5.1.1 pyhd3eb1b0_0 qtpy 1.10.0 pyhd3eb1b0_0 readline 8.1 h9ed2024_0 正则表达式 2021.8.3 py37h9ed2024_0 请求 2.26.0 pyhd3eb1b0_0 绳索 0.21.1 pyhd3eb1b0_0 rtree 0.9.7 py37hecd8cb5_1 安装工具 58.0.4 py37hecd8cb5_0 啜饮 4.19.8 py37h0a44026_0 六个 1.16.0 pyh6c4a22f_0 conda-forge 雪球茎 2.2.0 pyhd3eb1b0_0 排序容器 2.4.0 pyhd3eb1b0_0 狮身人面像 1.8.5 py37_0 sphinxcontrib 1.0 py37_1 sphinxcontrib-websupport 1.2.4 py_0 spyder 5.1.5 py37hecd8cb5_1 spyder 内核 2.1.3 py37hecd8cb5_0 sqlite 3.36.0 hce871da_0 Tapi 1100.0.11 h9ce4665_0 conda-forge 测试路径 0.5.0 pyhd3eb1b0_0 text-unidecode 1.3 pyhd3eb1b0_0 textdistance 4.2.1 pyhd3eb1b0_0 三合并 0.1.1 pyhd3eb1b0_0 tinycss 0.4 pyhd3eb1b0_1002 传统知识 8.6.11 h7bc2e8c_0 toml 0.10.2 pyhd3eb1b0_0 龙卷风 6.1 py37h271585c_2 conda-forge tqdm 4.62.3 pyhd8ed1ab_0 conda-forge traitlets 5.1.1 pyhd3eb1b0_0 类型化-ast 1.4.3 py37h9ed2024_1 打字扩展 3.10.0.2 hd3eb1b0_0 打字扩展 3.10.0.2 pyh06a4308_0 ujson 4.0.2 py37h23ab428_0 unicodedata2 13.0.0.post2 py37h271585c_4 conda-forge unidecode 1.2.0 pyhd3eb1b0_0 urllib3 1.26.7 pyhd3eb1b0_0 看门狗 2.1.6 py37h999c104_0 wcwidth 0.2.5 pyhd3eb1b0_0 网络编码 0.5.1 py37_1 车轮 0.37.0 pyhd3eb1b0_1 whichcraft 0.6.1 pyhd3eb1b0_0 包装 1.12.1 py37h1de35cc_1 wurlitzer 3.0.2 py37hecd8cb5_0 xz 5.2.5 h1de35cc_0 yaml 0.2.5 haf1e3a3_0 yapf 0.31.0 pyhd3eb1b0_0 zeromq 4.3.4 h23ab428_0 zipp 3.6.0 pyhd3eb1b0_0 zlib 1.2.11 h1de35cc_3 zstd 1.5.0 h582d3a0_0 conda-forge

【问题讨论】:

【参考方案1】:

经过进一步研究,我确定https://github.com/facebook/prophet/issues/1670 中已详细记录了解决此问题的一些方法。 我选择了一种方法,它奏效了。 但是,仍然不太明白为什么会发生这种情况。

【讨论】:

以上是关于fbprophet/Prophet 拟合函数中止并重新启动 Anaconda/Spyder Python 内核的主要内容,如果未能解决你的问题,请参考以下文章

Google Adword 脚本中止并出现以下错误:传递给回调函数的返回值必须是字符串

R语言使用lm函数拟合回归模型(简单线性回归一元回归simple regression)并解读拟合模型

R语言使用lm函数拟合回归模型(简单线性回归一元回归simple regression)并解读拟合模型

中止 API 获取后重新启动异步函数

python 拟合曲线并求参

R语言使用gls函数拟合模型并可视化模型的预测值及其置信区间实战