ขณะที่ฉันกำลังก้าวสู่การพยากรณ์ด้วยโมเดล ARIMA ฉันพยายามเข้าใจว่าฉันสามารถปรับปรุงการคาดการณ์ตามแบบของ ARIMA ให้สอดคล้องกับฤดูกาลและดริฟท์ได้อย่างไร
ข้อมูลของฉันเป็นอนุกรมเวลาต่อไปนี้ (มากกว่า 3 ปีที่มีแนวโน้มที่ชัดเจนขึ้นและฤดูกาลที่มองเห็นได้ซึ่งดูเหมือนว่าจะไม่สนับสนุนโดยระบบอัตโนมัติที่ความล่าช้า 12, 24, 36 ??)
> bal2sum3years.ts
Jan Feb Mar Apr May Jun Jul Aug
2010 2540346 2139440 2218652 2176167 2287778 1861061 2000102 2560729
2011 3119573 2704986 2594432 2362869 2509506 2434504 2680088 2689888
2012 3619060 3204588 2800260 2973428 2737696 2744716 3043868 2867416
Sep Oct Nov Dec
2010 2232261 2394644 2468479 2816287
2011 2480940 2699780 2760268 3206372
2012 2951516 3119176 3032960 3738256
แบบจำลองที่แนะนำโดยauto.arima(bal2sum3years.ts)
ให้แบบจำลองต่อไปนี้กับฉัน:
Series: bal2sum3years.ts
ARIMA(0,0,0)(0,1,0)[12] with drift
Coefficients:
drift
31725.567
s.e. 2651.693
sigma^2 estimated as 2.43e+10: log likelihood=-321.02
AIC=646.04 AICc=646.61 BIC=648.39
อย่างไรก็ตามค่าacf(bal2sum3years.ts,max.lag=35)
ดังกล่าวไม่แสดงค่าสัมประสิทธิ์ acf สูงกว่า 0.3 อย่างไรก็ตามฤดูกาลของข้อมูลนั้นค่อนข้างชัดเจน - ขัดขวางในช่วงต้นปีของทุกปี นี่คือลักษณะที่ปรากฏบนกราฟ:
การคาดการณ์ที่ใช้fit=Arima(bal2sum3years.ts,seasonal=list(order=c(0,1,0),period=12),include.drift=TRUE)
เรียกโดยฟังก์ชันจะforecast(fit)
ทำให้ผลลัพธ์ของ 12 เดือนข้างหน้าเท่ากับ 12 เดือนสุดท้ายของข้อมูลบวกค่าคง นี้สามารถมองเห็นได้ด้วยการโทรplot(forecast(fit))
,
ฉันได้ตรวจสอบส่วนที่เหลือซึ่งไม่ได้เป็นระบบอัตโนมัติ แต่มีค่าเฉลี่ยเป็นบวก (ไม่เป็นศูนย์)
พอดีไม่รูปแบบอนุกรมเวลาเดิมอย่างแม่นยำในความคิดของฉัน (สีน้ำเงินอนุกรมเวลาเดิมสีแดงคือfitted(fit)
:
guestion คือโมเดลไม่ถูกต้องหรือไม่? ฉันพลาดอะไรไปรึเปล่า? ฉันจะปรับปรุงแบบจำลองได้อย่างไร ดูเหมือนว่าแบบจำลองใช้เวลา 12 เดือนที่ผ่านมาและเพิ่มค่าคงที่เพื่อให้บรรลุ 12 เดือนถัดไป
ฉันเป็นผู้เริ่มต้นที่สัมพันธ์ในแบบจำลองการพยากรณ์อนุกรมเวลาและสถิติ