| Istilah | Arti |
|---|---|
| self attention | Mekanisme ketika setiap token memancarkan query, key, dan value lalu mengumpulkan informasi dari token sebelumnya sesuai kecocokannya, menjadi inti Transformer yang dibangun di video ini. |
| transformer | Arsitektur jaringan saraf dari makalah tahun 2017 yang menyelingi lapisan komunikasi antartoken dan lapisan komputasi, dan menjadi dasar GPT serta model yang ditulis di video ini. |
| Shakespeare | Penulis drama Inggris yang seluruh karyanya digabung menjadi dataset tiny Shakespeare sekitar satu juta karakter untuk melatih model di video ini. |
| block size | Panjang konteks maksimum, yaitu jumlah karakter yang boleh dilihat model sekaligus saat menebak karakter berikutnya, mulai dari 8 lalu dinaikkan menjadi 256 di video ini. |
| softmax | Fungsi yang mengubah deretan skor menjadi peluang bernilai positif yang jumlahnya satu, dipakai untuk bobot attention dan untuk memilih karakter berikutnya saat menghasilkan teks. |
| layer norm | Teknik menormalkan fitur setiap token agar rata-ratanya nol dan variansnya satu, yang membantu jaringan dalam tetap mudah dilatih dan sedikit menurunkan loss di video ini. |
| loss | Angka yang mengukur seberapa buruk tebakan model terhadap karakter yang benar, dihitung dengan cross entropy dan terus diturunkan selama pelatihan. |
| language modeling head | Lapisan linear terakhir yang mengubah embedding setiap token menjadi skor untuk seluruh kosakata, sehingga model bisa menebak karakter berikutnya. |
| decoder | Jenis blok Transformer yang memakai mask segitiga sehingga token hanya melihat masa lalu, cocok untuk menghasilkan teks seperti model decoder-only di video ini. |
| triangular | Bentuk matriks segitiga bawah yang dipakai sebagai mask agar setiap token hanya mengambil informasi dari token sebelumnya dan tidak mengintip masa depan. |
| batch | Kumpulan beberapa potongan teks yang diproses bersamaan secara terpisah agar GPU bekerja efisien, misalnya empat baris berisi delapan karakter di awal video. |
| embedding | Tabel vektor yang menerjemahkan setiap token dan posisinya menjadi deretan angka yang bisa dipelajari, sehingga model tahu identitas dan letak setiap karakter. |
Dalam video ini, Andrej Karpathy membangun model bahasa mirip GPT dari nol dengan Python dan PyTorch untuk menjelaskan cara kerja ChatGPT di balik layar. Ia berangkat dari makalah "Attention is All You Need" tahun 2017 yang memperkenalkan arsitektur Transformer, lalu menulis sendiri Transformer tingkat karakter yang dilatih pada dataset tiny Shakespeare, yaitu gabungan karya Shakespeare dalam satu berkas sekitar 1 MB. Tujuannya bukan meniru ChatGPT yang dilatih pada sebagian besar internet, melainkan memahami komponen inti yang sama: tokenisasi, pengambilan data dalam batch, self attention, multi-head attention, feed forward, residual connection, layer norm, dan dropout. Video ini penting bagi penonton yang ingin benar-benar mengerti bagaimana model seperti GPT menebak token berikutnya, karena setiap bagian ditulis langsung dalam kode dan diuji hasilnya satu per satu. Bekal yang dibutuhkan hanyalah kemampuan Python serta dasar kalkulus dan statistik, ditambah seri makemore dari kanal yang sama bila ingin pemahaman lebih mendalam.
Karpathy mulai dari tokenizer karakter dengan 65 karakter unik, membagi data menjadi 90 persen latih dan 10 persen validasi, lalu mengambil potongan acak dengan block size 8 dan batch berisi 4 baris. Model bigram awal menghasilkan loss 4,87, sedikit di atas perkiraan 4,17, dan turun ke sekitar 2,5 setelah dilatih dengan optimizer AdamW. Ia kemudian menunjukkan trik matriks segitiga bawah dengan softmax untuk merata-ratakan token masa lalu, yang menjadi dasar self attention dengan query, key, dan value. Satu head attention menurunkan loss validasi ke 2,4, multi-head ke 2,28, feed forward ke 2,24, residual connection dengan lapisan empat kali lebih lebar ke 2,08, dan layer norm ke 2,06. Setelah diperbesar menjadi batch 64, block size 256, embedding 384, enam head, enam lapisan, dan dropout 0,2, loss mencapai 1,48 dalam sekitar 15 menit di GPU A100. Model sekitar 10 juta parameter ini bersifat decoder-only, berbeda dengan GPT-3 yang berukuran 175 miliar parameter dan dilatih pada 300 miliar token. Untuk menjadi ChatGPT, model masih perlu fine-tuning, reward model, dan PPO, sedangkan kodenya tersedia di repositori nanoGPT.
Kata kunci
- self attention
- block size
- softmax
- layer norm
- Mengikuti kuliah membangun GPT dari nol dalam kode: dari data teks Shakespeare, tokenisasi karakter, block size, dan batch, sampai menghitung loss serta menghasilkan teks dari model.
- Membangun self attention langkah demi langkah dengan matriks segitiga, softmax, dan head size, lalu transformer lengkap dengan layer norm, embedding, language modeling head, dan blok decoder yang makin dalam.
- Menutup dengan gambaran bagaimana ChatGPT dibuat lewat pretraining lalu penyelarasan dengan reward model.
Tulis catatan pribadimu untuk video ini. Catatan tersimpan di akunmu dan bisa dibuka dari perangkat mana pun.
