AlexNet: rekayasa CUDA di balik terobosan 2012

Pada 2012, terobosan AlexNet membuktikan bahwa jaringan neural dalam yang dipadukan dengan GPU berkemampuan CUDA dapat mengungguli rekayasa computer vision tradisional yang telah berkembang puluhan tahun. Pada ImageNet Large Scale Visual Recognition Challenge (ILSVRC), Alex Krizhevsky, Ilya Sutskever, dan Geoffrey Hinton mencapai tingkat kesalahan top-5 sebesar 15,3%, mengalahkan 26,2% milik runner-up dengan selisih hampir 11 poin persentase.
Hambatan Perangkat Keras dan Solusinya
Pada masa itu, kerangka kerja deep learning seperti PyTorch dan TensorFlow belum ada, dan GPU konsumen memiliki keterbatasan memori yang parah.
- Perangkat Keras Gaming Konsumen: Tim melatih jaringan di sebuah kamar tidur menggunakan dua GPU NVIDIA GTX 580 kelas konsumen. Setiap kartu hanya memiliki 3 GB VRAM, yang tidak cukup untuk menampung seluruh jaringan berparameter 60 juta dalam satu chip.
- Paralelisme Model melalui CUDA: Alex Krizhevsky menulis kernel CUDA C++ kustom (cuda-convnet) untuk membagi jaringan secara vertikal di kedua GPU. Setiap GPU menyimpan separuh neuron dan kernel di kumpulan memori 3 GB miliknya.
- Komunikasi Lintas-GPU Selektif: Karena transfer data antar-GPU melalui bus PCIe motherboard lambat, Krizhevsky memprogram GPU untuk berkomunikasi hanya pada lapisan tertentu (seperti Lapisan 3). Lapisan lain beroperasi sepenuhnya independen di masing-masing kartu, meminimalkan hambatan bandwidth.
Terobosan Arsitektur Utama
Memiliki daya komputasi CUDA mentah memungkinkan tim menggabungkan beberapa teknik penting yang sebelumnya terlalu lambat untuk diuji dalam skala besar:
- Arsitektur Dalam: AlexNet menumpuk 8 lapisan terlatih (5 lapisan konvolusi diikuti 3 lapisan fully connected), yang jauh lebih dalam daripada jaringan neural sebelumnya.
- Fungsi Aktivasi ReLU: Alih-alih matematika tanh atau sigmoid tradisional, mereka menggunakan Rectified Linear Units (ReLU). ReLU sederhana secara komputasi di CUDA dan memungkinkan jaringan dalam dilatih kira-kira enam kali lebih cepat tanpa gradien menghilang.
- Augmentasi Data dan Dropout: Sementara GPU mengolah matematika matriks, CPU menghasilkan transformasi gambar waktu nyata (crop dan flip) untuk mencegah overfitting. Mereka juga menerapkan Dropout, mematikan neuron secara acak selama pelatihan untuk memaksa jaringan mempelajari fitur yang tangguh.
Mengapa Ini Memicu Revolusi Deep Learning
Sebelum September 2012, sebagian besar peneliti computer vision mengandalkan algoritma buatan tangan (seperti SIFT dan HOG) untuk mendeteksi tepi dan bentuk, dan memandang jaringan neural dalam sebagai teori jalan buntu.
- Waktu Pelatihan: Bahkan dengan optimalisasi CUDA kustom, AlexNet memerlukan 5 hingga 6 hari untuk dilatih pada 1,2 juta gambar beresolusi tinggi. Tanpa CUDA, eksperimen yang sama akan memakan waktu berbulan-bulan di CPU.
- Pergeseran Industri: Ketika AlexNet menghancurkan setiap metode tradisional di ImageNet, seluruh komunitas riset AI meninggalkan fitur rekayasa manual hampir dalam semalam. Para peneliti bergegas membeli GPU NVIDIA, mendorong NVIDIA beralih ke AI dan merilis cuDNN dua tahun kemudian.