Rekayasa prompt
Memahami Fine-Tuning LLM: Menyesuaikan Model Bahasa Besar dengan Kebutuhan Unik Anda

Ketika kami berdiri di September 2023, lanskap Model Bahasa Besar (LLM) masih menyaksikan munculnya model termasuk Alpaca, Falcon, Llama 2, GPT-4, dan banyak lainnya.
Aspek penting dalam memanfaatkan potensi LLM ini terletak pada proses fine-tuning, sebuah strategi yang memungkinkan penyesuaian model pra-train untuk memenuhi tugas tertentu dengan presisi. Melalui fine-tuning ini, model-model ini dapat benar-benar selaras dengan kebutuhan individu, menawarkan solusi yang inovatif dan disesuaikan dengan kebutuhan unik.
Namun, perlu dicatat bahwa tidak semua jalur fine-tuning diciptakan sama. Misalnya, mengakses kemampuan fine-tuning GPT-4 memerlukan langganan berbayar yang relatif lebih mahal dibandingkan dengan opsi lain yang tersedia di pasar. Di sisi lain, domain open-source penuh dengan alternatif yang menawarkan jalur yang lebih mudah diakses untuk memanfaatkan kekuatan model bahasa besar. Opsi open-source ini mendemokratisasikan akses ke teknologi AI canggih, mendorong inovasi dan inklusivitas dalam lanskap AI yang berkembang pesat.
Mengapa Fine-Tuning LLM Penting?
Fine-tuning LLM lebih dari sekedar peningkatan teknis; ini adalah aspek kritis dalam pengembangan model LLM yang memungkinkan aplikasi yang lebih spesifik dan rafinasi dalam berbagai tugas. Fine-tuning menyesuaikan model pra-train untuk lebih baik memenuhi dataset tertentu, meningkatkan kinerjanya dalam tugas tertentu dan memastikan aplikasi yang lebih terarah. Ini membawa kemampuan luar biasa dari LLM untuk beradaptasi dengan data baru, menunjukkan fleksibilitas yang vital dalam minat yang terus berkembang dalam aplikasi AI.
Fine-tuning model bahasa besar membuka banyak peluang, memungkinkan mereka untuk unggul dalam tugas-tugas spesifik mulai dari analisis sentimen hingga tinjauan literatur medis. Dengan menyesuaikan model dasar ke kasus penggunaan tertentu, kita membuka kemungkinan baru, meningkatkan efisiensi dan akurasi model. Selain itu, ini memfasilitasi penggunaan sumber daya sistem yang lebih ekonomis, karena fine-tuning memerlukan daya komputasi yang lebih rendah dibandingkan dengan pelatihan model dari awal.
Ketika kita memasuki panduan ini, kita akan membahas kerumitan fine-tuning LLM, memberikan Anda gambaran komprehensif yang didasarkan pada kemajuan terbaru dan praktik terbaik di bidang ini.
Fine-Tuning Berbasis Instruksi
Fase fine-tuning dalam siklus AI Generatif, diilustrasikan pada gambar di bawah, ditandai dengan integrasi input instruksi dan output, dipasangkan dengan contoh penalaran langkah demi langkah. Pendekatan ini memungkinkan model untuk menghasilkan respons yang tidak hanya relevan tetapi juga presisi sesuai dengan instruksi spesifik yang dimasukkan. Ini adalah fase di mana model pra-train disesuaikan untuk memecahkan tugas dan kasus penggunaan yang berbeda, menggunakan dataset pribadi untuk meningkatkan fungsionalitasnya.
Fine-Tuning Tugas Tunggal
Fine-tuning tugas tunggal fokus pada mengasah keahlian model dalam tugas tertentu, seperti ringkasan. Pendekatan ini sangat bermanfaat dalam mengoptimalkan alur kerja yang melibatkan dokumen besar atau thread percakapan, termasuk dokumen hukum dan tiket dukungan pelanggan. Secara luar biasa, fine-tuning ini dapat mencapai peningkatan kinerja yang signifikan dengan jumlah contoh yang relatif kecil, berkisar dari 500 hingga 1000, kontras dengan miliaran token yang digunakan dalam fase pra-train.
Dasar Fine-Tuning LLM: Arsitektur Transformer dan Di Luar
Perjalanan memahami fine-tuning LLM dimulai dengan pemahaman elemen-elemen dasar yang membentuk LLM. Di jantung model-model ini terletak arsitektur transformer, sebuah jaringan neural yang memanfaatkan mekanisme self-attention untuk memprioritaskan konteks kata-kata daripada kedekatannya dalam kalimat. Pendekatan inovatif ini memungkinkan pemahaman yang lebih dalam tentang hubungan jarak jauh antara token dalam input.
Ketika kita menavigasi kerumitan transformer, kita menemukan proses multi-langkah yang dimulai dengan encoder. Fase awal ini melibatkan tokenisasi input dan pembuatan vektor embedding yang mewakili input dan posisinya dalam kalimat. Tahap-tahap berikutnya melibatkan serangkaian perhitungan menggunakan matriks yang dikenal sebagai Query, Value, dan Key, yang berakhir dengan skor self-attention yang menentukan fokus pada bagian-bagian yang berbeda dari kalimat dan token yang berbeda.
Fine-tuning berdiri sebagai fase kritis dalam pengembangan LLM, proses yang melibatkan penyesuaian halus untuk mencapai output yang lebih diinginkan. Fase ini, meskipun penting, menyajikan serangkaian tantangan, termasuk tuntutan komputasi dan penyimpanan untuk menangani jumlah parameter yang besar. Parameter Efficient Fine-Tuning (PEFT) menawarkan teknik untuk mengurangi jumlah parameter yang perlu disesuaikan, sehingga mempermudah proses pelatihan.
Pra-Train LLM: Membangun Basis yang Kuat
Di tahap awal pengembangan LLM, pra-train menjadi pusat perhatian, menggunakan transformer yang berlebihan sebagai arsitektur dasar. Proses ini melibatkan pemodelan bahasa alami dengan berbagai cara seperti bidirectional, autoregresif, atau sequence-to-sequence pada korpus besar yang tidak diawasi. Tujuan di sini adalah untuk menciptakan basis yang dapat disesuaikan nanti untuk tugas-tugas downstream spesifik melalui pengenalan objek tugas-spesifik.
Tren yang patut diperhatikan dalam bidang ini adalah peningkatan tak terelakkan dalam skala pra-train LLM, diukur oleh jumlah parameter. Data empiris secara konsisten menunjukkan bahwa model yang lebih besar dengan lebih banyak data hampir selalu menghasilkan kinerja yang lebih baik. Misalnya, GPT-3, dengan 175 miliar parameter, telah menetapkan benchmark dalam menghasilkan bahasa alami berkualitas tinggi dan melakukan berbagai tugas zero-shot dengan terampil.
Fine-Tuning: Jalan Menuju Adaptasi Model
Setelah pra-train, LLM menjalani fine-tuning untuk beradaptasi dengan tugas-tugas spesifik. Meskipun kinerja yang menjanjikan ditunjukkan oleh pembelajaran konteks dalam LLM pra-train seperti GPT-3, fine-tuning tetap unggul dalam pengaturan tugas-spesifik. Namun, pendekatan umum fine-tuning parameter penuh menyajikan tantangan, termasuk tuntutan komputasi dan memori yang tinggi, terutama ketika menangani model skala besar.
Untuk model bahasa besar dengan lebih dari satu miliar parameter, manajemen RAM GPU yang efisien sangat penting. Satu parameter model pada presisi 32-bit penuh memerlukan 4 byte ruang, yang berarti kebutuhan 4GB RAM GPU hanya untuk memuat model dengan satu miliar parameter. Proses pelatihan yang sebenarnya memerlukan lebih banyak memori untuk menampung berbagai komponen termasuk keadaan pengoptimalkan dan gradien, yang berpotensi memerlukan hingga 80GB RAM GPU untuk model skala ini.
Untuk menavigasi keterbatasan RAM GPU, quantisasi digunakan, yaitu teknik yang mengurangi presisi parameter model, sehingga mengurangi kebutuhan memori. Misalnya, mengubah presisi dari 32-bit ke 16-bit dapat mengurangi setengah kebutuhan memori untuk baik memuat dan melatih model. Nanti dalam artikel ini, kita akan belajar tentang Qlora yang menggunakan konsep quantisasi untuk penyesuaian.
Mengexplorasi Kategori Metode PEFT
Dalam proses fine-tuning LLM secara penuh, penting untuk memiliki setup komputasi yang dapat menangani tidak hanya bobot model yang substantif, yang untuk model paling canggih sekarang mencapai ukuran ratusan gigabyte, tetapi juga mengelola serangkaian elemen kritis lainnya. Ini termasuk alokasi memori untuk keadaan pengoptimalkan, mengelola gradien, aktivasi maju, dan memfasilitasi memori sementara selama berbagai tahap prosedur pelatihan.
Metode Additif
Jenis penyesuaian ini dapat melengkapi model pra-train dengan parameter atau lapisan tambahan, fokus pada pelatihan hanya parameter yang baru ditambahkan. Meskipun meningkatkan jumlah parameter, metode ini meningkatkan efisiensi waktu dan ruang pelatihan. Metode additif lebih lanjut dibagi menjadi sub-kategori:
- Adapter: Mengintegrasikan jaringan terhubung penuh kecil pasca lapisan sub-transformer, dengan contoh terkenal seperti AdaMix, KronA, dan Compactor.
- Soft Prompt: Menyesuaikan segmen embedding input model melalui turunan gradien, dengan IPT, prefix-tuning, dan WARP sebagai contoh terkenal.
- Pendekatan Additif Lain: Termasuk teknik seperti LeTS, AttentionFusion, dan Ladder-Side Tuning.
Metode Selektif
PEFT selektif menyesuaikan jumlah lapisan terbatas berdasarkan jenis lapisan dan struktur internal model. Kategori ini termasuk metode seperti BitFit dan LN tuning, yang fokus pada menyesuaikan elemen tertentu seperti bias model atau baris tertentu.
Metode Berbasis Reparameterisasi
Metode ini menggunakan representasi berperingkat rendah untuk mengurangi jumlah parameter yang dapat dilatih, dengan yang paling terkenal adalah Adaptasi Berperingkat Rendah atau LoRA. Metode ini memanfaatkan dekomposisi matriks berperingkat rendah sederhana untuk parameterisasi pembaruan berat, menunjukkan fine-tuning yang efektif dalam subruang berperingkat rendah.
1) LoRA (Adaptasi Berperingkat Rendah)
LoRA muncul sebagai teknik PEFT yang revolusioner, diperkenalkan dalam sebuah makalah oleh Edward J. Hu dan lainnya pada 2021. Ini beroperasi dalam kategori reparameterisasi, membekukan bobot asli LLM dan mengintegrasikan matriks berperingkat rendah baru yang dapat dilatih ke setiap lapisan arsitektur Transformer. Pendekatan ini tidak hanya mengurangi jumlah parameter yang dapat dilatih tetapi juga mengurangi waktu pelatihan dan sumber daya komputasi yang diperlukan, sehingga menyajikan alternatif yang lebih efisien daripada fine-tuning penuh.
Untuk memahami mekanika LoRA, satu harus mengingat kembali arsitektur transformer di mana input prompt menjalani tokenisasi dan konversi menjadi vektor embedding. Vektor-vektor ini melintasi encoder dan/atau decoder transformer, menghadapi self-attention dan jaringan feed-forward yang bobotnya sudah pra-train.
LoRA menggunakan konsep Singular Value Decomposition (SVD). Secara esensial, SVD membagi matriks menjadi tiga matriks yang berbeda, salah satunya adalah matriks diagonal yang berisi nilai-nilai singular. Nilai-nilai singular ini sangat penting karena mereka mengukur signifikansi dimensi yang berbeda dalam matriks, dengan nilai yang lebih besar menunjukkan signifikansi yang lebih tinggi dan nilai yang lebih kecil menunjukkan signifikansi yang lebih rendah.
Pendekatan ini memungkinkan LoRA untuk mempertahankan karakteristik esensial data sambil mengurangi dimensionalitas, sehingga mengoptimalkan proses fine-tuning.
LoRA mengintervensi proses ini, membekukan semua parameter model asli dan memperkenalkan pasangan “matriks dekomposisi peringkat” bersama dengan bobot asli. Matriks-matriks yang lebih kecil ini, ditandai sebagai A dan B, menjalani pelatihan melalui pembelajaran terawasi.
Elemen kunci dalam strategi ini adalah parameter yang disebut peringkat (‘r’), yang menentukan ukuran matriks berperingkat rendah. Pemilihan ‘r’ yang cermat dapat menghasilkan hasil yang mengesankan, bahkan dengan nilai yang lebih kecil, sehingga menciptakan matriks berperingkat rendah dengan parameter yang lebih sedikit untuk dilatih. Strategi ini telah diimplementasikan secara efektif menggunakan perpustakaan open-source seperti HuggingFace Transformers, memfasilitasi fine-tuning LoRA untuk berbagai tugas dengan efisiensi yang mengesankan.
2) QLoRA: Meningkatkan Efisiensi LoRA
Membangun dari dasar yang diletakkan oleh LoRA, QLoRA lebih mengurangi kebutuhan memori. Diperkenalkan oleh Tim Dettmers dan lainnya pada 2023, ini menggabungkan adaptasi berperingkat rendah dengan quantisasi, menggunakan format quantisasi 4-bit yang disebut NormalFloat atau nf4. Quatisasi pada dasarnya adalah proses yang beralih dari representasi informasi yang lebih tinggi ke yang lebih rendah. Pendekatan ini mempertahankan efektivitas metode fine-tuning 16-bit, dequantisasi bobot 4-bit ke 16-bit seperti yang diperlukan selama proses komputasi.

