auto.arima cảnh báo NaN được tạo ra trên lỗi std


9

Dữ liệu của tôi là một chuỗi thời gian của dân số có việc làm, L và khoảng thời gian, năm.

n.auto=auto.arima(log(L),xreg=year)
summary(n.auto)
Series: log(L) 
ARIMA(2,0,2) with non-zero mean 

Coefficients:
         ar1      ar2      ma1     ma2  intercept    year
      1.9122  -0.9567  -0.3082  0.0254    -3.5904  0.0074
s.e.     NaN      NaN      NaN     NaN     1.6058  0.0008

sigma^2 estimated as 1.503e-06:  log likelihood=107.55
AIC=-201.1   AICc=-192.49   BIC=-193.79

In-sample error measures:
           ME          RMSE           MAE           MPE          MAPE 
-7.285102e-06  1.225907e-03  9.234378e-04 -6.836173e-05  8.277295e-03 
         MASE 
 1.142899e-01 
Warning message:
In sqrt(diag(x$var.coef)) : NaNs produced

lý do tại sao điều này xảy ra? Tại sao auto.arima chọn mô hình tốt nhất có lỗi std của các hệ số ar * ma * này không phải là số? Mô hình được chọn này có hợp lệ không?

Mục tiêu của tôi là ước tính tham số n trong mô hình L = L_0 * exp (n * năm). Bất kỳ đề nghị của một cách tiếp cận tốt hơn?

TIA.

dữ liệu:

L <- structure(c(64749, 65491, 66152, 66808, 67455, 68065, 68950, 
69820, 70637, 71394, 72085, 72797, 73280, 73736, 74264, 74647, 
74978, 75321, 75564, 75828, 76105), .Tsp = c(1990, 2010, 1), class = "ts")
year <- structure(1990:2010, .Tsp = c(1990, 2010, 1), class = "ts")
L
Time Series:
Start = 1990 
End = 2010 
Frequency = 1 
 [1] 64749 65491 66152 66808 67455 68065 68950 69820 70637 71394 72085 72797
[13] 73280 73736 74264 74647 74978 75321 75564 75828 76105

Bạn có thể đăng một số dữ liệu để chúng tôi có thể tái tạo vấn đề?
Rob Hyndman

@RobHyndman cập nhật dữ liệu
Ivy Lee

Vui lòng nhập dput(L)và dán đầu ra. Điều này làm cho việc nhân rộng rất dễ dàng.
Zach

Câu trả lời:


11

Tổng các hệ số AR gần bằng 1 cho thấy các tham số nằm gần rìa của khu vực văn phòng phẩm. Điều đó sẽ gây khó khăn trong việc cố gắng tính toán các lỗi tiêu chuẩn. Tuy nhiên, không có gì sai với các ước tính, vì vậy nếu tất cả những gì bạn cần là giá trị của , bạn đã có nó.L0

auto.arima()mất một vài lần cắt ngắn để cố gắng tăng tốc tính toán, và khi nó đưa ra một mô hình có vẻ đáng ngờ, một ý tưởng tốt là tắt những đoạn ngắn đó và xem những gì bạn nhận được. Trong trường hợp này:

> n.auto <- auto.arima(log(L),xreg=year,stepwise=FALSE,approx=FALSE)
> 
> n.auto
Series: log(L) 
ARIMA(2,0,0) with non-zero mean 

Coefficients:
         ar1      ar2  intercept    year
      1.8544  -0.9061    11.0776  0.0081
s.e.  0.0721   0.0714     0.0102  0.0008

sigma^2 estimated as 1.594e-06:  log likelihood=107.19
AIC=-204.38   AICc=-200.38   BIC=-199.15

Mô hình này tốt hơn một chút (ví dụ AIC nhỏ hơn).


1
Điều gì xảy ra nếu các lỗi tiêu chuẩn không thể được tính toán và mô hình cần được sử dụng để dự báo? Điều đó sẽ gây ra khoảng tin cậy nhỏ, không hợp lý trong một dự báo? Trong trường hợp của tôi (một chuỗi thời gian dài 35), sử dụng approximation=FALSEstepwise=FALSEvẫn tạo ra NaN cho SE của các hệ số.
Mihael

4

Vấn đề của bạn phát sinh từ một đặc điểm kỹ thuật quá mức. Một mô hình khác biệt đầu tiên đơn giản với AR (1) là khá đủ. Không có cấu trúc MA hoặc chuyển đổi năng lượng được yêu cầu. Bạn cũng có thể mô hình đơn giản đây là mô hình khác biệt thứ hai vì hệ số ar (1) gần bằng 1,0. Một âm mưu của Thực tế / phù hợp / dự báo là nhập mô tả hình ảnh ở đâyvà một âm mưu còn lại  có thể ngoại lệ / sớm hơn ở khoảng thời gian 7với phương trình! nhập mô tả hình ảnh ở đâynhập mô tả hình ảnh ở đây.Trong bản tóm tắt Ước tính phải tuân theo Thông số kỹ thuật mà trong trường hợp này được tìm thấy muốn ["mene mene tekel upharsin"]. Nghiêm túc, tôi đề nghị bạn làm quen với các chiến lược nhận dạng mô hình và không cố gắng làm chìm các mô hình của bạn với cấu trúc không chính đáng. Đôi khi ít lại hơn ! Parsimony là một mục tiêu! Hi vọng điêu nay co ich ! Để trả lời thêm câu hỏi của bạn "Tại sao auto.arima chọn mô hình tốt nhất có lỗi tiêu chuẩn của các hệ số ar * ma * này không phải là Số? Câu trả lời có thể xảy ra là giải pháp không gian nhà nước không phải là vì Những mô hình giả định mà nó cố gắng. Nhưng đó chỉ là phỏng đoán của tôi. Nguyên nhân thực sự của sự thất bại có thể là giả định của bạn về một dạng x log. Biến đổi giống như thuốc ..... một số tốt cho bạn và một số không tốt cho bạn. Biến đổi công suất CHỈ được sử dụng để tách rời giá trị mong đợi khỏi độ lệch chuẩn của phần dư. Nếu có liên kết thì biến đổi Box-Cox (bao gồm các bản ghi) có thể phù hợp. Kéo một biến đổi từ sau tai của bạn có thể không phải là một ý tưởng tốt.

Mô hình được chọn này có hợp lệ không? Chắc chắn không phải !


0

Tôi đã phải đối mặt với những vấn đề tương tự. Xin vui lòng, hãy thử chơi với Optim.control và Optim.method. Các NaN này là sqrt của các giá trị âm của các phần tử đường chéo của ma trận Hốc. Sự phù hợp của ARIMA (2,0,2) là vấn đề phi tuyến và tối ưu dường như hội tụ đến điểm yên ngựa (trong đó độ dốc bằng 0, nhưng ma trận Hốc không được xác định dương) thay vì khả năng tối đa.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.