Bagaimana cara mendeteksi perubahan signifikan dalam data deret waktu karena perubahan "kebijakan"?

15

Saya harap ini adalah tempat yang tepat untuk memposting ini, saya mempertimbangkan untuk mempostingnya pada orang yang skeptis, tetapi saya pikir mereka hanya akan mengatakan bahwa penelitian ini secara statistik salah. Saya ingin tahu tentang sisi lain dari pertanyaan yang bagaimana melakukannya dengan benar.

Di situs web Quantified Self , penulis memposting hasil percobaan beberapa metrik output yang diukur pada dirinya sendiri dari waktu ke waktu dan membandingkan sebelum dan sesudah berhenti minum kopi secara tiba-tiba. Hasil dievaluasi secara subyektif dan penulis percaya bahwa ia memiliki bukti bahwa ada perubahan dalam rangkaian waktu dan itu terkait dengan perubahan kebijakan (minum kopi)

Yang mengingatkan saya pada ini adalah model ekonomi. Kami hanya memiliki satu ekonomi (yang kami pedulikan saat ini), jadi para ekonom sering melakukan eksperimen n = 1. Data hampir pasti terkait otomatis dari waktu ke waktu karena hal ini. Para ekonom umumnya mengawasi, katakanlah The Fed, ketika memprakarsai kebijakan dan mencoba memutuskan apakah rangkaian waktu berubah, berpotensi karena kebijakan itu.

Apa tes yang sesuai untuk menentukan apakah deret waktu mengalami peningkatan atau penurunan berdasarkan data? Berapa banyak data yang saya perlukan? Alat apa yang ada? Googling awal saya menyarankan Markov Switching Time Series Models, tetapi bukan keterampilan googling saya yang membuat saya gagal membantu melakukan apa pun hanya dengan nama teknik.

MatthewMartin
sumber

Jawaban:

4

Makalah Box-Tiao yang dirujuk oleh Jason didasarkan pada perubahan hukum yang diketahui. Pertanyaannya di sini adalah bagaimana mendeteksi titik waktu. Jawabannya adalah dengan menggunakan prosedur Tsay untuk mendeteksi Intervensi baik itu Pulsa, Pergeseran level, Pulsa Musiman dan / atau tren waktu setempat.

IrishStat
sumber
1

Melihat melalui beberapa catatan lama tentang istirahat struktural, saya memiliki dua kutipan ini:

Enders, "Rangkaian Waktu Ekonometrik Terapan", edisi ke-2, bab. 5.

Enders membahas intervensi, fungsi denyut nadi, fungsi perubahan bertahap, fungsi transfer, dll. Artikel ini juga dapat membantu:

Box, GEP dan GC Tiao. 1975. "Analisis Intervensi dengan Aplikasi untuk Masalah Ekonomi dan Lingkungan." Jurnal Asosiasi Statistik Amerika 70: 70-79.

Jason Morgan
sumber
1

Tidak bisakah Anda menggunakan model titik perubahan, dan kemudian mencoba mengidentifikasi titik perubahan menggunakan algoritma MCMC seperti Gibbs Sampling?

Ini harus relatif sederhana untuk diterapkan, asalkan Anda memiliki beberapa distribusi sebelumnya untuk data Anda atau distribusi bersyarat penuh (untuk Gibbs).

Anda dapat menemukan gambaran umum cepat di sini

Berk U.
sumber
1

Jika Anda mempertimbangkan semua titik waktu sebagai titik perubahan kandidat (alias titik break, alias perubahan struktural) maka paket strucchange adalah opsi yang sangat bagus.

Tampaknya dalam skenario khusus Anda, hanya ada satu titik waktu kandidat. Dalam hal ini, beberapa opsi cepat muncul di pikiran:

  1. Uji-T: uji-t pada jam konsentrasi per hari pada periode "sebelum berhenti" vs. "setelah berhenti". Jika Anda khawatir dengan korelasi sehari-hari, Anda bisa meninggalkan beberapa pengamatan sehingga Anda memiliki interval yang cukup lama untuk percaya bahwa hari-hari tidak lagi berkorelasi. Dengan pendekatan ini, Anda akan menukar daya dengan kesederhanaan.
  2. AR: Pasangkan model AR dengan satu boneka: "setelah berhenti". Jika prediktornya signifikan, maka Anda memiliki perubahan. Menggunakan AR, akan menangkap ketergantungan (mungkin) antara hari.
