[RLHF] Direct Preference-based Policy Optimization without Reward Modeling

2024. 7. 4. 14:08RLHF

논문 링크

https://arxiv.org/pdf/2301.12842

 

keyword: Preference based Reinforcement Learning [PbRL], offline learning, Unlabelled dataset, Transformer, Contrastive learning

 

위: RLHF, 아래 : 본 논문

1. Abstract

PbRL은 학습자가 인간의 선호를 학습하는 방법을 이야기함. 해당 방법은 크게 두가지 단계로 볼 수 있음.

1. 주어진 preference dataset을 통해 reward model 학습

2. 1에서 학습된 Reward model을 통해 학습자 학습

그러나 해당 방법들은 정확도가 높은 reward model을 얻기 어렵다는 문제가 있음. [특히 해당 문제는 labeler가 인간인 경우 더욱 어려움]

따라서 본 논문은 reward model 학습 없이 직접적으로 preference를 학습하는 방법을 소개함.

본 방법을 성취하기 위해서, contrastive learning framework을 적용함.

 

2. Introduction

2.1. PbRL의 등장 배경

최근 RL은 "reward function이 잘 정의된 작업"에 대해서 놀라울 정도의 성능을 보여줌.

하지만 실제 환경에서의 작업에 대해서는 여전히 성능이 저조한데, 이는 해당 작업에 적합한 reward function을 정의하기 어렵기 때문. 즉, reward shaping issue.

이를 해결하기 위해 등장한 것이 Preference-based RL [PbRL]이며, PbRL은 RL 학습자에게 preference 정보를 제공하므로써 위에서 언급된 reward shaping issue를 해결할 수 있음.

 

2.2. PbRL의 단점

최근 PbRL은 크게 2가지의 단계를 통해 학습 진행됨.

1. 제공된 preference dataset을 바탕으로 reward model를 학습

2. 1에서 학습된 reward model를 통해 reinforecement learning 진행.

하지만 해당 방법은 preference가 labeling된 data에 대해서만 reward model의 정확성이 보장이되는 문제가 있음.

그리고 어떻게 reward model architecture를 제작해야 효과적으로 preference를 추출할 수 있는지에 대해서도 문제가 있음.

 

2.3. 본 논문은...

그럼에도 불구하고, PbRL은 우리가 직접 dataset에 접근하여 Supervised Learning을 진행할 수 있다는 점이 있음.

해당 장점에 기반하여, 본 논문은 reward model design을 하지 않고 직접적으로 policy를 학습하는 PbRL 방법을 소개.

본 논문의 PbRL은 policy socring metric을 통해서 policy 간의 metrics distance 연산을 실시, 이후 distance의 값에 따라 positive sampling과 negative sampling을 구별하여 contrastive learning을 loss function으로 설계하여 학습.

본 학습은 인간이 선호하는 dataset과 비선호 dataset의 distance를 점점 크게하게 만듬으로써, 효과적인 PbRL 성능을 보여줌.

 

3. Related works

3.1. Preference-based reinforcement learning

preference dataset 수집을 효율적으로 하기 위해서 semi-supervised learning [SURF]또는 data augmentation을 진행한 연구가 있음. 해당 방법들은 여전히 reward model를 학습하는 것이 요구됨.

본 논문과 유사한 방법이 존재하지만, initial state가 항상 고정되어 있어 다양한 dataset을 취득하지 못한다는 점이 있음.

 

3.2. Offline reinforcement learning

생략

 

3.3. Contrastive learning

Contrastive learning은 일반적으로 image를 사용하는 Neural net에 적용하는 방법론임.

해당 학습의 장점은 representation 을 적은 수의 labeling을 통해 효과적으로 학습할  수 있다는 점.

최근 이들의 장점을 활용하여 Reinforcement Learning에 결합한 방법론들이 존재함.

 

4. Preliminaries

4.1. Preference-based reinforcement learning

$D_{pref}$ labeled dataset이 적고 반대로 $D$ unlabeled dataset이 많은 상황이라 가정.

선호되는 것은 0이며, 선호하지 않는 것은 1 그리고 둘다 선호하는 것은 0.5 로 labeling

나머지는 기존 PbRL과 동일하기 때문에 생략

 

4.2. Contrastive learning

Contrastive learning의 목적은 비슷한 data 끼리는 거리가 가깝게 다른 data에 대해서는 거리가 멀게 하는 것이 목표.

이를 통해 representation을 효율적으로 하게 함 [쉽게 군집화 하겠다.]

해당 방법론의 loss function은 아래와 같음.

여기서

$x$는 원본 데이터, $

x^+$ positive sampling: 비슷한 image data를 의미 [e.g. 원본: 강아지 앞 모습, 비슷한 데이터: noise 추가 또는 다른 모습],

$x^-$ 은 negative sampling이며, 완전 다른 image data를 의미 [e.g. 원본: 강아지 앞 모습, 완전 다른 데이터: 사람, etc.. ]

$ f(x)^T f(x^+) $ 는 두 sample 간의 similarity score를 나타냄.

 

5. Learning directly from preference

5.1. 왜 Direct Preference Policy Optimization을 해야하는가?

