prophet踩坑日记

最近用到了prophet以及neturalprophet。

官方给出了issues以及自述文件。

首先从prophet的版本说起吧,也为我无数次尝试安装fbprophet掬一把泪。

官方自述文件提及安装命令为

python -m pip install prophet

prophet从v0.6版本开始,不再支持python2;从v1.1开始,支持的最低python版本为3.7。

所以这里一定要先注意自己的python版本。说起来我研一的时候,老师的作业python2,python3还都可以使用来着。就是还差蛮多的。如果是初学者还是多注意一下比较好。

重点来了!prophet在pypi上的包v1.0开始名称是prophet;在此之前是fbprophet。

但是我通过国内搜索引擎搜到的教程还是安装pystan以及fbprophet。

虽然我安装过程中各种出问题,无法build wheel。用的公司电脑,内网限制也好多。整个人就很折磨。其实完全可以跳出这个问题的,主要还是想偷懒,当时不想看源码orz。

安装prophet成功之后,就到了开箱即用的环节啦。按照prophet所需要的df格式,最起码一列ds(时间类型),一列y(数值类型)。简单split一下你的数据集就可以fit出漂亮的波形图了。

国内搜索引擎给出了一篇更新迭代模型的文章,但实际上可以在官方文档中找到。

使用的语句是

modelnew=Prophet().fit(df,init=stan_init(model))

但是这个更新迭代的方法,会由于版本出现一个bug,我根据提示去改源码改的稀碎。偷懒不了了QAQ。

报错是这样的

File "D:\Program Files\Anaconda3\lib\site-packages\prophet\models.py", line 154, in prepare_data
    'y': data['y'].tolist(),
AttributeError: 'list' object has no attribute 'tolist'

issues里面也有人和我遇到了一样的问题 来源于issues2229,riskysignal

题主发现prophet==1.0.1可,但1.1哒咩。

现在问题来到了如何让一个模型可以适配多个时序了。嘿嘿,prophet不可以但是neturalprophet可以呀。

踩完一遍再继续更新。

我的anaconda的base环境,python版本为3.7.0。进行尝试后,发现使用以下链接可以解决我的问题。粘贴在这里。

ImportError: cannot import name ‘OrderedDict‘ from ‘typing‘ (D:\Programming-language-program\Anacond_来点实际的东西的博客-CSDN博客

我出错的文件在neturalprophet文件夹下的一个py文件。

地址为 D:\Program Files\Anaconda3\Lib\site-packages\neuralprophet\configure.py.

改变后的代码行是第10行的引用。具体原因在连接中可以查看。

#from typing import OrderedDict as OrderedDictType
from typing_extensions import OrderedDict as OrderedDictType

你可能感兴趣的:(时序预测,python,人工智能)