JohnRos
sumber
: John Idenya adalah bahwa Anda tidak tahu "titik waktu satu kandidat" tetapi ingin menemukannya secara analitis, mungkin untuk ratusan seri waktu. "Tes mata" untuk menentukan kandidat yang satu ini sering kurang karena pulsa satu kali dan struktur ARIMA yang mendasarinya terjadi. Metode Deteksi Intervensi ala R. Rsay atau George Tiao yang mencari pergeseran LEVEL / STEP yang tidak diketahui benar-benar membangun variabel yang Anda gambarkan (satu boneka dengan nol diikuti oleh 1). Perhatian harus diberikan untuk mempertimbangkan mengidentifikasi Intervensi PERTAMA dan kemudian komponen ARIMA dan sebaliknya.
IrishStat
@IrishStat: Di Blog yang direferensikan, titik perubahan diketahui. Untuk kasus yang bukan, paket R strucchange direferensikan.
JohnRos
: John From documenation struchange "Akhirnya, breakpoints dalam model regresi dengan perubahan struktural dapat diperkirakan" menggunakan Metode CHOW yang akrab dengan saya. Menguji atau menemukan breakpoints dalam koefisien regresi memerlukan spesifikasi model regresi dan jika saya perbaiki ini tidak ada hubungannya dengan menjawab pertanyaan "tes untuk menentukan apakah deret waktu meningkat atau menurun berdasarkan data?". Saya pikir rekomendasi Anda tidak cukup untuk menjawab pertanyaan OP. Rekomendasi Anda menjawab pertanyaan. t percaya ditanya.
IrishStat
: john Itu benar tetapi sepele karena model dengan hanya intersep hanya ditemukan di buku teks atau dalam mimpi.
IrishStat
@IrishStat: memang benar bahwa kerangka kerja perubahan struktural lebih umum. Namun mendeteksi peningkatan atau penurunan "data" dapat dilakukan dengan memasang model intercept-only.
JohnRos
1

Beberapa tahun yang lalu saya mendengar ceramah oleh mahasiswa pascasarjana, Stacey Hancock , selama pertemuan bab ASA lokal dan itu pada "estimasi istirahat struktural" dari deret waktu. Pembicaraan itu sangat menarik dan saya berbicara dengannya sesudahnya dan dia bekerja dengan Richard Davis (dari Brockwell-Davis ), kemudian di Colorado State University, sekarang di Columbia. Pembicaraan itu merupakan perpanjangan dari Davis et al. bekerja di sebuah makalah JASA 2006 disebut Estimasi Break Strutural untuk Model Time Series Nonstationary , yang tersedia secara bebas di sini .

Davis memiliki implementasi perangkat lunak dari metode yang ia sebut Auto-PARM, yang ia buat menjadi executable Windows. Jika Anda menghubunginya Anda mungkin bisa mendapatkan salinannya. Saya memiliki salinan, dan di sini adalah contoh keluaran pada seri waktu pengamatan 1.200:

    ============== RESULTS ===============
  ISLAND           1
    SC=   1910.58314770669
    Breaking point/AR order
           1              1
         351              1
         612              3
    ======================================
 Total time:   5.812500

Jadi seri ini adalah AR (1) pada awalnya, pada pengamatan 351 proses AR (1) berubah menjadi proses AR (1) lainnya (Anda bisa mendapatkan parameter), dan kemudian pada pengamatan 612 prosesnya berubah menjadi AR (3) .

Satu pengaturan menarik yang saya coba pada Auto-PARM adalah melihat data penarikan ATM mingguan yang merupakan bagian dari kompetisi NN5 . Saya ingat algoritma menemukan istirahat struktural pada akhir November tahun yang ditentukan, misalnya awal musim belanja liburan AS.

