# "RLHF는 RL의 작은 부분일 뿐입니다." - Andrej Karpathy

> Clean Markdown view of GeekNews topic #16246. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=16246](https://news.hada.io/topic?id=16246)
- GeekNews Markdown: [https://news.hada.io/topic/16246.md](https://news.hada.io/topic/16246.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2024-08-09T10:46:01+09:00
- Updated: 2024-08-09T10:46:01+09:00
- Original source: [twitter.com/karpathy](https://twitter.com/karpathy/status/1821277264996352246)
- Points: 8
- Comments: 1

## Summary

RLHF는 LLM 학습의 중요한 단계 중 하나지만, 진정한 강화학습(RL)과는 차이가 있으며, AlphaGo와 같은 사례에서 RLHF가 적합하지 않음을 설명합니다. RLHF는 인간 평가자의 선호도를 반영하는 보상 모델을 사용하지만, 이는 실제 문제 해결보다는 인간이 좋아할 만한 응답을 평가하는 데 그칩니다. 그럼에도 불구하고 RLHF는 LLM 어시스턴트 구축에 유용하며, 특히 환각을 줄이는 데 도움이 될 수 있습니다.

## Topic Body

- Reinforcement Learning from Human Feedback (RLHF)는 사전 학습(pretraining)과 지도 학습 파인튜닝(supervised finetuning, SFT) 이후 LLM 학습의 세 번째(그리고 마지막) 주요 단계임  
  - RLHF에 대한 내 생각은 RL의 일부분일 뿐이며, 이는 널리 알려져 있지 않음  
  - RLHF는 실제로 RL(강화학습)이라고 하기에 부족함  
  - 예로 AlphaGo는 실제 RL로 훈련되었으며, RLHF로 훈련되었다면 지금의 성과를 내지 못했을 것임  
- **AlphaGo를 RLHF로 훈련했다면 어떻게 되었을까?**  
  - 인간 평가자에게 두 개의 바둑판 상태를 제시하고 어느 쪽이 더 나은지 선택하게 함  
  - 이와 같은 비교를 약 10만개 수집하고, 인간의 평가(Vibe Check)를 모방하는 '"Reward Model"(RM, 보상모델) 신경망을 학습시킴  
  - 이 보상 모델을 기준으로 RL을 수행하여 좋은 평가를 받는 움직임을 학습함  
  - 하지만 이는 바둑에서 유의미한 성과를 내지 못했을 것임  
- **RLHF가 AlphaGo에 적합하지 않은 두 가지 주요 이유**  
  - 첫째, Vibe는 오해의 소지가 있을수 있음. 이 보상은 실제 승리라는 보상이 아닌 부정확한 프록시(대리) 목표임  
  - 둘째, RL 최적화 과정에서 보상 모델이 훈련 데이터의 범위를 벗어난 비정상적인 상태에 높은 점수를 주어 최적화가 왜곡될 가능성이 큼  
    - RM은 바이브를 모방하는 수십억 개의 매개변수를 가진 대규모 신경망임  
- **LLM에 RLHF를 적용할 때의 문제점**  
  - LLM의 보상 모델 역시 인간 평가자들이 선호할 만한 응답에 높은 점수를 주는 경향이 있음  
    - 이 보상 모델이 "실제" 문제를 해결하는 것이 아니라, 인간이 좋아할 것 같은 응답을 평가하는 대리 목표에 불과함  
  - RLHF를 너무 오래 실행할 수 없는데, 모델이 보상 모델을 속이는 방식으로 응답하는 법을 빠르게 학습하기 때문임  
   - LLM 어시스턴트가 "The the the the the the"와 같이 이상한 것으로 응답하기 시작하는 것을 볼 수 있음  
   - 이는 웃기게 보이지만 RM은 이를 매우 훌륭하게 생각함  
   - RM의 훈련 데이터 범위를 벗어난 영역에서 적대적 예제를 발견한 것   
  - 이러한 이유로 RLHF를 너무 많은 최적화 단계에서 실행할 수 없으며, 몇 백/천 단계를 수행한 후에는 최적화가 RM을 속이기 시작하기 때문에 중단해야 함  
  - 이는 AlphaGo와 같은 RL이 아님  
- **RLHF가 여전히 LLM Assistant 구축에 유용한 이유**  
  - RLHF는 Generator(생성자)-Discriminator(판별자) 간의 격차에서 혜택을 얻음  
    - 즉, 많은 문제 유형에서 인간 평가자가 처음부터 이상적인 답을 작성하는 대신 몇 가지 후보 답안 중 가장 좋은 답을 선택하는 것이 훨씬 더 쉬운 작업임  
    - 좋은 예로 "클립에 대한 시를 생성하라"와 같은 프롬프트에서 여러 후보 중에서 좋은 시를 선택하는 것이 더 쉬움  
  - RLHF는 이러한 인간 감독의 '용이성' 격차에서 혜택을 얻는 방법임  
  - 또한, RLHF는 환각(잘못된 정보 생성)을 줄이는 데도 유용함  
    - RM이 훈련 중에 LLM이 무언가를 지어내는 것을 잡아낼 수 있을 정도로 강력한 모델이라면 낮은 보상으로 불이익을 주는 방법을 학습하여 모델에게 확실하지 않은 사실에 위험을 감수하는 것을 싫어하도록 가르칠 수 있음   
    - 그러나 환각과 그 완화에 대한 만족스러운 치료법은 완전히 다른 주제임   
- **결론적으로 "RLHF는 유용하지만, 진정한 RL은 아님"**  
  - 지금까지 오픈 도메인에서 대규모로 프로덕션 수준의 "실제" RL을 LLM에 설득력 있게 달성하고 입증한 사례는 없음  
  - 직관적으로도 오픈 도메인 문제 해결에서 실제 보상(즉, 게임에서 이기는 것과 같은)을 얻는 것은 매우 어렵기 때문   
  - 역학이 제한되고 보상 함수가 평가하기 쉽고 속일 수 없는 바둑과 같은 폐쇄적이고 게임과 유사한 환경에서는 재미있음  
  - 예를 들어, 문서 요약이나 약간 모호한 질문에 대한 답변, 농담하기, Java 코드를 Python으로 다시 작성하는 등에 대해 어떻게 객관적인 보상을 줄 수 있을까?  
    - 이를 향한 길은 원칙적으로 불가능한 것은 아니지만 사소하지도 않으며 창의적인 사고를 필요로 함  
    - 하지만 이 문제를 설득력 있게 해결하는 사람은 실제 RL을 실행할 수 있을 것임  
      - AlphaGo가 바둑에서 인간을 이기게 한 종류의 RL  
    - 이 문제를 해결하는 사람은 오픈 도메인 문제 해결에서 인간을 능가하는 LLM을 만들 수 있을 것임

## Comments



### Comment 27887

- Author: xguru
- Created: 2024-08-09T10:47:02+09:00
- Points: 1

#### [Hacker News 의견](https://news.ycombinator.com/item?id=41188647)   
- AI 코딩 보조는 향후 몇 년 동안 크게 발전할 것임  
  - Chat AI는 명확한 보상 함수가 없어 품질 판단이 어려움  
  - 코딩 AI는 테스트 작성, 코드 작성, 컴파일, 실패한 테스트 케이스 검사 등을 무한 루프로 수행할 수 있음  
  - 이 과정은 미래 AI 코딩 모델의 훈련 데이터로 사용될 수 있음  
  - 언어 모델도 수학적 정리 증명에서 뛰어난 성과를 보일 것임  
  - 정리 검증 소프트웨어는 100% 정확한 피드백을 제공하여 강화 학습을 가능하게 함  
  - 프로그램의 정확성에 대한 형식적 검증은 지루하지만 LLMs가 이를 변화시킬 수 있음  
  - LLMs가 생성한 주석을 엔진이 사용하여 정확성을 증명할 수 있음  
  
- RLHF와 유사한 저렴한 DIY 방법은 모델을 미세 조정하여 출력에 점수를 추가하는 것임  
  - 좋은 답변을 만드는 손실 함수를 작성할 수 없기 때문에 RLHF가 필요함  
  - 기본 모델이 프롬프트에 대해 n개의 완료를 생성하고 수동으로 점수를 매김  
  - 그런 다음 프롬프트 => (완료, 점수) 쌍이 훈련 세트가 됨  
  - 모델이 훈련되면 프롬프트에 원하는 점수를 포함하면 모델이 그 점수에 맞는 답변을 생성하려고 함  
  
- 다양한 ML 알고리즘이 보상 함수를 "게임"하는 문제는 금융 및 경제 문제와 유사함  
  - 사람들이 생산적인 일을 하지 않고 돈을 얻으려고 하면 비생산적인 것이 많아짐  
  - 이를 완화하려면 보상 함수를 게임하는 것을 벌하는 시스템이 필요함  
  - 이 시스템은 실제 가치를 이해하고 보상 함수가 높지만 가치가 낮은 경우를 식별할 수 있어야 함  
  
- Karpathy는 이 주제에 대해 훨씬 더 잘 알고 있지만, 이 게시물에는 뭔가 빠진 느낌임  
  - Go는 인간이 해결하기에는 너무 복잡한 게임임  
  - LLM은 인간을 완벽하게 모방하는 것이 목표임  
  - AlphaGo와 Stockfish는 게임 이해를 발전시킬 수 있지만, LLM은 언어의 경계를 확장할 수 없음  
  - LLM은 본질적으로 모방 모델이기 때문에 RLHF가 LLM 영역에서 더 의미가 있음  
  
- 현재의 transformer 기반 LLM과 최적의 시퀀스 예측 간의 "격차"가 무엇인지 궁금함  
  - 현재 LLM은 훈련 중에 토큰 예측의 교차 엔트로피를 최소화하는 간단한 목표 함수를 가짐  
  - Solomonoff induction은 최적의 시퀀스 예측을 달성함  
  - SI와 GPT4의 대화가 얼마나 다를지 궁금함  
  - AGI는 최적의 시퀀스 예측 이상이 필요함  
  - 인간 지향적인 목표 함수는 사용자가 만족하는 답변을 제공하는 확률을 최대화하는 것임  
  - 하지만 여러 사용자가 있기 때문에 집계 방법이 문제임  
  - Karpathy는 이 문제를 암시하고 있음  
  
- LEAN과 같은 증명 분야는 상태, 행동, 진행 측정, 최종 목표 상태를 가짐  
  - Karpathy가 LEAN 증명을 자동화하는 데 집중하면 수학을 영원히 바꿀 수 있음  
  
- AlphaGo는 인간 피드백이 없었지만 인간으로부터 배웠음  
  - AlphaZero는 인간의 영향을 배제하고 순수한 강화 학습을 사용함  
  
- SPAG 논문은 언어 모델을 사용한 진정한 강화 학습의 예임  
  - Karpathy의 게시물에서 "규모"와 "개방형 도메인"이 빠져 있음  
  - 적대적 언어 게임은 유망해 보임  
  
- LLM + RL이 개방형 도메인 문제 해결에서 사람을 능가할 것이라는 결론은 근거가 부족함
