Saya ingin menerapkan (dalam R) Model Dynamic Linear berikut yang sangat sederhana yang saya punya 2 parameter waktu yang tidak diketahui (varian kesalahan pengamatan dan varian kesalahan negara ).
Saya ingin memperkirakan parameter ini di setiap titik waktu, tanpa bias pandangan ke depan . Dari apa yang saya mengerti, saya dapat menggunakan MCMC (pada jendela bergulir untuk menghindari bias pandangan ke depan), atau filter partikel (atau Sequential Monte Carlo - SMC).
Metode mana yang akan Anda gunakan , dan
Apa pro dan kontra dari kedua metode ini?
Pertanyaan bonus: Dalam metode ini, bagaimana Anda memilih kecepatan perubahan parameter? Saya kira kita harus memasukkan informasi di sini, karena ada tawar-menawar antara menggunakan banyak data untuk memperkirakan parameter dan menggunakan lebih sedikit data untuk bereaksi lebih cepat terhadap perubahan parameter?
sumber
Jawaban:
Jika Anda memiliki parameter waktu yang bervariasi dan ingin melakukan hal-hal secara berurutan (memfilter), maka SMC paling masuk akal. MCMC lebih baik ketika Anda ingin mengkondisikan semua data, atau Anda memiliki parameter statis yang tidak diketahui yang ingin Anda perkirakan. Filter partikel memiliki masalah dengan parameter statis (degenerasi).
sumber
Lihatlah paket dlm dan skripnya . Saya pikir Anda mungkin menemukan apa yang Anda cari dari sketsa. Paket penulis juga telah menulis sebuah buku Model Dinamis Linear dengan R .
sumber
Saya telah membaca Dynamic Linear Models dengan R (buku bagus), bab terakhir membahas tentang pengurutan partikel Monte Carlo / partikel. Ini juga mencakup beberapaT titik. Mungkin saya salah membaca peringatan mereka, tetapi ini sepertinya menyiratkan bahwa Anda lebih baik dengan MCMC window bergulir. Namun, saya akan berpikir ada kendala pemrosesan komputer yang substansial dengan metode itu. Misalnya, dengan asumsi Anda memiliki 1.000 deret waktu univariat yang berbeda dengan masing-masing 50 pengamatan dan Anda memerlukan waktu 10 menit untuk menjalankan sampler MCMC Gibbs penuh. Kemudian, Anda memerlukan waktu 340 hari ( ) dari pemrosesan berkelanjutan untuk memperkirakan parameter tanpa bias pandangan ke depan. Mungkin perkiraan saya tentang waktu yang diperlukan untuk menjalankan MCMC tidak aktif, tapi saya pikir ini perkiraan yang konservatif namun masuk akal.(1000×(50−1)×10)÷60÷24
R
kode; Namun, dalam kata penutup bab 5 mereka secara eksplisit memperingatkan bahwa SMC menjadi semakin tidak dapat diandalkan seiring waktu tambahan karena kesalahan menumpuk. Dengan demikian, mereka merekomendasikan "menyegarkan" filter partikel dengan distribusi posterior dari sampel MCMC lengkap setiap( 1000 × ( 50 - 1 ) × 10 ) ÷ 60 ÷ 24Sudah beberapa tahun sejak Anda mengajukan pertanyaan, jadi saya ingin tahu jika Anda sendiri punya jawaban sekarang.
sumber