Fine-tuning (deep learning) (ID)
Dообучение (Ingg. Fine-tuning), juga dikenal sebagai penyetelan halus, adalah metode transfer learning dalam machine learning, di mana parameter model yang telah dilatih sebelumnya (pre-trained model) diadaptasi untuk menyelesaikan tugas baru yang spesifik. Alih-alih melatih model dari awal — yang memerlukan volume data dan sumber daya komputasi yang sangat besar — fine-tuning memungkinkan penggunaan pengetahuan yang telah dikodekan dalam bobot model dan "menyetelnya" sesuai kebutuhan tertentu.
Pendekatan ini telah menjadi standar de facto dalam bidang deep learning, khususnya saat bekerja dengan large language model (LLM) dan model computer vision.
Konsep
Proses fine-tuning dapat dibagi menjadi dua tahap utama:
1. Pelatihan awal (Pre-training): Model (misalnya, BERT atau GPT) dilatih pada dataset yang sangat besar dan umum (misalnya, seluruh internet) menggunakan tugas self-supervised (misalnya, prediksi kata berikutnya). Pada tahap ini, model mempelajari pola umum, sintaksis, semantik, dan pengetahuan tentang dunia.
2. Fine-tuning: Model yang telah dilatih sebelumnya dijadikan sebagai dasar, dan bobotnya disesuaikan lebih lanjut pada dataset berlabel yang kecil namun spesifik untuk tugas target.
Ide kuncinya adalah bahwa pengetahuan yang diperoleh pada tahap pelatihan awal bersifat universal dan dapat berhasil ditransfer untuk menyelesaikan berbagai tugas lain yang lebih spesifik.
Proses Fine-tuning
Proses fine-tuning yang umum mencakup langkah-langkah berikut:
1. Pemilihan model yang telah dilatih sebelumnya: Dipilih model yang kemampuan dasarnya sesuai untuk tugas target (misalnya, BERT untuk tugas pemahaman teks, GPT untuk generasi).
2. Adaptasi arsitektur: Ke model yang telah dilatih sebelumnya ditambahkan lapisan baru "kepala" (head) yang spesifik untuk tugas target. Misalnya:
- Untuk klasifikasi teks ditambahkan lapisan fully connected sederhana dengan fungsi softmax.
- Untuk pengenalan entitas bernama (NER) classifier ditambahkan pada keluaran setiap token.
3. Pelatihan pada dataset target: Seluruh model (atau sebagiannya) dilatih pada dataset berlabel yang baru. Pada tahap ini, bobot model, termasuk bobot lapisan yang telah dilatih sebelumnya, diperbarui menggunakan gradient descent untuk meminimalkan fungsi loss pada tugas baru.
4. Penggunaan learning rate yang lebih rendah: Dalam fine-tuning, biasanya digunakan learning rate yang jauh lebih rendah dibandingkan saat pelatihan awal. Hal ini diperlukan agar pengetahuan berguna yang telah dikodekan dalam bobot model tidak "rusak", melainkan hanya dikoreksi secara hati-hati.
Jenis-jenis Fine-tuning
Full Fine-tuning - Fine-tuning Penuh
- Prinsip: Semua parameter model yang telah dilatih sebelumnya diperbarui bersama dengan lapisan "kepala" yang baru.
- Keunggulan: Berpotensi memberikan performa terbaik, karena seluruh model beradaptasi dengan tugas baru.
- Kekurangan: Memerlukan sumber daya komputasi dan memori yang signifikan, karena gradient untuk semua parameter harus disimpan dan diperbarui. Terdapat risiko catastrophic forgetting, ketika model "melupakan" pengetahuan umum yang diperoleh saat pelatihan awal.
Parameter-Efficient Fine-Tuning (PEFT) - Fine-tuning Efisien Parameter
Ini adalah keluarga metode yang bertujuan mengurangi biaya komputasi saat fine-tuning. Ide utamanya adalah membekukan sebagian besar parameter model yang telah dilatih sebelumnya dan hanya melatih sejumlah kecil parameter baru atau parameter yang dipilih dari yang sudah ada.
- Contoh metode PEFT:
- Adapter (Adapters): Lapisan-lapisan adapter kecil tambahan disisipkan ke dalam arsitektur Transformer, dan hanya lapisan-lapisan tersebut yang dilatih.
- LoRA (Low-Rank Adaptation): Alih-alih memperbarui matriks bobot penuh, LoRA melatih pembaruan low-rank dari matriks tersebut. Ini memungkinkan pengurangan jumlah parameter yang dapat dilatih hingga ribuan kali lipat.
- Prompt Tuning: Ke data masukan ditambahkan vektor-vektor "prompt" yang dapat dilatih, yang disesuaikan untuk menyelesaikan tugas, sementara model itu sendiri tetap dibekukan.
- Keunggulan PEFT:
- Efisiensi: Secara signifikan mengurangi kebutuhan memori dan komputasi.
- Modularitas: Memungkinkan adaptasi mudah satu model yang telah dilatih sebelumnya untuk berbagai tugas, dengan hanya menyimpan sekumpulan bobot yang diadaptasi dalam jumlah kecil untuk setiap tugas.
Instruction Tuning - Fine-tuning Berbasis Instruksi
Ini adalah jenis fine-tuning khusus yang bertujuan meningkatkan kemampuan LLM untuk mengikuti instruksi dalam bahasa alami.
- Cara kerja: Model di-fine-tune pada dataset yang terdiri dari pasangan "instruksi — keluaran yang diinginkan".
- Tujuan: Meningkatkan kemampuan generalisasi model pada tugas-tugas baru yang belum pernah dilihat sebelumnya, yang dapat dijelaskan dalam bentuk instruksi. Model seperti InstructGPT dan FLAN-T5 merupakan contoh nyata dari pendekatan ini.
Literatur
- Howard, J.; Ruder, S. (2018). Universal Language Model Fine-tuning for Text Classification. arXiv:1801.06146.
- Houlsby, N. et al. (2019). Parameter-Efficient Transfer Learning for NLP. arXiv:1902.00751.
- Pfeiffer, J. et al. (2020). AdapterFusion: Non-Destructive Task Composition for Transfer Learning. arXiv:2005.00247.
- Hu, E. J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Lester, B.; Al-Rfou, R.; Constant, N. (2021). The Power of Scale for Parameter-Efficient Prompt Tuning. arXiv:2104.08691.
- Ben Zaken, A.; Goldberg, Y.; Ravfogel, S. (2022). BitFit: Simple Parameter-Efficient Fine-Tuning for Transformer-based Masked Language-Models. ACL 2022.
- Ouyang, L. et al. (2022). Training Language Models to Follow Instructions with Human Feedback. arXiv:2203.02155.
- Han, Z. et al. (2024). Parameter-Efficient Fine-Tuning for Large Models: A Comprehensive Survey. arXiv:2403.14608.
- Bian, J. et al. (2025). A Survey on Parameter-Efficient Fine-Tuning for Foundation Models in Federated Learning. arXiv:2504.21099.
- Li, X. et al. (2025). Revisiting Fine-Tuning: A Survey of Parameter-Efficient Techniques and Future Directions. Preprints.org.
Lihat juga
- Model bahasa besar
- BERT
- GPT