Bagaimana Self-Attention menghitung hubungan antar token?
Keuntungan pemrosesan paralel pada Transformer?
Fungsi positional encoding dalam Transformer?
Perbedaan utama Multi-Head vs Single-Head Attention?
Reference Points
Attention & Transformer Slides (Halaman 17-20)
Vaswani et al. (2017) Paper Original Transformer
Arsitektur Transformer
Transformer memperkenalkan pendekatan baru dalam pemrosesan sequence yang sepenuhnya mengandalkan mekanisme attention tanpa menggunakan RNN atau LSTM. Arsitektur ini terdiri dari encoder dan decoder yang masing-masing memiliki beberapa lapisan identik, tetapi tidak seperti model seq2seq tradisional, Transformer memproses seluruh sequence secara paralel.
Komponen utama Transformer:
Self-Attention Layer: Menghitung bobot penting antar setiap elemen dalam sequence
Feed-Forward Network: Memproses representasi secara independen untuk setiap posisi
Positional Encoding: Memberikan informasi urutan temporal tanpa rekurensi
Contoh analogi: Bayangkan tim penerjemah yang bekerja bersama-sama. Setiap anggota (token) dapat langsung berkomunikasi dengan semua anggota lain (melalui self-attention) untuk memahami konteks lengkap, bukan hanya mengandalkan informasi dari anggota sebelumnya seperti dalam RNN.
Mekanisme Self-Attention
Self-Attention memungkinkan setiap token dalam sequence untuk “memperhatikan” semua token lain dengan bobot berbeda yang dihitung secara dinamis. Proses ini melibatkan tiga vektor utama:
Query (Q): Representasi token saat ini yang mencari informasi
Key (K): Representasi token lain yang menjadi target perhatian
Value (V): Nilai aktual yang akan diagregasikan
Rumus dasar Self-Attention:
[ \text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V ]
Contoh praktis: Dalam kalimat “Kucing itu duduk di atas kursi yang merah”, kata “yang” akan memiliki bobot attention tinggi ke “kursi” untuk memahami kata benda yang dimodifikasi.
Multi-Head Attention
Transformer menggunakan Multi-Head Attention untuk menangkap berbagai jenis hubungan secara paralel. Setiap “head” mempelajari pola attention yang berbeda:
Head 1 mungkin fokus pada hubungan kata benda-pronomina
Head 2 menangkap relasi struktur kalimat
Head 3 memperhatikan konteks posisional
Hasil dari semua head kemudian digabungkan (concatenated) dan diproyeksikan ke dimensi akhir. Pendekatan ini memungkinkan model untuk memahami berbagai jenis dependensi dalam data secara simultan.
Positional Encoding
Karena Transformer tidak memiliki informasi urutan bawaan seperti RNN, positional encoding ditambahkan untuk memberikan informasi posisi token. Metode yang umum digunakan adalah fungsi sinusoidal:
[ PE_{(pos,2i)} = \sin\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right) ]
[ PE_{(pos,2i+1)} = \cos\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right) ]
Contoh implementasi: Untuk kalimat “Saya belajar NLP”, setiap kata akan mendapatkan vektor posisi unik yang ditambahkan ke embedding-nya, memungkinkan model membedakan urutan tanpa rekurensi.
Keunggulan Arsitektur Transformer
Paralelisasi Penuh: Memproses seluruh sequence sekaligus berbeda dengan RNN yang sequential
Efisiensi Komputasi: Kompleksitas O(n²·d) lebih baik daripada O(n·d²) pada RNN untuk sequence panjang
Kemampuan Menangkap Ketergantungan Jarak Jauh: Tidak ada masalah vanishing gradient seperti pada RNN
Skalabilitas: Mudah diadaptasi untuk berbagai task dengan transfer learning
Studi kasus: Dalam terjemahan mesin, Transformer dapat memproses kalimat 50 kata 5x lebih cepat dibanding LSTM dengan akurasi lebih tinggi.
Summary
Transformer merevolusi pemrosesan sequence dengan menggantikan rekurensi menggunakan mekanisme self-attention yang memungkinkan pemrosesan paralel penuh. Arsitekturnya yang terdiri dari encoder-decoder dengan multi-head attention dan positional encoding mengatasi keterbatasan RNN dalam menangani dependensi jarak jauh. Paralelisasi yang unggul memungkinkan pelatihan model skala besar, membuka era transfer learning dalam NLP. Penggunaan layer normalisasi dan residual connection meningkatkan stabilitas pelatihan model deep.