Recurrent Neural Network (RNN)

Neural Network yang punya "memori" - mampu memproses data sekuensial seperti teks, kata per kata

Mengapa RNN? Masalah dengan Neural Network Biasa

Neural Network Biasa (Feedforward)

- Memproses semua input sekaligus
- Tidak mengerti urutan
- "kucing makan ikan" = "ikan makan kucing"
- Input harus ukuran tetap

RNN

- Memproses input satu per satu (sekuensial)
- Mengingat konteks sebelumnya via hidden state
- Memahami urutan kata
- Bisa menerima input panjang bervariasi

1. RNN Dasar - Memproses Kata per Kata

RNN membaca kata satu per satu. Setiap langkah, ia menggabungkan kata baru dengan "memori" dari kata-kata sebelumnya (hidden state).

h_t = tanh( W_hh * h_(t-1) + W_xh * x_t + b_h )
y_t = W_hy * h_t + b_y
Hidden State = Memori: Bayangkan Anda membaca buku. Setiap kata yang Anda baca, otak Anda menggabungkan kata baru dengan pemahaman kalimat sejauh ini. Hidden state adalah "pemahaman sejauh ini" dari RNN.

2. LSTM - Long Short-Term Memory

RNN biasa punya masalah: ia melupakan informasi dari kata-kata yang jauh (vanishing gradient). LSTM menyelesaikan ini dengan "gerbang" yang mengontrol apa yang diingat dan dilupakan.

3 Gerbang LSTM:
1. Forget Gate (Gerbang Lupa): Memutuskan informasi apa yang harus dilupakan dari memori lama
2. Input Gate (Gerbang Input): Memutuskan informasi baru apa yang disimpan ke memori
3. Output Gate (Gerbang Output): Memutuskan bagian memori mana yang menjadi output

Analogi: Seperti menulis catatan. Forget gate = menghapus catatan lama yang tidak relevan. Input gate = menulis catatan baru. Output gate = memilih catatan mana yang dibaca saat ini.

3. Sequence-to-Sequence: Fondasi Menuju Transformer

Dengan menggabungkan dua RNN (encoder + decoder), kita bisa mengubah satu sekuens ke sekuens lain - misalnya terjemahan bahasa. Ini adalah cikal bakal arsitektur encoder-decoder.

Masalah Seq2Seq: Semua informasi input dikompresi menjadi satu vektor (bottleneck). Untuk kalimat panjang, informasi bisa hilang. Ini yang memotivasi penemuan Attention Mechanism dan akhirnya Transformer di halaman berikutnya!
← Neural Network Selanjutnya: Autoencoder →