RLHF에서 DPO Loss 유도 과정 대화 기록
사용자 요청
강화학습 관련하여 RLHF의 Loss에서 DPO의 Loss를 유도하는 과정에 대해서 설명 요청.
RLHF의 기본 개념
- RLHF: 인간 피드백을 통한 강화학습. 두 가지 주요 단계로 구성.
- 보상 모델 학습
- 정책 모델 최적화
보상 모델 Loss
$$L_{\text{RM}} = -\mathbb{E}_{(x,y_w,y_l)\sim D}\left[\log \sigma(r_\phi(x,y_w)-r_\phi(x,y_l))\right]$$
정책 모델 목적함수
$$\max_{\pi_\theta} \mathbb{E}_{x,y\sim \pi_\theta}[r_\phi(x,y)] - \beta D_{\text{KL}}(\pi_\theta\|\pi_{\text{ref}})$$
DPO Loss 유도 과정
최적 정책 π*(y|x)
를 라그랑지 승수법으로 유도하면:
$$\max_{\pi_\theta} \sum_y \pi_\theta(y|x) r_\phi(x,y)-\beta \sum_y \pi_\theta(y|x)\log\frac{\pi_\theta(y|x)}{\pi_{\text{ref}}(y|x)}$$
- 라그랑지언을 사용해 제약조건
(∑_y π_θ(y|x)=1)
처리:
$$\mathcal{L}=\sum_y\pi_\theta(y|x)r_\phi(x,y)-\beta\sum_y\pi_\theta(y|x)\log\frac{\pi_\theta(y|x)}{\pi_{\text{ref}}(y|x)}+\lambda\left(1-\sum_y\pi_\theta(y|x)\right)$$
- 최적 조건 미분하여 정리하면 최적 정책 형태 얻음:
$$\pi^*(y|x)=\frac{\pi_{\text{ref}}(y|x)\exp\left(\frac{r_\phi(x,y)}{\beta}\right)}{Z(x)}$$
DPO의 Loss 함수 최종 형태
DPO 논문에서는 보상모델을 제거하고 정책모델 자체를 직접 최적화하는 형태로 Loss를 제시:
$$L_{\text{DPO}}(\pi_\theta)= -\mathbb{E}_{(x,y_w,y_l)}\left[\log \sigma\left(\beta\left[\log\frac{\pi_\theta(y_w|x)}{\pi_{\text{ref}}(y_w|x)}-\log\frac{\pi_\theta(y_l|x)}{\pi_{\text{ref}}(y_l|x)}\right]\right)\right]$$
DPO Loss 직관적 이해
- DPO는 별도 보상모델 없이 정책모델의 확률분포 자체로 인간의 선호를 직접 학습.
- 선호 응답은 높은 확률, 비선호 응답은 낮은 확률로 유도함.
DPO 방식의 장점
- RLHF의 복잡성을 줄이고 간단한 최적화 문제로 만듦.
- 학습이 안정적이고 효율적이며 성능도 우수함.
위의 내용을 통해 RLHF에서 DPO Loss가 유도되는 전 과정을 설명 완료.