Pelatihan Jaringan Neural: Praktik Terbaik

Bagian ini menjelaskan kasus kegagalan propagasi mundur dan cara paling umum untuk meregulasi jaringan neural.

Kasus Kegagalan

Ada sejumlah kesalahan umum yang menyebabkan propagasi mundur.

Gradien yang Hilang

Gradien untuk lapisan yang lebih rendah (lebih dekat dengan input) bisa menjadi sangat kecil. Di jaringan dalam, menghitung gradien ini dapat melibatkan perkalian banyak istilah kecil.

Jika gradien menghilang ke 0 untuk lapisan yang lebih rendah, lapisan ini dilatih dengan sangat lambat, atau tidak dilatih sama sekali.

Fungsi aktivasi ULT dapat membantu mencegah hilangnya gradien.

Gradien yang Meledak

Jika bobot dalam jaringan sangat besar, gradien untuk lapisan yang lebih rendah melibatkan perkalian banyak suku besar. Dalam hal ini, Anda dapat memiliki gradien yang meledak: gradien yang terlalu besar untuk disatukan.

Normalisasi batch dapat membantu mencegah gradien yang meledak, karena dapat menurunkan kecepatan pemelajaran.

Unit ULT yang Mati

Setelah jumlah bobot untuk unit ULT turun di bawah 0, unit ULT dapat macet. Class ini menghasilkan aktivasi 0, yang tidak berkontribusi pada output jaringan, dan gradien tidak dapat lagi mengalir melaluinya selama propagasi mundur. Dengan pemotongan sumber gradien, masukan ke ULT mungkin tidak akan pernah cukup berubah untuk membawa jumlah bobot kembali di atas 0.

Menurunkan kecepatan pemelajaran dapat membantu unit ULT agar tidak mati.

Regularisasi dengan Pelepasan

Bentuk lain dari regularisasi, yang disebut Pelolosan, berguna untuk jaringan neural. Berfungsi dengan "meloloskan" aktivasi unit secara acak di jaringan untuk satu langkah gradien. Semakin sering Anda meloloskan, semakin kuat regularisasi tersebut:

  • 0,0 = Tidak ada regularisasi dengan pelolosan.
  • 1,0 = Meloloskan semuanya. Model tidak mempelajari apa pun.
  • Nilai antara 0,0 dan 1,0 = Lebih berguna.