Berapa banyak sel LSTM yang harus saya gunakan?

12

Apakah ada aturan praktis (atau aturan aktual) yang berkaitan dengan jumlah sel LSTM minimum, maksimum, dan "wajar" yang harus saya gunakan? Secara khusus saya berhubungan dengan BasicLSTMCell dari TensorFlow dan num_unitsproperti.

Harap asumsikan bahwa saya memiliki masalah klasifikasi yang ditentukan oleh:

t - number of time steps
n - length of input vector in each time step
m - length of output vector (number of classes)
i - number of training examples

Benarkah, misalnya, bahwa jumlah contoh pelatihan harus lebih besar dari:

4*((n+1)*m + m*m)*c

di mana cjumlah sel? Saya mendasarkan ini pada ini: Bagaimana cara menghitung jumlah parameter dari jaringan LSTM? Seperti yang saya pahami, ini harus memberikan jumlah total parameter, yang harus kurang dari jumlah contoh pelatihan

Komunitas
sumber
1
Saya akan memeriksa makalah ini yang dengan baik membahas topik membandingkan model deep-learning berurutan serta penyetelan hyperparameter: arxiv.org/pdf/1503.04069.pdf Singkatnya mereka menyarankan yang jelas, yang meningkatkan jumlah blok LSTM per tersembunyi lapisan meningkatkan kinerja tetapi memiliki hasil yang semakin berkurang & meningkatkan waktu pelatihan.
CubeBot88

Jawaban:

4

Jumlah minimum contoh pelatihan adalah apa yang Anda miliki di sana:

4(nm+n2)

Untuk informasi lebih lanjut lihat artikel ini: Lihat tautan ini jika Anda memerlukan bantuan visual: Jumlah parameter dalam model LSTM

Jumlah unit di setiap lapisan tumpukan dapat bervariasi. Misalnya dalam translate.py dari Tensorflow dapat dikonfigurasi ke 1024, 512 atau hampir semua nomor. Kisaran terbaik dapat ditemukan melalui validasi silang. Tapi saya telah melihat jumlah unit 1000 dan 500 di setiap lapisan tumpukan. Saya pribadi sudah menguji dengan angka yang lebih kecil juga.

Ali
sumber