Press enter to see results or esc to cancel.

Training LLM Model

Pada materi ini kita sudah masuk dalam AI Project Lifecycle, berikut rencana materi kita

Table of Content

  • [ ] Pre-Training
  • [ ] Fine-Tuning
    • [ ] Perbedaan Fine-Tuning dengan Post-Training
  • [ ] Memory Loss

Pre-Training

Pada materi ini kita sudah masuk dalam pembahasan training, bagian dari Roadmap belajar kita yang penting sebagai dasar memahami proses training dalam LLM.

Pre-Training High Level

1. Data Input

  • Unstructured Data: Model dilatih menggunakan data dalam jumlah besar, mulai dari gigabyte (GB), terabyte (TB), hingga petabyte (PB). Data ini berupa teks yang tidak terstruktur, seperti artikel, buku, dokumen, dan konten lainnya yang tersedia di internet atau sumber lainnya.
  • Data ini mencakup berbagai topik dan gaya bahasa untuk memberikan cakupan yang luas kepada model.

2. Data Quality Filter

  • Filter Kualitas Data: Tidak semua data mentah dapat langsung digunakan. Data ini difilter untuk memastikan kualitasnya sesuai dengan kebutuhan pelatihan. Misalnya, menghapus data yang mengandung spam, duplikasi, atau informasi yang tidak relevan.
  • Proses ini memastikan bahwa hanya teks yang berkualitas tinggi yang digunakan untuk melatih model.

3. Model LLM

  • Setelah data diproses, data tersebut digunakan untuk melatih model bahasa besar (LLM). Model ini adalah sistem AI yang mempelajari pola dalam teks, termasuk hubungan antar kata, makna, dan struktur bahasa.
  • LLM dilatih dengan bantuan GPU (Graphics Processing Units) yang mempercepat proses perhitungan matematika dalam pelatihan, karena membutuhkan daya komputasi tinggi.

4. Tokenisasi

  • Sebelum data teks diproses oleh model, teks tersebut dipecah menjadi unit kecil yang disebut token.
  • Token bisa berupa kata, frasa, atau bahkan bagian dari kata. Contoh di gambar:
    • Token “_The”
    • Token “_teacher”
    • Token “_the”
    • Token “_student”

5. Vocabulary

  • Setelah tokenisasi, setiap token diberi Token ID (identitas unik) dan representasi berupa embedding.
  • Token ID: Angka unik yang diberikan pada setiap token, seperti “37” untuk “_The”, “3145” untuk “_teacher”, dll.
  • Embedding / Vector Representation: Representasi numerik dalam bentuk vektor. Ini adalah cara model memahami makna token dalam ruang multidimensi, sehingga bisa mengenali pola dan hubungan antar kata. Contoh:
    • Embedding untuk “_The”: [-0.0513, -0.0584, 0.0230, ...]

Fine-Tuning

Fine-tuning adalah proses melatih ulang model bahasa besar (LLM) pada data spesifik yang relevan dengan tugas tertentu, untuk mengadaptasi model ke kebutuhan tertentu.

Fine-Tuning High Level

Fine-Tuning High Level

Kapan Fine-Tuning Diterapkan?

  • Ketika model LLM generik (hasil pre-training) perlu diarahkan pada tugas tertentu.
  • Ketika domain tertentu membutuhkan pemahaman khusus, seperti medis, hukum, atau teknik.

Proses Fine-Tuning

  1. Input Data Khusus:
    • Model dilatih ulang menggunakan dataset yang lebih kecil tetapi sangat spesifik. Contohnya:
      • Untuk analisis sentimen, digunakan dataset review pelanggan.
      • Untuk chatbot kesehatan, digunakan dataset medis.
    • Data ini lebih terfokus dibandingkan data pre-training.
  2. Parameter Disesuaikan:
    • Parameter model disesuaikan (dioptimalkan ulang) agar lebih sesuai dengan pola yang ada di dataset spesifik.
    • Misalnya, model belajar menggunakan istilah teknis yang sering digunakan di domain tersebut.
  3. Output yang Lebih Akurat:
    • Hasil akhirnya adalah model yang bisa lebih akurat menyelesaikan tugas spesifik. Contohnya:
      • Model chatbot yang dapat menjawab pertanyaan pelanggan di e-commerce.
      • Model penerjemahan bahasa yang spesifik untuk domain hukum.

Perbedaan Fine-Tuning dengan Post-Training

Umumnya ada satu jenis training lagi namun tipe ini jarang dilakukan yaitu Post-Training. Post-training adalah langkah penyempurnaan setelah pre-training untuk konteks umum tertentu.

Kapan Post-Training Diterapkan?

  • Ketika model perlu disesuaikan untuk interaksi umum tetapi tidak spesifik.
  • Contoh: Mengubah model generik menjadi model yang lebih ramah untuk percakapan sehari-hari.
Aspek Fine-Tuning Post-Training
Tujuan Mengoptimalkan model untuk tugas spesifik. Membuat model lebih baik dalam konteks umum tertentu.
Data yang Digunakan Dataset spesifik untuk satu tugas/domain. Dataset luas, tetapi tetap lebih spesifik daripada pre-training.
Parameter Banyak parameter model yang disesuaikan ulang. Penyesuaian parameter ringan, tanpa mengubah model inti secara drastis.
Contoh Penggunaan Model chatbot medis, analisis sentimen, penerjemahan. Model yang lebih sopan, ramah, atau sesuai konteks budaya.

Memory Loss

Memory loss dalam konteks machine learning, khususnya pada fine-tuning atau post-training, adalah fenomena ketika model kehilangan sebagian atau seluruh kemampuan generik yang telah dipelajari selama pre-training akibat pelatihan ulang dengan dataset baru yang spesifik.

Penyebab Memory Loss

  1. Catastrophic Forgetting:
    • Parameter model terlalu disesuaikan dengan data baru, sehingga mengorbankan kemampuan untuk memahami konteks yang lebih luas atau umum.
  2. Dataset Spesifik:
    • Jika dataset baru terlalu kecil atau terlalu fokus pada domain tertentu, model kehilangan kemampuan pada domain lainnya.

Dampak Memory Loss

  • Kehilangan Generalisasi: Model menjadi terlalu spesifik pada tugas tertentu dan gagal berfungsi pada tugas yang lebih umum.
  • Bias Data: Model mulai menunjukkan bias berdasarkan data baru yang dilatih.

Solusi Menghindari Memory Loss

  • Regularization: Menjaga parameter penting dari pre-training.
  • Balanced Dataset: Menggabungkan data generik dan spesifik.
  • Freezing Layers: Membekukan lapisan inti model agar pengetahuan umum tetap utuh.

Kesimpulan: Memory loss terjadi saat pelatihan ulang mengorbankan pengetahuan sebelumnya, dan harus dikelola dengan teknik yang tepat untuk menjaga fleksibilitas dan generalisasi model.

Referensi

https://cobusgreyling.medium.com/catastrophic-forgetting-in-llms-bf345760e6e2