Comparing finetuning methods: QLORA enhances LoRA with 4-bit precision quantization and paged optimizers for memory spike management
QLoRA memanfaatkan NumericFloat4 (nf4), menargetkan setiap lapisan dalam arsitektur transformer, dan memperkenalkan konsep quantisasi ganda untuk lebih mengurangi jejak memori yang diperlukan untuk fine-tuning. Ini dicapai dengan melakukan quantisasi pada konstanta yang sudah diquantisasi, strategi yang menghindari spike memori khas checkpointing gradien melalui penggunaan pengoptimalkan berhalaman dan manajemen memori terpadu.
Guanaco, yang merupakan ensemble QLORA-tuned, menetapkan benchmark dalam solusi chatbot open-source. Kinerjanya, yang divalidasi melalui penilaian sistematis manusia dan otomatis, menekankan dominasinya dan efisiensinya dalam bidang ini.
Versi 65B dan 33B dari Guanaco, yang disesuaikan menggunakan versi modifikasi dari dataset OASST1, muncul sebagai pesaing yang tangguh bagi model terkenal seperti ChatGPT dan bahkan GPT-4.
Fine-Tuning Menggunakan Pembelajaran Penguatan dari Umpan Balik Manusia
Pembelajaran Penguatan dari Umpan Balik Manusia (RLHF) berperan ketika fine-tuning model bahasa pra-train untuk selaras lebih dekat dengan nilai-nilai manusia. Konsep ini diperkenalkan oleh Open AI pada 2017, meletakkan dasar untuk peningkatan ringkasan dokumen dan pengembangan InstructGPT.
Di inti RLHF terletak paradigma pembelajaran penguatan, jenis teknik pembelajaran mesin di mana sebuah agen belajar bagaimana berperilaku dalam lingkungan dengan melakukan aksi dan menerima hadiah. Ini adalah loop terus-menerus dari aksi dan umpan balik, di mana agen termotivasi untuk membuat pilihan yang akan menghasilkan hadiah tertinggi.
Menerjemahkan ini ke ranah model bahasa, agen adalah model itu sendiri, beroperasi dalam lingkungan jendela konteks yang diberikan dan membuat keputusan berdasarkan keadaan, yang didefinisikan oleh token saat ini dalam jendela konteks. “Ruang aksi” mencakup semua token potensial yang dapat dipilih model, dengan tujuan memilih token yang paling sesuai dengan preferensi manusia.
Proses RLHF memanfaatkan umpan balik manusia secara luas, menggunakan umpan balik untuk melatih model hadiah. Model ini memainkan peran kritis dalam memandu model pra-train selama proses fine-tuning, mendorong model untuk menghasilkan output yang lebih selaras dengan nilai-nilai manusia. Ini adalah proses dinamis dan iteratif, di mana model belajar melalui serangkaian “rollout”, istilah yang digunakan untuk menggambarkan urutan keadaan dan aksi yang mengarah ke hadiah dalam konteks generasi bahasa.
Salah satu potensi luar biasa dari RLHF adalah kemampuannya untuk memfasilitasi personalisasi dalam asisten AI, menyesuaikan mereka untuk beresonansi dengan preferensi pengguna individu, baik itu rasa humor atau rutinitas sehari-hari. Ini membuka jalur untuk menciptakan sistem AI yang tidak hanya canggih secara teknis tetapi juga cerdas secara emosional, mampu memahami dan merespons nuansa dalam komunikasi manusia.
Namun, perlu dicatat bahwa RLHF bukanlah solusi yang sempurna. Model masih rentan menghasilkan output yang tidak diinginkan, refleksi dari data yang luas dan sering tidak diatur dan bias yang mereka latih.
Kesimpulan
Proses fine-tuning, langkah kritis dalam memanfaatkan potensi penuh LLM seperti Alpaca, Falcon, dan GPT-4, telah menjadi lebih halus dan terfokus, menawarkan solusi yang disesuaikan untuk berbagai tugas.
Kita telah melihat fine-tuning tugas tunggal, yang mengkhususkan diri dalam model dalam peran tertentu, dan metode PEFT termasuk LoRA dan QLoRA, yang bertujuan untuk membuat proses pelatihan lebih efisien dan hemat biaya. Pengembangan ini membuka pintu untuk fungsionalitas AI tingkat tinggi bagi audiens yang lebih luas.
Selain itu, pengenalan Pembelajaran Penguatan dari Umpan Balik Manusia (RLHF) oleh Open AI adalah langkah menuju menciptakan sistem AI yang lebih memahami dan selaras dengan nilai-nilai dan preferensi manusia, menyiapkan panggung untuk asisten AI yang tidak hanya pintar tetapi juga peka terhadap kebutuhan pengguna individu. Baik RLHF dan PEFT bekerja bersama untuk meningkatkan fungsionalitas dan efisiensi Model Bahasa Besar.
Ketika bisnis, perusahaan, dan individu memandang untuk mengintegrasikan LLM yang disesuaikan ini ke dalam operasi mereka, mereka pada dasarnya menyambut masa depan di mana AI bukan hanya sebuah alat; itu adalah mitra yang memahami dan beradaptasi dengan konteks manusia, menawarkan solusi yang inovatif dan disesuaikan.























