Recurrent Neural Network (RNN)
Taufik Nurhidayat 2117051101 Siti Nadya Arrahma 2117051102
Pengertian Recurrent Neural Network
Recurrent Neural Network atau yang biasa disingkat RNN merupakan salah satu jenis algoritma Deep learning yang menerapkan pendekatan berurutan atau sequential. RNN termasuk ke dalam jenis Artificial Neural Network (ANN) yang umumnya digunakan pada rekognisi suara (speech recognition) dan Natural Language Processing (NLP). RNN digunakan pada deep learning untuk pengembangan model yang bekerja meniru aktivitas neuron yang ada di otak manusia.
RNN didesain untuk mengenali pola dalam urutan data, seperti teks, tulisan tangan, ucapan kata, dan data numerik berbentuk time series, misalnya data yang berasal dari sensor dan data pergerakan pasar saham.
TIPE RECURRENT NEURAL NETWORK (RNN)
One to One
One to Many
Many to One
Many to Many 01
02
03
04
Contoh Penerapan RNN
Mesin Penerjemah Pengenalan Suara
Prediksi Harga
Berdasarkan Data Autocaption Pada Gambar
01
03 04
02
Cara Kerja RNN
Recurrent Neural Network bekerja menganut prinsip perulangan dengan cara menyimpan output dari layer tertentu dan
mengumpankannya kembali
sebagai input untuk memprediksi
output layer.
Contoh
Misalkan terdapat deep network dengan satu input layer, tiga hidden layer dan satu output layer. Kemudian seperti neural network lainnya, setiap hidden layer akan memiliki bobot dan biasnya sendiri, misalkan untuk hidden layer 1 bobot dan biasnya adalah (w1, b1), (w2, b2) untuk hidden layer kedua dan (w3, b3) untuk hidden layer ketiga. Masing-masing lapisan ini independen satu sama lain, yaitu tidak menyimpan keluaran sebelumnya.
Contoh (Lanjutan)
Adapun yang dilakukan RNN yaitu mengubah aktivasi independen menjadi aktivasi dependen dengan memberikan bobot dan bias yang sama untuk semua layer. Hal ini akan mengurangi
kompleksitas parameter dan menghafal setiap output sebelumnya.
Caranya dengan menjadikan setiap output sebagai input ke hidden layer berikutnya. Ketiga layer tersebut dapat digabungkan bersama sehingga bobot dan bias dari semua hidden layer adalah sama, menjadi satu lapisan berulang.
Kelebihan RNN
● Algoritma RNN dimodelkan untuk menyimpan setiap informasi secara berurutan yang sangat membantu pada tugas prediksi time series.
● RNN dapat digunakan pada lapisan konvolusi (convolutional) untuk memperluas piksel tetangga saat melakukan proses pengenalan gambar.
● RNN dapat memproses input dengan panjang berapa pun. Bahkan jika ukuran input lebih besar, ukuran model RNN tidak bertambah.
● RNN dapat menggunakan memory internal untuk memproses rangkaian input yang berubah-ubah yang tidak terjadi pada jaringan syaraf tiruan berstruktur feedforward (feedforward neural network).
Kekurangan RNN
● Karena sifatnya yang berulang, proses komputasinya lambat.
● Melatih model RNN bisa jadi tugas yang sulit.
● Tidak dapat memproses urutan yang sangat panjang jika menggunakan tanh atau relu sebagai fungsi aktivasi.
Kesimpulan
Recurrent Neural Network (RNN) adalah salah satu algoritma deep learning yang dapat digunakan untuk mengenali pola dan melakukan prediksi pada data numerik berbentuk time series, misalnya ramalan cuaca dan prediksi harga saham.
Hal ini karena RNN dirancang untuk bekerja meniru aktivitas neuron otak manusia, yang mengingat dan menghimpun informasi yang didapatkan sebelumnya untuk memprediksi masa depan.