Jadi, bagaimana cara menggunakan algoritma ini melalui implementasi yang ada? Nah, sekali lagi, Anda bisa menjangkau Davis dan melihat apakah Anda bisa mendapatkan Windows executable. Ketika saya di Rogue Wave Software, saya bekerja dengan Davis untuk memasukkan Auto-PARM ke Numerical Libraries IMSL. Bahasa pertama yang digunakan adalah porting Fortran , di mana disebut Auto_PARM, dan saya curiga Rogue Wave akan segera merilis port C, dengan Python, C # dan port Java untuk mengikuti.

Josh Hemann
sumber
: Josh he OP tidak menurut pendapat saya mengacu pada pengujian hipotesis dari parameter parameter model, dalam kasus Anda di mana atau tidak AR (3) memiliki parameter konstan dari waktu ke waktu. Dia yakin menarik dalam mendeteksi pergeseran yang sebelumnya tidak diketahui dalam rata-rata residu.
IrishStat
mods: OP tidak, menurut pendapat saya, mengacu pada pengujian hipotesis dari parameter parameter model, dalam kasus Anda apakah atau tidak AR (3) memiliki parameter konstan dari waktu ke waktu. Dia percaya tertarik untuk mendeteksi sampai sekarang tidak diketahui pergeseran dalam mean dari residual.Inisis masalah yang sangat berbeda dari yang Anda sebutkan. Sekarang saya sepenuhnya setuju bahwa dengan tidak adanya Intervensi Deteksi dalam rata-rata residu. Seseorang mungkin menemukan titik waktu di mana baik parameter dari beberapa model dan / atau variasi dari theorrors mungkin telah berubah secara signifikan TAPI bukan itu yang ingin diketahui OP.
IrishStat
@IrishStat: Apakah Anda terbiasa dengan Auto-PARM? Algoritme menggunakan residu dalam estimasi istirahat (baik sehubungan dengan jumlah istirahat dan urutan AR (p) dari segmen). OP tampaknya tidak memiliki metode khusus yang ia tanyakan. Sebaliknya, ia tampaknya bertanya secara umum "Jika saya mengukur suatu proses dalam waktu dan mengubah sesuatu tentang proses, apakah ada cara untuk mendeteksi titik perubahan ini dari data saja?". Dia tidak bertanya tentang pergeseran level vs inovasi vs deteksi outlier aditif. Semoga OP dapat mengklarifikasi bagi kita ...
Josh Hemann
josh: Dari OP "Apa tes yang sesuai untuk menentukan apakah deret waktu meningkat atau menurun berdasarkan data?". Ini saya percaya meminta penentuan apakah rata-rata residu telah bergeser bukan parameter dari beberapa Model ARIMA. Menurut pendapat saya, Anda merekomendasikan prosedur perangkat lunak / solusi yang salah tetapi itu hanya pendapat saya.
IrishStat
1

Josh berkata:

josh: Dari OP "Apa tes yang sesuai untuk menentukan apakah deret waktu meningkat atau menurun berdasarkan data?". Ini saya percaya meminta penentuan jika rata-rata residu telah bergeser bukan parameter dari beberapa Model ARIMA. Menurut pendapat saya, Anda merekomendasikan prosedur perangkat lunak / solusi yang salah tetapi itu hanya pendapat saya. - IrishStat 28 Okt '11 jam 19:08

Misalkan seseorang mulai dengan Model AR (1):

Yt=γ+ϕYt-1+Et

Dimana Et adalah, katakanlah, Gaussian Noise (berarti nol dan varians σ2 Mean dari seri ini.

Mean dari seri ini γ1-halhsaya

Jadi, jika untuk beberapa waktu parameter γ dan ϕtidak berubah, maka demikian juga rata-rata keseluruhan seri. Namun, jika salah satu dari perubahan ini, berarti rata-rata seri akan berubah. Jadi, di bawah stasioner piecewise, kami mencari perubahan parameter ini!

Jika model struktural diasumsikan, Auto-PARM adalah prosedur yang digunakan.

pengguna43737
sumber
1
Sepertinya Anda sebenarnya mengutip IrishStat ... bisakah Anda menautkan sumber asli kutipan?
Nick Stauner