Regresi logistik untuk deret waktu

21

Saya ingin menggunakan model regresi logistik biner dalam konteks streaming data (seri waktu multidimensi) untuk memprediksi nilai variabel dependen dari data (yaitu baris) yang baru saja tiba, mengingat pengamatan sebelumnya. Sejauh yang saya tahu, regresi logistik secara tradisional digunakan untuk analisis postmortem, di mana setiap variabel dependen telah ditetapkan (baik dengan inspeksi, atau oleh sifat penelitian).

Apa yang terjadi dalam deret waktu, di mana kami ingin membuat prediksi (on the fly) tentang variabel dependen dalam hal data historis (misalnya dalam jendela waktu detik terakhir ) dan, tentu saja, sebelumnya perkiraan variabel dependen?t

Dan jika Anda melihat sistem di atas dari waktu ke waktu, bagaimana seharusnya dibangun agar regresi berfungsi? Apakah kita harus melatihnya terlebih dahulu dengan memberi label, katakanlah, 50 baris pertama dari data kita (yaitu mengatur variabel dependen menjadi 0 atau 1) dan kemudian menggunakan estimasi saat ini dari vektor untuk memperkirakan probabilitas baru dari variabel dependen menjadi 0 atau 1 untuk data yang baru saja tiba (yaitu baris baru yang baru saja ditambahkan ke sistem)?β

Untuk membuat masalah saya lebih jelas, saya mencoba membangun sistem yang mem-parsing kumpulan data baris demi baris dan mencoba membuat prediksi hasil biner (variabel dependen), mengingat pengetahuan (observasi atau estimasi) semua dependen sebelumnya atau penjelasan. variabel yang telah tiba di jendela waktu tetap. Sistem saya ada di Rerl dan menggunakan R untuk inferensi.

Regressor
sumber
5
dapatkah Anda mengasumsikan struktur korelasi pada data Anda? Kasing Anda adalah kasing khusus GLMM dengan tautan logit, tetapi struktur korelasi dalam data deret waktu harus dimodelkan dengan benar untuk mendapatkan jawaban yang masuk akal.
suncoolsu
1
ketika Anda mengatakan time series, akan memiliki semacam hubungan dengan y t - 1 . Atau dapatkah itu dianggap independen? ytyt-1
suncoolsu
2
dapatkah Anda memberikan uraian singkat tentang data Anda agar saya memberikan solusi konkret? masalah Anda dapat dipecahkan sesuatu seperti stat.ethz.ch/pipermail/r-sig-mixed-models/2010q4/004530.html
suncoolsu
2
Saya memiliki rangkaian waktu lalu lintas jaringan dalam bentuk berikut: Protokol, SrcIP SrcPort, DestIP, DestPort, TimeSec, Timeusec, PackLength TCP, 200.80.199.105,3523.2020.216.233.144.9658.11223344,94181833,941818,62 UDP, 142.144.155.120 , 1751.244.72.151.2.1935, 11223344.9941843,60 Saya ingin memperkirakan apakah suatu paket (atau sekelompok paket) berbahaya dengan menggunakan pengetahuan dari kumpulan data berlabel untuk membangun model mandiri. Rata-rata yang saya bicarakan diterapkan pada metrik di atas untuk memberikan tingkat agregasi dan membuat sistem lebih praktis untuk lalu lintas volume tinggi.
Regressor
2
Ini benar-benar terdengar seperti pekerjaan untuk mesin vektor dukungan. Apakah saya melewatkan sesuatu? Jika Anda benar-benar khawatir tentang autokorelasi atau struktur time-series data Anda, Anda dapat mencoba ARIMA dan / atau model longitudinal bertingkat. Pada model longitudinal, saya merekomendasikan Willet dan Singer Applied Longitudinal Data Analysis , di mana situs UCLA ATS memiliki contoh kode R.
ashaw

Jawaban:

6

Ada dua metode untuk dipertimbangkan:

  1. Hanya gunakan sampel input N terakhir. Dengan asumsi sinyal input Anda berdimensi D, maka Anda memiliki sampel N * D per label kebenaran dasar. Dengan cara ini Anda bisa berlatih menggunakan classifier apa pun yang Anda suka, termasuk regresi logistik. Dengan cara ini, setiap output dianggap independen dari semua output lainnya.

  2. Gunakan sampel input N terakhir dan output N terakhir yang Anda hasilkan. Masalahnya kemudian mirip dengan decoding viterbi . Anda bisa menghasilkan skor non-biner berdasarkan sampel input, dan menggabungkan skor beberapa sampel menggunakan decoder viterbi. Ini lebih baik daripada metode 1. jika Anda sekarang sesuatu tentang hubungan temporal antara output.

Tuan Putih
sumber