Deep Learning: Recurrent Neural Networks

Deep Learning: Recurrent Neural Networks

Gerbang pertama (forget gate)

Di gerbang pertama ini, ia akan memutuskan apakah meneruskan informasinya atau tidak (dengan melupakannya). Semua vektor yang berasal dari Xt-1 dan It harus melalui gerbang ini.

Dengan menggunakan fungsi aktivasi sigmoid (dengan nilai 0-1) ia bisa menentukan apakah akan meneruskan informasi ini atau tidak. Jika dikalikan dengan angka mendekati 1, maka ia akan meneruskan informasinya. Jika dikalikan dengan angka mendekati nol, maka informasi ini cenderung untuk dilupakan.

Dengan demikian, informasi yang melewati cell state akan dikalikan dengan nilai ini (diilustrasikan oleh simbol X di gambar). Untuk memudahkan pemahaman, mari kita lihat ilustrasi bergeraknya sebagai berikut.

Gerbang pertama di LSTM

Gerbang kedua (input gate)

Untuk bisa melakukan update terhadap cell state (jalur paling atas), maka diperlukan input gate. Di sini informasi dari Xt-1 dan It akan melewati dua fungsi aktivasi, yaitu sigmoid dan tanh.

Pertanyaannya, mengapa menggunakan sigmoid dan tanh? Penggunaan sigmoid untuk memutuskan informasi mana yang akan diupdate. Kemudian penggunaan tanh adalah untuk mewakili informasi yang berasal dari Xt-1 dan It, di mana ini juga nantinya akan merubah informasi di cell state (kita harapkan informasi yang melewati cell state membawa unsur dari Xt-1 dan It).

Selanjutnya, hasil dari dua fungsi aktivasi ini akan saling dikalikan. Setelah itu, hasil perkaliannya akan dijadikan dasar untuk merubah nilai informasi yang melewati cell state.

Proses perubahan nilai cell state dilakukan dengan cara menjumlahkannya dengan informasi yang melewati cell state (diilustrasikan oleh simbol + di gambar). Untuk memudahkan pemahaman, mari kita lihat ilustrasi bergeraknya sebagai berikut.

Gerbang kedua di LSTM

Cell state

Setelah sebuah informasi melewati gerbang pertama dan gerbang kedua, sekarang kita bisa menghitung nilai dari cell state. Nilai ini merupakan hasil dari perkalian dari output gerbang satu dan penjumlahan dari output gerbang dua. Sangat mudah memahaminya jika melihat ilustrasi berikut.

Proses perubahan nilai cell state dari dua gerbang sebelumnya

Gerbang ketiga (output gate)

Gerbang ini berguna untuk menentukan input bagi state selanjutnya (t+1). Karena state selanjutnya harus mengakomodir informasi dari state sebelumya, maka input dari gerbang ini juga Xt-1 dan It. Nilai Xt-1 dan It masuk ke aktivasi sigmoid, yang nantinya akan dikalikan oleh hasil dari perkalian antara cell state yang baru dengan fungsi tanh. Ilustrasi mudahnya adalah sebagai berikut.

Gerbang ketiga (output gate)

Sekarang, setelah kita memahami desain dari LSTM kita mengetahui bahwa LSTM mampu mengatasi masalah vanishing dan expliding gradient problems. Bentuk dari arsitektur LSTM juga ternyata ada banyak. Salah satu yang juga populer adalah GRU (Gated recurrent unit). Namun secara umum, desain LSTM yang kita bahas ini juga sudah baik.

Kombinasi RNN dan LSTM dapat digunakan di sekian banyak aplikasi. Aplikasi yang paling umum adalah yang berhubungan dengan time-series (berhubungan dengan waktu). Sehingga segala data yang memiliki satuan terhadap waktu, misal data hari ke 1 sampai data hari ke 365 (data satu tahun) sangat bisa dilatih menggunakan RNN+LSTM. Selain itu, teknik kombinasi ini juga bisa digunakan untuk data real time, seperti penerjemah online baik berupa suara maupun tulisan. Menarik bukan?

Dalam pembahasan aplikasi RNN di materi selanjutnya kita akan mencoba memprediksi nilai (harga) saham di bursa efek.

Jadi nantikan terus tulisan-tulisan di website saya. Saya harap pembaca masih semangat untuk belajar AI bersama saya.

Semoga pembahasan kali ini bermanfaat. Jika ada pertanyaan silakan tulis komentar di bawah.

Terima kasih.

Pages: 1 2 3 4

Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments