- Menjelaskan struktur dan prinsip kerja model Transformer secara visual, serta menunjukkan bagaimana mekanisme attention meningkatkan pembelajaran paralel dan performa terjemahan
- Model terdiri dari tumpukan encoder dan decoder, dan setiap encoder memiliki dua lapisan: self-attention dan jaringan saraf feedforward
- Proses perhitungan self-attention dijelaskan langkah demi langkah hingga tingkat vektor dan matriks, lalu diperluas dengan multi-head attention agar dapat mempelajari beragam ruang representasi
- Memvisualisasikan secara konkret komponen inti seperti positional encoding, residual connection, layer normalization, dan masked attention pada decoder
- Artikel ini merupakan referensi populer yang membantu memahami konsep dasar Transformer dengan mudah, dan juga digunakan dalam kuliah serta materi ajar universitas besar seperti MIT dan Stanford
Gambaran umum Transformer
- Transformer adalah model terjemahan mesin saraf berbasis attention yang menunjukkan performa lebih tinggi pada tugas tertentu dibanding Google Neural Machine Translation sebelumnya
- Keunggulan utamanya adalah mudah diparalelkan, dan direkomendasikan sebagai model referensi di Google Cloud TPU
- Model tersusun dari tumpukan encoder dan decoder, dan tiap encoder memiliki struktur yang sama tetapi tidak berbagi bobot
- Input encoder melewati lapisan self-attention untuk menggabungkan informasi konteks, lalu diteruskan ke jaringan saraf feedforward
- Decoder menambahkan lapisan attention encoder-decoder di atas struktur encoder agar dapat berfokus pada bagian relevan dari kalimat masukan
Alur tensor dan embedding
- Kalimat masukan diubah menjadi vektor 512 dimensi untuk setiap kata melalui algoritme word embedding
- Setiap lapisan encoder menerima dan memproses daftar vektor dengan ukuran yang sama, sementara panjang kalimat ditetapkan sebagai hyperparameter
- Lapisan feedforward memproses vektor di tiap posisi secara independen, sehingga komputasi paralel dimungkinkan
Konsep self-attention
- Self-attention memungkinkan tiap kata merujuk pada kata lain dalam kalimat untuk mempelajari representasi yang lebih baik
- Contoh: dalam “The animal didn’t cross the street because it was too tired”, kata “it” berkaitan dengan “animal”
- Berbeda dengan pemeliharaan hidden state pada RNN, Transformer menggabungkan informasi konteks melalui self-attention
Tahapan perhitungan self-attention
- Dari setiap embedding kata, dibuat vektor Query, Key, Value (dimensi 64)
- Dot product antara Query dan Key digunakan untuk menghitung skor keterkaitan antar kata
- Skor dibagi dengan √64 lalu diterapkan softmax untuk dinormalisasi menjadi distribusi probabilitas
- Setiap vektor Value dikalikan dengan skor softmax lalu dijumlahkan untuk menghasilkan output attention akhir
- Pada implementasi nyata, proses ini dilakukan dengan operasi matriks agar lebih efisien
Multi-head attention
- Menggunakan beberapa attention head (default 8) untuk mempelajari berbagai ruang representasi
- Tiap head memiliki matriks bobot Q/K/V yang independen
- Output dari beberapa head kemudian digabungkan (concat) dan dikombinasikan dengan matriks bobot tambahan WO
- Dengan cara ini, model dapat menangkap berbagai aspek konteks secara bersamaan
Positional encoding
- Karena Transformer tidak secara langsung memproses urutan, vektor posisi ditambahkan ke setiap embedding kata
- Vektor posisi dibuat menggunakan fungsi sin dan cos, sehingga memberikan informasi jarak relatif antar kata
- Pendekatan ini juga dapat diperluas ke kalimat yang lebih panjang daripada data pelatihan
- Pembaruan tahun 2020 juga memperkenalkan metode untuk menyelang-nyelingkan (interleave) dua sinyal tersebut
Residual connection dan normalisasi
- Setiap sublapisan (self-attention, feedforward) menerapkan residual connection dan layer normalization
- Struktur ini membantu mencegah vanishing gradient dan meningkatkan stabilitas pelatihan
Struktur decoder
- Decoder menerima vektor Key/Value dari output encoder untuk melakukan attention encoder-decoder
- Masking digunakan agar model tidak merujuk pada kata di masa depan
- Pada tahap akhir, lapisan Linear dan lapisan Softmax menghasilkan distribusi probabilitas kata
- Misalnya, jika ukuran kosakata adalah 10.000, maka setiap vektor output diubah menjadi distribusi probabilitas berdimensi 10.000
Pelatihan dan fungsi loss
- Saat pelatihan, distribusi probabilitas output model dibandingkan dengan distribusi jawaban benar (one-hot encoding)
- Cross-entropy atau KL divergence digunakan untuk menghitung galat, lalu bobot disesuaikan melalui backpropagation
- Beam search mempertahankan beberapa kandidat terjemahan sekaligus untuk meningkatkan akurasi
Riset lanjutan dan referensi
- Makalah terkait: Attention Is All You Need, Training Tips for the Transformer Model, Self-Attention with Relative Position Representations, dan lainnya
- Materi implementasi: paket Tensor2Tensor, panduan Harvard NLP PyTorch, Colab Notebook
- Transformer kemudian berkembang ke versi yang diperluas di LLM-book.com (Chapter 3), yang membahas model terbaru seperti Multi-Query Attention dan embedding posisi RoPE
Kesimpulan
- Transformer adalah arsitektur berbasis attention yang dapat diparalelkan, dan telah menjadi model inti dalam deep learning modern
- Artikel ini adalah referensi representatif yang menjelaskan struktur, matematika, dan intuisi Transformer secara visual, dan digunakan sebagai bahan rujukan dalam kuliah di Stanford, MIT, Harvard, dan universitas besar lainnya
Belum ada komentar.