DPO는 LLM에서 사용하는 튜닝 방법입니다.
GPT는 Pretrained 단계를 거쳐 Fine-tuning에서 RLHF라는 사람의 피드백에 의한 강화학습을 합니다.
PPO라는 것을 쓰는데요.
채점 모델을 만들어 채점모델이 모델이 생성한 텍스트를 채점하게 해서 그걸 다시 학습으로 돌려서 모델의 성능을 개선하는 방법입니다.
대표적으로 ChatGPT가 이 방법을 사용합니다.
DPO는 인간의 피드백없이 그냥 선호하는 데이터로 모델을 튜닝하는 방법입니다.
일반 fine-tuning하고 뭐가 따른지가 궁금할텐데 일반 fine-tuning은 인간의 피드팩 데이터를 넣지 않을 수도 있고 넣을 수도 있만 DPO는 인간의 피드백을 그 자체로 학습에 사용하는 방법입니다.
대표적으로 Llama3가 이 방법을 사용합니다.