Dokumen tersebut menjelaskan proses mempelajari parameter jaringan saraf tiruan dengan menggunakan fungsi kerugian cross-entropy dan gradient descent untuk meminimalkan fungsi kerugian tersebut dengan memperbarui parameter jaringan. Dokumen juga membahas algoritma backpropagation untuk menghitung gradient fungsi kerugian terhadap setiap parameter jaringan.
1 of 6
Download to read offline
More Related Content
Additional Files - Implementing a Neural Network 2
2. Mempelajari parameter untuk jaringan berarti mencari
parameter (1. 1. 2. 2) yang meminimalisasi error
pada pelatihan data. Bagaimana cara mengdefenisikan
kesalahan? Kami menyebutnya loss function yang
berfungsi mengukur error. Cross-entropy loss (atau
biasa disebut dengan negative log likelihood) yang
umum digunakan pada output softmax. Jika kita
memiliki contoh training dan kelas lalu loss pada
untuk label ialah pada rumusan berikut:
3. , =
1
=
, log ,
Formula diatas memang terlihat rumit tetapi rumusan ini memang
ditujukan untuk menjumlahkan semua contoh training dan
menambahkan loss (jika kita prediksi kelas ternyata salah).
Semakin jauh dua distribusi kemungkinan (label yang benar)
dan (prediksi) maka akan semakin besar kerugian (loss) yang
akan terjadi. Dengan mencari parameter yang meminimalisasi
kekurangan (loss) sejatinya kita akan memaksimalkan
kemungkinan (likelihood) pada training data kita.
4. Kita bisa menggunakan gradient descent untuk mencari
minimumnya dan kami akan mengimplementasi gradient
descent yang vanilla version, yang juga biasa disebut dengan
batch gradient descent dengan learning rate yang sudah fix.
Variasi lainnya seperrti SGD (Stochastic Gradient Descent) atau
minibatch gradient descent biasanya menunjukkan performa
lebih baik pada percobaan. Jadi jika anda cukup serius
menggunakan salah satu dari teknik diatas, maka idealnya
anda juga memperbaiki kerusakan pada learning rate
nantinya.
5. Untuk input, gradient descent membutuhkan gradient
(vector derivatives) untuk fungsi yang hilang (loss)
untuk parameter ini
1
,
1
,
2
,
2
. Untuk
menghitung gradient tersebut kami menggunakan
algoritma backpropagation, yang efesien untuk
mengkalkulasi gradient mulai dari ouptunya. Kami tidak
akan membahas lebih detail mengenai
backpropagation tetapi penjelasannya bisa anda
dapatkan di dua link ini ini: 1 dan 2.
6. Berikut ialah formula untuk backpropagation:
3 =
2 = 1 tanh2 1 3 2
2
= 1
3
1
= 3
1
= 2
1
= 2