【问题标题】:Make auto.arima in R search wider model space使 R 中的 auto.arima 搜索更宽的模型空间
【发布时间】:2016-07-04 17:02:49
【问题描述】:

我在 R 中使用 auto.arima 函数,但是我认为它没有搜索足够宽的状态空间,我不想逐步设置为 false,因为我没有资源,但是有没有如何让算法搜索更广阔的空间(即更多的 p、d 和 q 值)?

当前轨迹:

mod_TV_rev<-auto.arima(ts.data[,9],xreg=cbind.data.frame(xreg,fourier(ts.data[,9],K = K) )
                       ,approximation=F,parallel =T ,num.cores = 3,stepwise=T,trace=T,max.order = 12 ,stationary = T,seasonal=T)

ARIMA(2,0,2) with non-zero mean : Inf *
 ARIMA(0,0,0) with non-zero mean : 1517.568
 ARIMA(1,0,0) with non-zero mean : 1520.413
 ARIMA(0,0,1) with non-zero mean : Inf *
 ARIMA(0,0,0) with zero mean     : 1512.052
 ARIMA(1,0,0) with non-zero mean : 1520.413
 ARIMA(0,0,1) with non-zero mean : Inf *
 ARIMA(1,0,1) with non-zero mean : Inf *

 Best model: ARIMA(0,0,0) with non-zero mean 

【问题讨论】:

    标签: r time-series


    【解决方案1】:

    您还可以使用max.pmax.P 等设置最大季节性和非季节性 AR、MA 和差分订单 - 请参阅 ?auto.arima

    但是,除非您设置stepwise=F,否则auto.arima 将贪婪地继续并在它无法再改进时终止 - 请注意,您的跟踪显示它远未达到默认的最大订单数。 (而且这些默认值很有意义。您非常很少应该考虑高于 5 的订单。)

    替代方案是:

    1. 设置stepwise=FALSE,你没有资源
    2. 修改 auto.arima 代码,使其在终止前接受其停止标准的暂时恶化
    3. 事先确定某些型号并直接安装它们,使用arima
    4. 认真思考您的问题 - 如果auto.arima 不想超出订单 2,它可能有充分的理由。您想要扩大搜索空间的理由是什么?

    【讨论】:

      【解决方案2】:

      max.order = 只会在stepwise = FALSE 时使用。但是,当stepwise = TRUEstart.pstart.Pstart.qstart.Q 允许您在逐步搜索中设置起始值时,您可以使用一些参数。您还可以指定max.dmax.D

      【讨论】:

      • 我已经尝试设置起始值,但它仍然没有像我想要的那样搜索广泛的范围。
      • 您确定您的时间序列是固定的和季节性的吗?如果不是,请尝试省略这两个参数,因为包含它们会限制搜索的模型空间。
      • 另外,我应该指出 parallel(和相关的 num.cores)参数在 stepwise = TRUE 时被忽略
      猜你喜欢
      • 1970-01-01
      • 2017-02-14
      • 1970-01-01
      • 2020-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-01
      相关资源
      最近更新 更多