PbRL의 기본은 인간이 직접 preference labeling을 진행하는 것. 하지만 해당 방법은 인간이 어떠한 기준을 가지고 작업을 진행하는지는 명확하지 않음. [PbRL은 기본적으로 unimodal gaussian distribution을 가정하기 때문에 더더욱 주의해서 labeling해야함] 또한 인간은 제공된 trajectory에 대해서 전체적으로 판단하는 것이 아닌 특정 부분[subset]에 집중하고 다른 부분은 무시하는 경향이 있음. [e.g. 영화의 하이라이트 부분만 기억] 그리고 reward model design에 따라서 preference prediction이 성공하거나 실패하는 경향이 있음. 이는 reward model을 바탕으로 policy를 학습하는 것에 크게 영향을 미침.

 

 

위 이미지는 reward model이 reward structure를 정확하게 예측하지 못한 것을 보여줌.

[선형적이어야 prediction이 잘 되었음을 나타냄, 하지만 이미지 상에서도 볼 수 있 듯이 비선형성을 띄고 있음을 볼 수 있음]

 

 

5.2. Policy-Segment Distance

Contrastive learning을 위해서는 score를 계산하여 posi/negative sampling을 할 수 있음.

그러기 위해선 distance 계산 방법을 정의해야하는데 해당 정의는 본 4.2. 에서 보여줌.

아래 수식을 통해서 distance를 계산하며, 이를 Policy-segment distance function이라고 함.

 

이들을 [$\sigma^i$] 집합으로 묶은 것을 AGG[aggregation function]라고 하며, 다음과 같음.

5.3. Preference score metric

5.2.에서 정의한 Policy-segment distance function와 AGG를 이용하여 PbRL의 기본 loss function인 Binary CrossEntropy loss를 재 정의하면 다음과 같음.

여기서 주의할 점은 BT model이 Contrastive learning에 사용되는 loss의 형태를 띄고 있음을 주의, 또한 AGG를 통해 나타냈음을 주의

 

5.3.1. 민감하지 않은 metrics score 1

논문에서 언급한 위 수식의 문제점 중 하나는 distance가 동일한 크기에서 감소하는지 증가하는지 민감하지 않다는 것. [즉, 비슷한 것 끼리 가깝게 하거나 다른 것 끼리는 멀게 해야하는데, 해당 계산에 대한 민감도가 낮다.]

이를 해결하기 위해서 다음과 같이 약간의 수식 변경을 실시.

[참고: 해당 수식은 Contrastive learning에서 많이 사용되는 연산.]

 

5.3.2. 민감하지 않은 metrics score 2

추가적인 문제점은 해당 수식이 여전히 미세한 차이를 인지하지 못한다는 것임. 이는 곳 prefer과 unprefer의 차이가 미세한 경우 penalty가 반영되지 않는 것.

이를 해결하기 위해서 regularizing factor $\lambda$를 추가하여, scale 작업 실시.

 

 

5.4. Policy optimization with preference predictor

인간이 labeling을 진행하는 방법은 학습에 부정적인 영향을 미친다는 것은 5.1.에서 알아봄. 따라서 해당 논문은 GPT-2 을 변형시킨 Preference Transformer를 사용하여 인간이 labeling 하지 않은 dataset에 대해 auto labeling일 실시함.

이를 반영하여, Preference Transformer [Preference Predictor]의 loss function을 수정하면 다음과 같음.

 

수식에서 추가된 것은 Preference Smoothness인데 아래의 그림을 통해 Preference Transformer가 과도하게 Preference를 추론하는 하는 것을 알 수 있으며, 이를 방지하기 위해서 적용됨.

[Preference Transformer는 Non Markovian 을 가정하기 때문에 segment 를 이루고 있는 각 state,action pair 마다에 대한 preference prediction이 중구 난방임 -> 이는 segment pair comparison에 악영향을 미칠 수 있음.  5.1.에서 언급된 것 처럼 subset에 집중해 버리는 현상이 발생되어 학습에 부정적인 영향을 끼침. 따라서 완화 또는 없애주기 위해서 smoothness를 적용한 것으로 보임.]

 

 

위 수식 을 통해 Preference Transformer를 학습하고 나서, unlabeled dataset $D$에 대해 Policy을 5.3.2.에서 얻은 수식을 통해 학습함.

 

5.5. Behavioral Cloning[BC] vs Direct Preference-based Policy Optimization[DPPO]

그렇다면, imitation의 대표 알고리즘인 BC와의 성능 비교는 어떠할까?

[물론 해당 dataset은 expert에서 취득한 것.]

놀랍게도 아래 사진[Fig 5]과 같이 DPPO가 BC 보다 인간이 선호하는 action을 잘 학습하는 것을 볼 수 있음.

$σ0> σ1$ 이므로 $d_0$ 와 $d_1$ 의 차이가 보다 큰 경우가 좋은것. 즉, preference action에 가까움과 동시에 unprefer에 대해 상대적으로 완벽하게 구별하여 학습함.

 

BC는 DPPO와 비교시 imitation 특성상 [offline dataset이 Optimtial 하다는 가정] 무조건 배울려고 하는 반면,

DPPO는 Offline reinforcement learning 특성상 [offline dataset이 suboptimal [=개선 가능]] prefer과 unprefer를 구별하며 학습

 

6. Training Pesudo Code

위 수식들을 바탕으로 pesudo code는 다음과 같음