DLM memang keren, tetapi tidak sesederhana, katakanlah, ARIMA atau metode lain. Dalam metode lain, Anda memasukkan data Anda dan kemudian men-tweak beberapa parameter algoritma, mungkin merujuk ke berbagai diagnostik untuk memandu pengaturan Anda.
Dengan DLM, Anda membuat mesin ruang angkasa negara, yang terdiri dari beberapa matriks yang pada dasarnya mengimplementasikan sesuatu seperti Hidden Markov Model. Beberapa paket ( sspir
saya pikir, antara lain) berharap Anda memahami konsep dan apa yang dilakukan oleh matriks. Saya sangat menyarankan Anda mulai dengan dlm
paket, dan seperti yang disarankan @RockScience, telusuri sketsa tersebut.
Pada dlm
dasarnya Anda akan mengambil beberapa langkah:
Apa jenis komponen yang menggambarkan seri saya? Sebuah tren? Musiman? Variabel eksogen? Anda akan menggunakan dlm
alat seperti dlmModPoly
untuk mengimplementasikan komponen-komponen ini, menggunakan +
operator untuk bergabung bersama menjadi satu model.
Buat subrutin R yang membutuhkan banyak parameter yang diperlukan oleh model ini, membuat komponen dengan parameter tersebut, lalu menambahkannya bersama-sama dan mengembalikan model yang dihasilkan.
Gunakan dlmMLE
untuk melakukan pencarian / optimasi untuk menemukan parameter yang sesuai (menggunakan MLE, yang pada dasarnya adalah optimasi, dengan perangkap yang dapat terjadi dalam optimasi). dlmMLE
berulang kali panggil subrutin R Anda dengan parameter kandidat untuk membuat model, lalu uji mereka.
Buat model akhir Anda, menggunakan subrutin R yang Anda buat plus parameter yang Anda temukan di langkah 3.
Saring data Anda dengan dlmFilter
, lalu mungkin lancar dlmSmooth
.
Jika Anda menggunakan dlmModReg
atau melakukan sesuatu yang menyebabkan model memiliki parameter varian waktu, Anda tidak dapat menggunakan dlmForecast
untuk meramalkan seri Anda. Jika Anda berakhir dengan model varian waktu, Anda akan ingin mengisi data input Anda dengan NA dan biarkan dlmFilter
isinya untuk Anda (perkiraan orang miskin), karena dlmForecast
tidak bekerja dengan parameter yang bervariasi waktu.
Jika Anda ingin memeriksa komponen secara terpisah (katakan tren, secara terpisah dari musim), Anda harus memahami matriks dan apa yang ada di setiap kolom, ditambah memahami sedikit tentang bagaimana dlm
menyatukannya (urutan penting!).
Ada paket lain, yang namanya lolos dari saya, yang mencoba membuat ujung depan yang dapat menggunakan beberapa paket ini (termasuk dlm
sebagai ujung belakang). Sayangnya, saya tidak pernah berhasil dengan baik, tapi itu mungkin saya.
Saya sangat merekomendasikan untuk membeli buku tentang DLM. Saya mendapat beberapa dari mereka dan banyak bermain dlm
untuk sampai ke tempat saya, dan saya bukan ahli dengan cara apa pun.