Anda di halaman 1dari 5

Resume Deep Learning-RNN

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.

Recurrent Neural Network pada prinsipnya mirip seperti neural network biasa, namun dengan
tambahan memory-state pada neuronnya. RNN mampu menyimpan memori atau ingatan
(feedback loop) yang memungkinkan untuk mengenali pola data dengan baik, kemudian
menggunakannya untuk membuat prediksi yang akurat.

Cara yang dilakukan RNN untuk dapat menyimpan informasi dari masa lalu adalah dengan
melakukan perulangan di dalam arsitekturnya, di mana data output disalin dan digunakan
kembali sebagai data input yang secara otomatis membuat informasi dari masa lalu tetap
tersimpan. Hal ini juga menjadi alasan kenapa algoritma ini disebut sebagai recurrent neural
network atau jaringan saraf berulang. Disebut recurrent atau berulang karena melakukan
perhitunga

Cara Kerja Algoritma RNN

Algoritma Recurrent Neural Network bekerja menganut prinsip perulangan dengan cara
menyimpan output dari layer tertentu dan mengumpankannya kembali sebagai input untuk
memprediksi output layer.

Sumber javatpoint.com

Pada neural network biasa, semua input dan output independen satu sama lain. Namun dalam
kasus tertentu seperti ketika hendak memprediksi kata berikutnya dari sebuah kalimat, maka
diperlukan kata-kata sebelumnya. Pada kasus seperti itu kita perlu menyimpan informasi
berupa kata-kata sebelumnya. RNN muncul untuk memecahkan masalah ini dengan bantuan
hidden layer. Fitur utama dan terpenting dari RNN adalah hidden state, yang mengingat
beberapa informasi mengenai urutan dari data.

Sebagai 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.

Adapun yang dilakukan algoritma 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.
Contoh Penerapan Algoritma RNN

Berikut adalah beberapa contoh penerapan algoritma RNN:

1. Mesin penerjemah

Recurrent Neural Network digunakan pada mesin penerjemah untuk menerjemahkan teks dari
satu bahasa ke bahasa lain. Contohnya seperti Google Translate. Untuk memberikan hasil
terjemahan yang akurat, algoritma RNN dikombinasikan dengan model lain seperti LSTM
(Long short-term memory)

2. Pengenalan suara

RNN dikolaborasikan dengan LSTM dapat digunakan untuk mengenali suara seperti pidato
dan mengubahnya menjadi teks tanpa kehilangan konteks atau maksud dari kalimat yang
disampaikan.
Sumber: javatpoint.com

3. Prediksi harga berdasarkan data

Di industri keuangan, RNN dapat membantu memprediksi harga saham atau tanda arah pasar
saham (positif atau negatif).

4. Autocaption pada gambar.

RNN dipadukan dengan algoritma CNN dapat dipakai untuk mendeteksi gambar dan
memberikan deskripsi singkat mengenai gambar tersebut dalam bentuk tag atau teks.
Misalnya gambar berikut dapat dideskripsikan menjadi “gambar mungkin berisi 1 orang
sedang duduk dan di luar ruangan”

Sumber: medium.com

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.

Sebagai kesimpulan, algoritma 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.

Anda mungkin juga menyukai