Klasifikasi deret waktu multivarian

9

Saya memiliki satu set data yang terdiri dari deret waktu (8 poin) dengan sekitar 40 dimensi (jadi setiap deret waktu 8 per 40). Ouput yang sesuai (hasil yang mungkin untuk kategori) adalah eitheir 0 atau 1.

Apa yang akan menjadi pendekatan terbaik untuk merancang classifier untuk deret waktu dengan berbagai dimensi?

Strategi awal saya adalah mengekstraksi fitur dari deret waktu tersebut: rata-rata, std, variasi maksimum untuk setiap dimensi. Saya memperoleh dataset yang saya gunakan untuk melatih RandomTreeForest. Sadar akan kenaifan total ini, dan setelah mendapatkan hasil yang buruk, saya sekarang mencari model yang lebih baik.

Petunjuk saya adalah sebagai berikut: mengklasifikasikan seri untuk setiap dimensi (menggunakan algoritma KNN dan DWT), mengurangi dimensi dengan PCA dan menggunakan classifier akhir sepanjang kategori multidimensi. Menjadi relatif baru untuk ML, saya tidak tahu apakah saya benar-benar salah.

AugBar
sumber
Apa yang Anda lakukan adalah pendekatan yang cukup bagus. Berapa banyak sampel yang Anda miliki di dataset Anda?
Kasra Manshaei
Saya memiliki sekitar 500 000 seri waktu (mengingat bahwa setiap seri waktu adalah 8 stempel waktu * 40 dimensi)
AugBar
Sudahkah Anda mencoba menggunakan 320 fitur mentah? 320 fitur tidak banyak untuk 500.000 sampel
Jan van der Vegt
@Jan van der Vegt: Saya telah mencoba metode itu menggunakan jaringan saraf, tetapi hasilnya tidak begitu meyakinkan - saya menggunakan data mentah tanpa pra-pemrosesan. Operasi apa yang harus saya terapkan sebelumnya pada raws 320-fitur saya untuk memberi makan classifier?
AugBar
1
Dalam hal jaringan saraf menormalkan input Anda adalah penting, tergantung pada berbagai fitur yang mungkin penting. Tetapi saya hanya akan memasukkan fitur-fitur mentah ke dalam RF dan melihat seberapa bagus kerjanya, membutuhkan penyetelan yang lebih sedikit untuk melihat apakah Anda bisa mendapatkan sesuatu dengan mudah
Jan van der Vegt

Jawaban:

5

Anda berada di jalur yang benar. Lihatlah menghitung beberapa fitur lagi, baik dalam waktu dan domain frekuensi. Selama jumlah sampel >> jumlah fitur, Anda tidak akan berpakaian berlebihan. Apakah ada literatur tentang masalah yang sama? Jika demikian, itu selalu memberikan titik awal yang bagus.

Coba classifier pohon yang ditingkatkan, seperti xgboost atau LightGBM. Mereka cenderung lebih mudah untuk menyetel hyperparameter, dan memberikan hasil yang baik dengan parameter default. Baik Random Forest dan classifier pohon yang ditingkatkan dapat mengembalikan fitur penting, sehingga Anda dapat melihat fitur mana yang relevan dengan masalah tersebut. Anda juga dapat mencoba menghapus fitur untuk memeriksa kovarians apa pun.

Namun yang paling penting, jika hasil Anda buruk, pastikan masalah Anda didefinisikan dengan benar. Periksa hasil Anda secara manual untuk memastikan tidak ada bug di saluran Anda.

mpotma
sumber
2

Anda dapat menambahkan lebih banyak fitur ke dataset Anda seperti di bawah ini.

  1. Anda dapat mencoba paket nold jika data Anda berasal dari proses yang sangat tidak linier.

  2. maks, min, rata-rata, condong, kurtosis, dan jika mungkin beberapa statistik bergulir.

Saya mengerjakan sesuatu yang serupa, dan saya mengajukan pertanyaan terkait .

Anurag Upadhyaya
sumber
1

Saya setuju dengan Jan van der Vegt, standardisasi (misalnya, [-1, 1]) atau normalisasi N (0, 1) dikombinasikan dengan fungsi aktivasi bisa sangat penting dengan jaringan saraf. Saya akan memeriksa disertasi Pichaid Varoonchotikul: "Perkiraan banjir menggunakan jaringan saraf tiruan" untuk seluk beluk ANNs. Ini memiliki peringatan yang sangat menarik. Ngomong-ngomong, saya terbiasa mencoba dulu tanpa, tetapi ketika hasilnya tidak memuaskan, saya terbiasa melakukan uji coba dengan keduanya. Tidak yakin itu akan membantu tetapi saya akan memeriksa TSclust paket R dan dokumen terkait. Para penulis sangat ramah dan mereka akan membantu Anda menemukan model spesifik untuk melakukannya. Mereka ahli dalam analisis deret waktu! Semoga berhasil!

Rafa M. Mas
sumber