Kapan seseorang ingin melakukan kliping gradien saat melatih RNN atau CNN? Saya terutama tertarik pada yang terakhir. Apa nilai awal yang baik untuk kliping? (Tentu saja bisa disetel)
sumber
Kapan seseorang ingin melakukan kliping gradien saat melatih RNN atau CNN? Saya terutama tertarik pada yang terakhir. Apa nilai awal yang baik untuk kliping? (Tentu saja bisa disetel)
Anda ingin melakukan pemotongan gradien ketika Anda mendapatkan masalah menghilang gradien atau meledak gradien. Namun, untuk kedua skenario, ada solusi yang lebih baik:
Meledak gradien terjadi ketika gradien menjadi terlalu besar dan Anda mendapatkan angka meluap. Ini dapat dengan mudah diperbaiki dengan menginisialisasi bobot jaringan ke nilai yang lebih kecil. Jika ini tidak berhasil, kemungkinan ada bug dalam kode.
Lenyapnya gradien terjadi ketika optimasi macet di titik sadel, gradien menjadi terlalu kecil untuk optimasi untuk maju. Ini dapat diperbaiki dengan menggunakan gradient descent dengan momentum atau RMS prop atau keduanya (juga dikenal sebagai pengoptimal Adam).
Nilai awal untuk batas atas kliping gradien akan menjadi sesuatu yang lebih kecil daripada jumlah terbesar yang bisa diambil oleh variabel. Untuk batas bawah, saya akan mengatakan itu adalah masalah khusus tetapi mungkin mulai dengan sesuatu seperti 1e-10.