Ich verwende die Arima-Methode des Statistikpakets von R mit meiner Zeitreihe von 17376 Elementen. Mein Ziel ist es, den Wert des AIC-Kriteriums zu erhalten. Ich habe in meinem ersten Test Folgendes beobachtet:
ts <- arima(serie[,1], order = c(2,1,1), seasonal = list(order=c(2,0,1),period = 24),
method = "CSS", optim.method = "BFGS",)
> ts$coef
ar1 ar2 ma1 sar1 sar2 sma1
0.8883730 -0.0906352 -0.9697230 1.2047580 -0.2154847 -0.7744656
> ts$aic
[1] NA
Wie Sie sehen können, ist AIC nicht definiert. Über AIC sagte "Hilfe" in R, dass es nur mit "ML" verwendet werden könne. Es passiert jedoch:
> ts <- arima(serie[,1], order = c(2,1,1), seasonal = list(order=c(2,0,1),period = 24),
method = "ML", optim.method = "BFGS",)
Error en optim(init[mask], armafn, method = optim.method, hessian = TRUE, :
non-finite finite-difference value [1]
Plus: warning messages lost
In log(s2) : There have been NaNs
Ich verstehe nicht, was passiert. Außerdem möchte ich mehr über den Parameter "Anpassungsmethode" erfahren.
r
time-series
forecasting
arima
Cyberguille
quelle
quelle
optim.control
Argument) hätte gute Chancen, dieses Problem zu vermeiden. Ich habe dies nicht getestet, da Sie kein reproduzierbares Beispiel für die Schwierigkeit liefern.Antworten:
Um das ARIMA-Modell mit maximaler Wahrscheinlichkeit (Methode = "ML") auszustatten, muss die negative Log-Wahrscheinlichkeit des ARIMA-Modells über die Parameter optimiert (minimiert) werden. Dies stellt sich als eingeschränktes Optimierungsproblem heraus, da die Parameter zu einem stationären Modell führen müssen. Diese nichtlineare Einschränkung wird mit der negativen Log-Wahrscheinlichkeit berücksichtigt, die Inf (unendlich) zurückgibt, wenn die Einschränkung nicht erfüllt ist. Wenn sich der MLE nahe der Grenze der Einschränkungsbewertung befindet, könnte die negative log-Wahrscheinlichkeit in der Nähe des MLE unendlich zurückkehren. Da der Hessische Wert durch numerische Differenzierung durch Auswertung der negativen logarithmischen Wahrscheinlichkeit in der Nähe des MLE erhalten wird, kann dies zu dem von Ihnen erhaltenen nicht-endlichen Fehler der endlichen Differenz führen. Wenn also kein Hessisch benötigt wird, setzen Sie Hessisch = FALSE. Andernfalls,
quelle
Bearbeitet: Wenn Sie dies ablehnen, können Sie bitte erklären, warum? Ich bin neu hier.
Ich hatte das gleiche Problem. Ich habe mich online umgesehen und eine Lösung gefunden, die an anderer Stelle auf Cross Validated vorgeschlagen wurde. Ich dachte, ich würde hier teilen, falls jemand es wollte.
Ich habe meinem Modell gerade eine "method =" CSS "" hinzugefügt und es hat funktioniert. Zum Beispiel:
Hier ist die Referenz:
auto.arima und Arima (Prognosepaket)
quelle
Sie scheinen Probleme mit der Konvergenz von Algorithmen zu haben. Dies geschieht manchmal bei der numerischen Optimierung.
Hier ist ein Link zum Wikipedia-Artikel zu dieser speziellen Optimierungsmethode:
http://en.wikipedia.org/wiki/Broyden%E2%80%93Fletcher%E2%80%93Goldfarb%E2%80%93Shanno_algorithm
quelle