본문 바로가기
논문 리뷰

[RL] Deep Reinforcement Learning From Human References : RLHF

by jjjaeunn 2024. 3. 11.

👩🏻‍💻 본 포스팅은 개인적 공부를 위해 강화학습 논문 RLHF를 정리한 포스팅으로, 오류가 있을 수 있습니다.


1. Introduction

이전까지 진행되어온 RL 연구는 'reward' 단계가 태스크별로 매우 구체적이어야 한다는 단점이 존재했다.

이 논문은 'reward', 즉 보상이 구체적이고 복잡해야 한다는 단점을 극복하게 된다면 RL이 더욱 발전할 것이라는 전제에서 시작된다.

inverse RL이나 정확한 행동을 지시하는 방법도 있지만, 로봇에게 행동을 지시할 때에는 인간과 다른 방식의 행동론을 적용해야 한다는 어려움이 존재한다.

=> 인간이 원하는 방향성대로 agent=머신을 조종하기 위해서는, '머신이 수행할 수 있는 범위와 방향성 내에서 인간이 궤도를 결정하여 최적화하는' 방식을 채택한다. 전문성 없는 사람이 제공하는 15분 내지 5시간 걸리는 적은 양의 피드백으로도 기본적 RL 태스크와 다루기 복잡한 태스크까지 처리할 수 있도록 한다.

 

연구 실험은 Atari games(선행연구)과 로봇 시뮬레이터, 두 가지 도메인에서 이루어진다.

 

1.1 Related Work

이 논문은 Akrour et al.(2012,2014) 연구를 기반으로 한다. 차이점은, 이전 연구에 비해 인간이 들여야 하는 시간이 적다는 점이다. 

시간을 적게 들임과 동시에, 머신이 수행할 수 있는 모든 궤도를 고려하여 실제적인 피드백을 제공한다.

=> 이전 강화학습 연구와 비교했을 때, RLHF 논문은 인간의 피드백을 적용한 딥러닝 강화학습 + 더 복잡한 behavior 학습의 contribution을 가진다.

 

2. Preliminaries and Method

- t : 각 시점

- o(t) : 머신이 해당 시점환경에서 관찰한 값, input

- a(t) : 머신이 해당 시점에 수행하는 액션

 

기존 연구들은 각 시점, 즉 환경에서 reward를 얻도록 설계하였다. 그리고 해당 머신은 discounted sum of rewards 값을 최대화하는 것을 목표로 하고 학습을 진행한다.

discounted sum of rewards?
시점에 따라 감가율(discount factor)을 적용하여, 총 시점의 rewards를 더한 값이다. 머신은 reward를 최대화하는 방향으로 학습해야 한다.

 

이 연구의 특별한 점은 각 시점환경에서 reward signal을 받는 것이 아닌, human overseer(인간의 선호도)에 따라 trajectory segment(각 궤도) 중 선택한다는 점이다. 

trajectory segment?
각 시점환경에서 관찰한 값과 그에 해당하는 액션값의 sequence이다.

 

=> sigma를 그 sequence로 정의하자.

만약 인간의 선호도에 따라 sigma 1이 sigma 2보다 높을 경우, 왼쪽처럼 표현한다.

 


A. 정량적 평가

각 trajectory segment에 대한 인간의 preference 결과를 reward 메커니즘에 적용하기 위해서 다음과 같은 수식이 적용된다.

sigma = trajectory segment
sigma, 즉 선호도가 높을수록 궤도에 따른 reward도 덩달아 더 커진다.

B. 정성적 평가

"인간의 선호도" 키워드를 강조하는 이 연구가 진정한 빛을 발하는 분야이다. 정량적으로 평가할 수 있는 reward function이 없을 때, 머신이 인간의 선호도를 만족했는지를 확인할 수 있다. 정성적 평가는 다음과 같이 진행된다.

1. 자연어로 goal(머신이 이뤄야 할 목적)을 정의한다.
2. 인간이 머신이 goal을 어느정도 수행해냈는지 평가한다.
3. trajectory segment를 시각화한 짧은 비디오를 제공한다.

인간이 각 trajectory를 어떻게 평가하고 비교했는가? 에 대한 해석이 더 복잡해진다는 단점이 존재하긴 하지만, 동시에 이 강화학습 알고리즘에 대해 무지한 사람도 선호도 비교에 참여할 수 있다는 장점이 있다.

 

2.2 Our Method

전반적인 프로세스 흐름은 다음과 같다.

관측치 -> 액션

 

reward function estimate

 

1. 파이 : O -> A

머신은 관찰한 값(관측치)에 따른 액션을 취한다. 이 액션은 곧 trajectory의 set을 생성한다. 즉, 앞으로 머신이 어떤 길로 나아갈 것인지에 대한 여러 궤도의 선택지를 제공하는 것이다.

set of trajectories

