Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pm AutoARIMA未找到合适的型号_Python_Arima_Pmdarima - Fatal编程技术网

Python pm AutoARIMA未找到合适的型号

Python pm AutoARIMA未找到合适的型号,python,arima,pmdarima,Python,Arima,Pmdarima,我正在尝试使用pmdarima的AutoARIMA创建季节性ARIMA(SARIMA)模型。这样做的原因是,新数据将在项目的生命周期内变得可用,需要自动找到最佳timeseries模型的代码。不幸的是,我当前的代码似乎在产生垃圾: import pmdarima as pm import pandas as pd train_data = pd.read_csv("test.csv", header=None, names=["Value"])[&qu

我正在尝试使用pmdarima的AutoARIMA创建季节性ARIMA(SARIMA)模型。这样做的原因是,新数据将在项目的生命周期内变得可用,需要自动找到最佳timeseries模型的代码。不幸的是,我当前的代码似乎在产生垃圾:

import pmdarima as pm
import pandas as pd


train_data = pd.read_csv("test.csv", header=None, names=["Value"])["Value"]
model = pm.AutoARIMA(seasonal=True, m=168, trace=True)
model.fit(train_data.fillna(0))

输出(到目前为止,在大型服务器上运行了一段时间后):


数据有两种季节模式(一天一周)。包括每日模式会给出合理的结果(使用
m=24
),但每周模式往往会导致
AIC=inf
,如上例所示。

问题似乎是pmdarima在一段时间后超时,并插入一个inf的AIC,以替换未计算的AIC。最后,我做了常规分析,选择了一个稍微过大的SARIMA模型,该模型需要更长的时间来拟合,但肯定包含了所有相关的影响。

这样长的时间是正常的吗?数据集相对较大,因此预计操作时间较长。但你的情况可能会大不相同。你用的是哪台机器?我有一个非常相似的数据集,也有很大的季节性。由于计算时间太长,我改用Facebook Prophet,速度快得多。这台机器有32个内核,大约64个线程,大约250GB内存。我可能也会选择fb prophet,但我希望有SARIMA作为备份选项
Performing stepwise search to minimize aic
 ARIMA(2,1,2)(1,0,1)[168] intercept   : AIC=inf, Time=4041.19 sec
 ARIMA(0,1,0)(0,0,0)[168] intercept   : AIC=-35451.160, Time=1.07 sec
 ARIMA(1,1,0)(1,0,0)[168] intercept   : AIC=inf, Time=15118.06 sec
 ARIMA(0,1,1)(0,0,1)[168] intercept   : AIC=-35951.886, Time=3805.77 sec
 ARIMA(0,1,0)(0,0,0)[168]             : AIC=-35453.123, Time=0.56 sec
 ARIMA(0,1,1)(0,0,0)[168] intercept   : AIC=-35723.198, Time=2.69 sec
 ARIMA(0,1,1)(1,0,1)[168] intercept   : AIC=inf, Time=61326.67 sec
 ARIMA(0,1,1)(0,0,2)[168] intercept   : AIC=inf, Time=39971.60 sec
 ARIMA(0,1,1)(1,0,0)[168] intercept   : AIC=-36054.745, Time=4211.60 sec
 ARIMA(0,1,1)(2,0,0)[168] intercept   : AIC=-36344.782, Time=30668.84 sec