Khi các phòng nghiên cứu huấn luyện model AI như Claude hay GPT, họ không chỉ “dạy” model bằng dữ liệu có sẵn mà còn tổ chức thi đua nội bộ: để model giải cùng một câu hỏi hàng chục lần, rồi chỉ giữ lại các câu trả lời tốt nhất để học tiếp. Kỹ thuật đó gọi là Rejection Sampling, một trong những phương pháp rẻ nhất và hiệu quả nhất để nâng chất lượng model. Trong bài này, mình sẽ giải thích Rejection Sampling là gì và vì sao nó được dùng khắp nơi trong ngành AI.
Rejection Sampling là gì?
Rejection Sampling là kỹ thuật tạo ra nhiều câu trả lời khác nhau cho cùng một đầu vào, rồi chấm điểm và chỉ giữ lại những mẫu đạt chuẩn để đưa vào huấn luyện. Phần “rejection” chính là việc loại bỏ các mẫu kém. Nói cách khác, đây là kiểu “thi lên cấp”: model làm bài nhiều lần, chỉ bài đạt điểm cao mới được dùng làm giáo trình.
Trong huấn luyện LLM, Rejection Sampling thường dùng ở giai đoạn fine-tuning: sau khi model sinh ra hàng loạt mẫu, một bộ chấm điểm (có thể là con người hoặc một model phán xét) sẽ lọc lấy các mẫu tốt nhất, rồi các mẫu này được dùng để tinh chỉnh lại model qua SFT (Supervised Fine-Tuning).
Rejection Sampling hoạt động như thế nào?
Quy trình gồm bốn bước rõ ràng. Một, chọn một tập câu hỏi từ dữ liệu huấn luyện. Hai, cho model sinh ra N câu trả lời khác nhau cho mỗi câu hỏi, thường bằng cách đặt temperature cao để tăng sự đa dạng. Ba, chấm điểm từng câu trả lời, bằng reward model hoặc bằng cách đối chiếu đáp án đúng nếu là bài toán có lời giải duy nhất. Bốn, giữ lại câu trả lời tốt nhất hoặc vài câu tốt nhất cho mỗi câu hỏi và huấn luyện model trên đó.
Sau mỗi vòng như vậy, model trở nên giỏi hơn một chút, và người ta có thể lặp lại toàn bộ quy trình với model mới. Đây chính là cách các model giải toán như các model reasoning ngày càng tiến bộ qua từng phiên bản.
Rejection Sampling liên quan gì đến Best-of-N?
Nếu bạn từng nghe thuật ngữ Best-of-N (BoN) ở khâu suy luận, thì đó chính là anh em sinh đôi của Rejection Sampling. Cùng một ý tưởng sinh N mẫu rồi chọn mẫu tốt nhất, nhưng Best-of-N áp dụng lúc người dùng hỏi để nâng chất lượng câu trả lời, còn Rejection Sampling áp dụng lúc huấn luyện để cải thiện bản thân model.
Điểm thú vị là chi phí: cả hai đều đắt gấp N lần về compute, vì model phải sinh N câu thay vì một. Đó là lý do các nhà cung cấp chỉ dùng Best-of-N ở đầu API giá cao, hoặc các hệ thống inference server dùng kỹ thuật speculative decoding để bù chi phí.
Vì sao Rejection Sampling rẻ hơn RLHF truyền thống?
So với RLHF đầy đủ với PPO, Rejection Sampling nhẹ hơn nhiều. PPO yêu cầu huấn luyện đồng thời nhiều model và xử lý feedback online, dễ bất ổn định. Rejection Sampling chỉ cần sinh mẫu, chấm điểm, rồi chạy một vòng SFT quen thuộc, ổn định và dễ debug hơn hẳn.
Chính vì vậy, nhiều model open-source nổi tiếng chọn pipeline RAFT (Reward rAnked FineTuning) dựa trên Rejection Sampling thay vì RLHF đầy đủ, và kết quả vẫn rất cạnh tranh. Với đội ngũ nhỏ không có hạ tầng RL, đây là lựa chọn thực tế nhất.
Rejection Sampling có điểm yếu gì?
Điểm yếu lớn nhất là giới hạn bởi chính khả năng hiện tại của model. Bạn không thể chọn ra câu trả lời tốt hơn mức tốt nhất mà model đã sinh ra. Nếu model sinh 10 mẫu đều sai, không có mẫu nào để học. Ngoài ra, bộ chấm điểm nếu thiên vị sẽ khiến model học theo thiên kiến đó, một dạng của reward hacking nhẹ.
Một vấn đề nữa là với các tác vụ sáng tạo mà không có đáp án đúng, việc “chấm điểm” trở nên mơ hồ, và Rejection Sampling mất nhiều ưu thế so với RLHF vốn được thiết kế cho feedback mang tính sở thích.
Rejection Sampling có ứng dụng gì ngoài huấn luyện?
Trong thống kê, Rejection Sampling vốn là phương pháp lấy mẫu từ phân phối phức tạp bằng cách sinh mẫu từ phân phối dễ hơn rồi loại bỏ với một xác suất nhất định. Ý tưởng gốc này được vay mượn sang AI một cách rất tự nhiên. Ngày nay bạn còn thấy nó trong agent: cho agent thử nhiều plan hành động, chọn plan khả thi nhất để thực thi, hoặc trong các hệ thống tự động kiểm thử code sinh nhiều bản patch rồi chỉ giữ bản pass hết test.
Kết luận
Rejection Sampling chứng minh một triết lý đơn giản mà mạnh mẽ: thay vì đòi model giỏi ngay từ đầu, hãy để nó thử nhiều lần và học từ những lần thử tốt nhất. Chi phí thấp, dễ triển khai, phù hợp cả đội ngũ nhỏ lẫn phòng lab lớn. Nếu bạn đang tìm hiểu cách các model reasoning đạt điểm số ấn tượng trên các benchmark, đây chính là một trong những bí quyết đứng sau. Hãy đọc thêm bài về SFT và RLHF trên blog của mình để hiểu trọn vẹn chuỗi kỹ thuật nuôi dạy một model AI hiện đại.