또한, 파이의 파라미터들은 고전적 강화학습 알고리즘에 따라 reward를 최대화하는 방향으로 업데이트 된다.

 

2. pairs of segments

1번에서 결과로 얻은 trajectory의 set을 기반으로 trajectory segment 쌍들을 추출한다. 추출한 segment간의 선호도 비교를 위해 인간에게 보낸다.

 

3. reward 파라미터 최적화

2번에서 결과로 얻은 선호도 결과를 바탕으로 reward의 파라미터를 조정한다.

 

1, 2, 3 과정은 비동기적으로 교차진행된다. 1->2를 통해 trajectory들이 전달되며 2->3 과정을 통해 trajectory간의 선호도 비교, 3->1 과정을 통해 최적 업데이트된 파라미터들을 전달한다. 


앞에서 살펴본 1,2,3 과정을 자세하게 알아보도록 하겠다.

#1 Optimizing the Policy

3번 과정에서 reward 파라미터들이 최적화되었다면, 고전적인 강화학습 알고리즘을 적용할 때이다.

이 때 RL 알고리즘은 도메인에 맞춰서 아무거나 사용하면 된다고 한다. 본 연구도 atari game과 로봇 시뮬레이터 각각에 맞는 기존 강화학습 알고리즘을 사용하였다고 한다.

이 때 r-hat, reward function은 reward 결과가 zero mean & standard deviation을 따르도록 처리된다.

#2 Preference Elicitation

  • 인간 사용자는 1번 과정에서 얻은 segment의 pair가 주어진다. 이 때 trajectory segment들은 비디오 클립 형태로 제공되며, 사용자에게서 각 segment에 대한 선호도를 조사한다. 
  • 인간이 내린 결정은 (segment1, segment2, distribution) 형태로 DB에 저장된다. distribution은 {1,2}로 표현되어 인간이 segment 1과 2 중 어느 것을 선호했는지가 드러난다.

#3 Fitting the Reward Function

reward function estimate 값인 r-hat을 인간의 preference-predictor로 사용할 것이다.

r-hat, 예측값은 각 predictor 별로 독립적으로 결정된다. 인간이 어떤 segment를 선호하는 이유는 'clip 길이 동안에 합산된 잠재보상 때문이다'라는 가정 하에, r-hat을 인간의 판단을 설명하는 잠재벡터로 설정하는 것이다.

잠재 보상이란?
에이전트 머신에게 주어지는 명시적인 reward가 아니지만, 비디오 클립의 길이에 따라 잠재 보상(latent reward)을 결정한다.
따라서, 머신은 환경에 따라 상호작용하며 latent reward를 예측하고, 결론적으로 reward를 최대화할 수 있는 방향으로 학습된다.

 

r-hat을 결정할 때는 실제 인간의 선호값과 prediction 값 r-hat 사이의 cross-entropy loss를 최소화하는 방향으로 학습한다.

자세한 fit 과정을 알아보자.

 


  • predictor 앙상블을 학습시킨다. 이때 r-hat, 예측 보상값은 각 predictor별로 독립적으로 결정된다.
  • 데이터의 1/e는 각 predictor의 검증 세트로 사용된다. 
  • 수식에 그대로 소프트맥스를 적용해서 확률값을 얻기보다는, 인간이 오류를 낼(잘못된 판단을 할) 10%의 확률을 남겨둔다.

#4 Selecting Queries

어떤 선호 query를 보낼지 고를 단계이다. reward function estimator의 불확실성을 고려하는 동시에 인간의 선호도를 수집(query)해야 한다. 방식은 다음과 같다.

  1. 가장 최근의 agent-environment 상호작용 중에서도 trajectory segment의 쌍 여러개를 샘플링한다.
  2. 각 segment의 reward predictor를 이용해 각 쌍 중에 어느 것이 선호될 것인지를 예측한다. 이 때 예측된 쌍들은 전부 앙상블된다.
  3. 총 앙상블된 값 중에서도 예측값들이 가장 흩어져 있는, 즉 가장 높은 분산을 가지는 prediction 값을 선정한다.

3. Experimental Results - Novel behaviors

  • 고전적인 강화학습 알고리즘과 비교하는 실험은 이 연구가 얼마나 효과적인지(지수로) 확인이 가능하지만, 사실 "인간과의 상호작용을 고려하는 강화학습"은 reward function을 사용할 수 없는 상황에서 진정한 빛을 발한다.
  • 이 연구가 novel complex behaviors, 새롭고(예측 불가) 복잡한 태도 또한 학습할 수 있다는 것에 중점을 둔다.

4. Discussion and Conclusions

기존의 agent-environment 상호작용과 비교한다면 인간의 상호작용을 고려한 강화학습은 비용이 비싸다는 단점이 존재한다. 그러나 별도의 지도학습 reward model을 학습시킨다면, 인간의 상호작용을 고려하면서도 동시에 비용(=복잡도)를 조절할 수 있다는 의의가 있다.