Classifier Fine-Tuning
Định nghĩa
Classifier fine-tuning là quá trình tiếp tục huấn luyện pretrained model trên dữ liệu có nhãn để học mapping từ input text sang label.
Trong Chapter 09, đây là bước xảy ra sau khi đã có một lượng labeled examples đủ dùng hoặc sau khi đã làm Language Model Fine-Tuning để thích nghi domain.
Khác với language model fine-tuning
| Loại fine-tuning | Dữ liệu | Objective | Mục tiêu |
|---|---|---|---|
| Language Model Fine-Tuning | Unlabeled domain text | Language modeling objective | Học ngôn ngữ/domain |
| Classifier fine-tuning | Text + label | Classification loss | Học decision boundary giữa các label |
Mental model:
Pretrained model
-> Domain-adapted model nếu cần
-> Classification head / classifier objective
-> Predict label cho text mớiKhi áp dụng
Classifier fine-tuning hợp lý khi:
- đã có một tập nhãn đủ sạch để học thật;
- taxonomy label tương đối ổn định;
- baseline zero-shot/embedding lookup cho thấy vẫn cần decision boundary rõ hơn;
- có validation set để theo dõi overfitting.
Vì sao vẫn cần trong few-shot setting
Few-shot không có nghĩa là bỏ fine-tuning hoàn toàn. Khi có một số ít ví dụ nhưng đủ đại diện, classifier fine-tuning có thể giúp model học ranh giới label cụ thể hơn zero-shot hoặc nearest-neighbor.
Nhưng với rất ít nhãn, rủi ro lớn là:
- overfit vào vài ví dụ;
- học nhầm từ label noise;
- metric dao động mạnh vì validation nhỏ;
- classifier mạnh trên train slice nhưng kém trên câu thật ngoài distribution.
Pipeline trực giác
Labeled examples
-> Tokenize / encode text
-> Pretrained encoder
-> Classification head
-> Cross-entropy hoặc classification loss
-> Cập nhật trọng sốNếu đã có Language Model Fine-Tuning, encoder bước vào classifier fine-tuning với representation hợp domain hơn.
Cách hiểu bằng lời của tôi
Classifier fine-tuning là lúc model học trả lời đúng nhãn mình cần, chứ không chỉ quen với cách domain nói chuyện. Nếu language model fine-tuning là “đọc thêm tài liệu nội bộ”, thì classifier fine-tuning là “làm bài tập có đáp án”.
Câu hỏi review
- Classifier fine-tuning khác language model fine-tuning ở đâu?
- Khi nào nên dùng classifier fine-tuning thay vì dừng ở zero-shot?
- Vì sao classifier fine-tuning trong few-shot setting dễ overfit?
- Vai trò của validation set trong classifier fine-tuning là gì?