| Istilah | Arti |
|---|---|
| gpt2 | Model bahasa buatan OpenAI yang dirilis tahun 2019, dan versi terkecilnya dengan 124 juta parameter menjadi target yang direproduksi dari nol di video ini. |
| torch compile | Fitur PyTorch yang mengompilasi jaringan saraf agar berjalan tanpa interpreter Python dan menggabungkan operasi, sehingga di video ini mempercepat pelatihan sekitar 2,3 kali. |
| flash attention | Algoritma attention yang menghemat akses memori GPU dengan tidak pernah menyimpan matriks attention penuh, dipakai di video ini lewat satu baris kode untuk mempercepat setiap langkah pelatihan. |
| DDP | Singkatan dari Distributed Data Parallel di PyTorch, cara melatih model di banyak GPU sekaligus dengan membagi data lalu merata-ratakan gradien, dipakai di video ini untuk delapan GPU. |
| gradient accumulation | Teknik menjumlahkan gradien dari beberapa batch kecil sebelum memperbarui bobot, sehingga di video ini batch sekitar setengah juta token bisa disimulasikan pada GPU yang memorinya terbatas. |
| learning rate | Besaran langkah saat bobot model diperbarui, yang di video ini diatur naik perlahan saat warmup lalu turun mengikuti kurva cosine seperti di makalah GPT-3. |
| data loader | Bagian kode yang mengambil potongan token dari dataset dan menyusunnya menjadi batch input serta target, dibuat sederhana di video ini lalu dikembangkan untuk banyak GPU dan shard FineWeb-Edu. |
| GPU | Prosesor grafis yang sangat cocok untuk perhitungan paralel jaringan saraf, dan di video ini pelatihan dijalankan pada delapan GPU A100 sewaan di cloud. |
| PyTorch | Pustaka Python populer untuk membangun dan melatih jaringan saraf, dipakai di video ini untuk menulis ulang GPT-2 yang aslinya ditulis dengan TensorFlow. |
| tensor | Larik angka berdimensi banyak yang menyimpan data, bobot, dan aktivasi model, dan di video ini semua parameter GPT-2 dimuat serta diolah dalam bentuk ini. |
| loss | Angka yang mengukur seberapa buruk tebakan model terhadap token berikutnya, dihitung dengan cross entropy di video ini dan dipantau agar terus turun selama pelatihan. |
| optimization | Proses menyesuaikan bobot model secara bertahap agar loss mengecil, yang di video ini dilakukan dengan AdamW beserta pengaturan hyperparameter dari makalah GPT-3. |
Dalam video panjang ini, Andrej Karpathy mereproduksi GPT-2 versi 124 juta parameter dari nol, model yang dirilis OpenAI pada 2019 dengan 12 lapisan Transformer dan dimensi 768. Ia pertama memuat bobot resmi lewat Hugging Face untuk memastikan arsitekturnya benar, lalu menulis kelas GPT sendiri dalam PyTorch, kurang dari 100 baris, dan melatihnya dari bobot acak. Karena makalah GPT-2 kurang rinci soal pelatihan, ia memakai hyperparameter dari makalah GPT-3 yang arsitekturnya sangat mirip. Pertanyaan utamanya adalah bagaimana melatih model sekelas GPT-2 dengan benar dan cepat di perangkat keras modern. Video ini penting karena menunjukkan seluruh alur pre-training, mulai dari implementasi model, data loader, dan optimasi, hingga trik kecepatan GPU dan evaluasi, serta membuktikan bahwa model setara GPT-2 kini bisa dilatih dalam sekitar satu jam dengan biaya kira-kira 10 dolar di cloud.
Karpathy memulai dengan dataset tiny Shakespeare, memeriksa loss awal sekitar 11 yang sesuai harapan, lalu menambahkan weight tying yang menghemat sekitar 30 persen parameter dan inisialisasi ala GPT-2. Di mesin berisi delapan GPU A100, waktu per langkah turun dari sekitar 1.000 milidetik menjadi 93 milidetik berkat TF32, bfloat16 dengan autocast, torch compile, flash attention, dan mengubah ukuran kosakata menjadi angka cantik 50304. Ia kemudian memakai AdamW fused, gradient clipping, jadwal learning rate cosine dengan warmup, weight decay 0,1, gradient accumulation untuk batch sekitar setengah juta token, serta DDP untuk delapan GPU hingga mencapai sekitar 1,5 juta token per detik. Data diganti ke FineWeb-Edu sampel 10 miliar token, dengan evaluasi validation loss dan HellaSwag. Hasilnya melampaui GPT-2 124M hanya dengan 10 miliar token, dan latihan semalam selama 40 miliar token hampir menyamai GPT-3 124M dengan skor HellaSwag 33,24 persen. Ia juga memperkenalkan llm.c, implementasi CUDA murni yang lebih cepat.
Kata kunci
- gpt2
- torch compile
- flash attention
- DDP
- Mengikuti kuliah mereproduksi model GPT-2 versi 124 juta parameter dari awal dalam PyTorch, lengkap dengan data loader, data set, dan optimasi pelatihan.
- Membahas torch compile, flash attention (kernel fusion), gradient accumulation, learning rate, dan batch size yang besar.
- Menjelaskan pelatihan multi-GPU dengan DDP, termasuk all reduce yang merata-ratakan gradien lintas GPU, serta evaluasi dan perbandingan dengan GPT-3.
Tulis catatan pribadimu untuk video ini. Catatan tersimpan di akunmu dan bisa dibuka dari perangkat mana pun.
