Sebagai pemanasan dengan jaringan saraf berulang, saya mencoba memprediksi gelombang sinus dari gelombang sinus lain dari frekuensi lain.
Model saya adalah RNN sederhana, forward pass-nya dapat dinyatakan sebagai berikut:
Ketika kedua input input dan output yang diharapkan adalah dua gelombang sinus dari frekuensi yang sama tetapi dengan (mungkin) pergeseran fasa, model ini mampu melakukan konvergensi yang tepat dengan pendekatan yang masuk akal.
Namun, dalam kasus berikut, model konvergen ke minimum lokal dan memprediksi nol setiap saat:
- input:
- hasil yang diharapkan:
Inilah yang diprediksi jaringan ketika diberi urutan input penuh setelah 10 zaman pelatihan, menggunakan batch mini ukuran 16, tingkat pembelajaran 0,01, panjang urutan 16 dan lapisan tersembunyi ukuran 32:
Yang membuat saya berpikir jaringan tidak dapat belajar melalui waktu dan hanya mengandalkan input saat ini untuk membuat prediksi.
Saya mencoba untuk menyetel tingkat belajar, panjang urutan dan ukuran lapisan tersembunyi tanpa banyak keberhasilan.
Saya mengalami masalah yang sama persis dengan LSTM. Saya tidak ingin percaya bahwa arsitektur ini cacat, ada petunjuk tentang apa yang saya lakukan salah?
Saya menggunakan paket rnn untuk Torch, kodenya ada di Gist .