Direct Preference Optimization

Định nghĩa

Direct Preference Optimization (DPO) là phương pháp căn chỉnh (alignment) mô hình ngôn ngữ lớn dựa trên dữ liệu ưu tiên của con người (preference pair: - preferred vs - dispreferred) bằng cách tối ưu hóa trực tiếp policy loss mà không cần huấn luyện một Reward Model riêng biệt hay sử dụng thuật toán Reinforcement Learning (như PPO).

Cách hiểu bằng lời của tôi

RLHF truyền thống phải huấn luyện 2 bước: học Reward Model từ cặp đáp án , rồi dùng PPO đẩy policy LLM về phía reward cao. DPO toán học hóa để chứng minh rằng ta có thể trích xuất ẩn Reward Model trực tiếp từ chính Policy LLM. Nhờ đó, bài toán RL phức tạp biến thành bài toán Classification Loss đơn giản, ổn định và nhanh hơn rất nhiều.

Công thức & Cơ chế

DPO tối ưu hóa hàm mất mát (Loss function):

  • : Mô hình policy đang huấn luyện.
  • : Mô hình SFT gốc (reference policy).
  • : Hệ số điều khiển mức độ lệch khỏi reference model.

So sánh với RLHF (PPO)

Tiêu chíRLHF (PPO)DPO
Thành phầnPolicy, Value Network, Reward ModelChỉ Policy + Reference Model
Độ ổn địnhNhạy cảm với hyperparameter, dễ collapseRất ổn định (supervised loss)
Chi phí tính toánCao (cần giữ nhiều model trong VRAM)Thấp (chỉ load Policy + Ref model)
Chất lượngCao trên bài toán open-ended phức tạpTương đương hoặc vượt trội trên đa số task

Trade-off

  • Phụ thuộc dữ liệu: DPO nhạy cảm với chất lượng cặp dữ liệu .
  • Overshooting: Nếu không điều chỉnh phù hợp, DPO có thể phạt quá mức các token phổ biến.

Liên kết