Ketiga istilah di atas sering muncul ketika kita sedang belajar atau implementasi model neural network, khususnya ketika membahas Gradient Descent. Batch, epoch, dan step, adalah sebagian istilah yang digunakan menjelaskan proses iterasi di Gradient Descent. Istilah-istilah itu tidak hanya ditemukan di buku teori, tetapi juga di dokumentasi-dokumentasi framework yang akan kita gunakan. Karenanya, sangat penting untuk bisa membedakannya dengan baik.
Gradient Descent
Gradient descent adalah algoritma optimasi yang digunakan untuk menemukan parameter yang menghasilkan nilai minimum pada suatu fungsi. Dalam kasus neural network, Gradient Descent digunakan untuk menemukan bobot model terbaik yang menghasilkan error minimum. Detail perhitungan gradient descent contohnya ada pada partikel sebelumnya, sedangkan implementasinya dapat di baca di artikel berikut ini.
Secara umum, langkah yang dilakukan untuk mencerdaskan model neural network menggunakan gradient descent adalah sebagai berikut:
- Sebuah input-xi masuk ke model neural network, lalu menghasilkan output / error Ei (forward propagation)
- Gradient descent terhadap output / error E untuk mengupdate nilai bobot model W (backward propagation)
- Lakukan kedua langkah di atas terhadap semua data berkali-kali hingga diperolah model terbaik.
Untuk kemudahan penjelasan, poin no. 1 di atas akan kami sebut sebagai Langkah 1 (bold dengan warna orange) dan poin no. 2 akan kami sebut sebagai Langkah 2 (bold dengan warna ungu)

Langkah-langkah di atas masih cukup umum, Jika ada lebih dari satu data langkahnya seperti apa? Dari sinilah akan muncul istilah-istilah di awal tadi. Misalkan kita memiliki 100 data latih, maka urutan yang dilakukan pada Gradient Descent adalah:
- Lakukan Langkah 1 untuk setiap data (dari data latih ke 1 hingga 100), sehingga diperoleh 100 nilai eror Ei
- Dari 100 nilai error itu, kita hitung rata-ratanya untuk memperoleh sebuah nilai error E
- Lakukan Langkah 2 menggunakan E untuk mengupdate W (hanya 1x)

Langkah diatas terjadi dalam satu epoch. Untuk mendapatkan model yang baik kita perlu mengulangi langkah di atas lebih dari satu kali (beberapa epoch).
Continue readingDefinisi sebuah Epoch, adalah ketika kita telah menggunakan semua data latih pada proses pelatihan. Pada contoh di atas, kita sudah melalui sebuah epoch karena kita telah menggunakan 100 data latih yang kita miliki.
Pada contoh tersebut sebuah epoch terdiri dari 100 kali Langkah 1 dan 1 kali Langkah 2.









