Apa itu transfer learning?
Transfer learning adalah teknik yang memakai model hasil training pada satu tugas sebagai titik awal untuk tugas lain yang berbeda tetapi masih berkaitan. Alih-alih mulai dari weight acak, model baru mulai dari weight yang sudah menyimpan feature yang berguna, seperti tepi dan bentuk untuk gambar, atau tata bahasa dan makna kata untuk teks. Setelah itu, sebagian network, atau seluruhnya dengan learning rate kecil, dilatih pada data baru.
Transfer learning adalah cara baku membangun model visi dan bahasa ketika data berlabel terbatas. Classifier untuk lesi kulit, penyakit tanaman, atau cacat pabrik biasanya dimulai dari network yang di-pretrain di ImageNet. Classifier teks, chatbot, dan asisten kode dimulai dari model bahasa pretrained seperti BERT atau GPT. Teknik ini memangkas kebutuhan data dari jutaan contoh menjadi ribuan atau kurang, dan waktu training dari hitungan hari menjadi hitungan jam.
Ide utama
- Transfer learning memulai tugas baru dari model yang sudah dilatih pada dataset besar yang berkaitan.
- Layer awal CNN mempelajari feature umum seperti tepi dan tekstur, sedangkan layer berikutnya menjadi khusus untuk tugasnya.
- Freezing menjaga weight sebuah layer tetap, sedangkan fine-tuning memperbaruinya dengan learning rate kecil.
- Dataset yang lebih kecil butuh lebih banyak layer yang di-freeze, sedangkan dataset yang lebih besar memungkinkan fine-tuning pada lebih banyak bagian network.
- Fine-tuning mencapai akurasi yang baik dengan data berlabel dan komputasi yang jauh lebih sedikit daripada training dari nol.
- Model bahasa pretrained seperti BERT dan GPT menerapkan ide yang sama pada teks.
Ulasan singkat tentang topik ini
Pertanyaan umum
Apa bedanya transfer learning dan fine-tuning?
Transfer learning adalah ide umum memakai ulang model yang dilatih pada satu tugas untuk tugas lain. Fine-tuning adalah salah satu caranya: melanjutkan training sebagian atau seluruh weight pretrained pada data baru. Cara umum lainnya adalah feature extraction, yaitu network pretrained tetap di-freeze dan hanya classifier baru di atasnya yang dilatih.
Apakah transfer learning bisa dipakai untuk NLP?
Bisa, dan sekarang inilah pendekatan standarnya. ULMFiT (2018) menunjukkan bahwa fine-tuning model bahasa pretrained mengalahkan model khusus tugas pada klasifikasi teks, lalu BERT dan GPT membuat pola ini berlaku luas. Hampir semua sistem NLP modern dimulai dari Transformer pretrained.
Apa itu negative transfer?
Negative transfer terjadi ketika memulai dari weight pretrained memberi hasil yang lebih buruk daripada training dari nol. Ini bisa terjadi kalau domain sumber dan target sangat berbeda, atau kalau learning rate yang terlalu agresif merusak feature pretrained di awal fine-tuning. Cara mendeteksinya adalah membandingkan dengan baseline dari nol pada validation set.
Apa itu domain adaptation?
Domain adaptation adalah bentuk transfer learning yang tugasnya tetap sama tetapi distribusi input-nya berubah, misalnya model sentimen yang dilatih pada ulasan film lalu diterapkan pada ulasan produk. Metodenya beragam, dari fine-tuning pada sampel kecil berlabel dari domain baru sampai training pada data target tanpa label agar feature dari kedua domain terlihat serupa.
Penjelasan terkait
- Convolutional Neural Network · Cara CNN melihat dan memahami gambar
- Feature Extraction · Cara network menemukan pola dalam data mentah
- LoRA dan Parameter-Efficient Fine-Tuning · Mengadaptasi model besar dengan melatih matriks low-rank kecil, bukan semua weight
- BERT dan Masked Language Modeling · Sembunyikan satu kata, prediksi dari dua sisi: cara BERT mempelajari representasi bidirectional yang dalam
- Data Augmentation · Perbanyak data training secara buatan dengan salinan hasil transformasi untuk mengurangi overfitting
- Overfitting dan Underfitting · Bias-variance tradeoff dan generalisasi
Referensi
- Yosinski et al. (2014), "How transferable are features in deep neural networks?"
- Zeiler & Fergus (2013), "Visualizing and Understanding Convolutional Networks"
- Howard & Ruder (2018), "Universal Language Model Fine-tuning for Text Classification" (ULMFiT)
- Raghu et al. (2019), "Transfusion: Understanding Transfer Learning for Medical Imaging"
- Stanford CS231n, "Transfer Learning" course notes
Terakhir diperbarui