Apa sih Transformers di LLM ?

Transformers merupakan salah satu arsitektur neural network yang lagi hype banget dalam hal pemrosesan bahasa alami (Natural Language Processing, NLP) akhir-akhir ini. Arsitektur ini dikenalkan dalam makalah berjudul “Attention Is All You Need” oleh Vaswani dkk. pada tahun 2017. Pada postingan kali ini, kita akan belajar bagaimana transformers bekerja dan mengapa “attention” menjadi komponen kunci dalam arsitektur ini.

  1. Latar Belakang: Sequence-to-Sequence Model.
    Sebelum munculnya transformers, banyak model NLP seperti RNN (Recurrent Neural Network) dan LSTM (Long Short-Term Memory) yang bekerja dengan cara mengambil satu input pada setiap waktu, dan menghasilkan satu output pada setiap waktu. Problem dengan pendekatan ini adalah informasi yang jauh dalam sequence mungkin hilang atau sulit untuk diakses oleh bagian lain dari sequence.
  2. Mekanisme Attention
    Mekanisme attention memungkinkan model untuk fokus pada bagian-bagian tertentu dari input ketika menghasilkan output. Dengan kata lain, ketika model sedang mencoba untuk menghasilkan kata berikutnya dalam kalimat, ia dapat “memperhatikan” atau memberi “attention” lebih pada kata-kata tertentu yang relevan dalam input.
  3. Transformers dan “Attention Is All You Need”
    Transformers memperkenalkan konsep “self-attention”, di mana setiap kata dalam input dapat memperhatikan semua kata lainnya dalam input yang sama. Ini memungkinkan model untuk menangkap hubungan jarak jauh antar kata dengan lebih efisien.

    Poin utama dari makalah “Attention Is All You Need” adalah bahwa dengan mekanisme attention yang cukup kuat, kita tidak memerlukan struktur lain seperti RNN atau LSTM untuk memproses sequence. Dengan kata lain, hanya dengan attention saja, kita dapat mencapai atau bahkan melampaui performa model-model NLP lainnya.
  4. Kerja Attention dalam Transformers
    Transformers menggunakan mekanisme self-attention ini untuk mengkalkulasi representasi dari setiap token dalam konteks semua token lain di dalam sequence. Ini adalah salah satu alasan mengapa model ini sangat kuat dalam menangkap hubungan dalam teks.
    • Tokenisasi Input: Sebelum diproses oleh model transformer, input teks terlebih dahulu dipecah menjadi token-token. Dalam konteks bahasa Inggris, token bisa berupa kata, tetapi untuk bahasa lain atau situasi lain, token bisa berupa suku kata atau bahkan karakter tunggal.
    • Embedding: Setelah tokenisasi, setiap token dikonversi atau “di-embed” menjadi vektor berdimensi tinggi menggunakan tabel embedding yang dapat dilatih. Selain itu, positional encoding juga ditambahkan ke vektor ini untuk memberikan informasi tentang posisi token dalam sequence.
    • Mekanisme Self-Attention: Self-attention memungkinkan setiap token dalam input untuk memfokuskan diri pada token-token lain dalam sequence yang sama. Ini dicapai dengan mengkalkulasi skor attention untuk setiap pasangan token. Skor ini mengukur seberapa relevan sebuah token terhadap token lain dalam konteks tertentu. Secara matematis, ini melibatkan perkalian dot product dari vektor query, key, dan value yang berasal dari vektor embedding token.
      • Query, Key, dan Value: Untuk setiap token, kita memiliki tiga representasi yaitu Query (Q), Key (K), dan Value (V). Mereka dihasilkan dengan mengalikan embedding token dengan tiga matriks bobot yang berbeda.
      • Mengkalkulasi Skor Attention: Skor attention dihitung dengan mengambil dot product dari Q dan K, lalu dibagi dengan akar kuadrat dari kedalaman (biasanya dimensi dari embedding). Hasilnya kemudian melalui fungsi softmax untuk mendapatkan bobot attention.
      • Mendapatkan Output Attention: Output dari layer attention dihitung dengan mengalikan bobot attention dengan V. Ini memberi kita representasi setiap token yang telah “memperhatikan” token lain dalam input.
    • Feed Forward Neural Network: Setelah self-attention, output melewati neural network feed-forward yang ada pada setiap layer dari transformer.
    • Stacking Layers: Proses di atas diulang untuk beberapa kali (bertumpuk) sesuai dengan jumlah layer dalam arsitektur transformer.

Transformers telah mengubah cara kita memproses bahasa dengan komputer. Dengan pendekatan yang berfokus pada attention, model ini mampu memahami hubungan antar kata dengan lebih baik dan memberikan hasil yang sangat baik dalam berbagai tugas NLP.

Leave a Reply

Your email address will not be published. Required fields are marked *