티스토리 뷰
[논문 리뷰] Training language models to follow instructions with human feedback
qkrgusqls 2023. 7. 24. 20:10Training language models to follow instructions with human feedback (InstructGPT)
데이터 청년 캠퍼스에서 논문 분석을 하는데, 생각했던 것보다 난이도가 높아 논문분석을 한 동영상을 정리한 것을 올린다.
비교적 최신의 논문이고 GPT에 관한 논문이었고, 아래의 동영상을 통해 위 논문을 이해하는데 많은 도움을 받았다.
https://www.youtube.com/watch?v=vx3hxa9Bi5c
GPT 연구 동향
GPT-3 의 open ai는 강화학습으로 GPT 연구의 핵심을 잡았다 ➡️ Instruct GPT
결국 이미지도 이해하는 Chat GPT로 발전할 수 있었다.
GPT - 1
주어진 토큰 시퀀스를 바탕으로 다음 시퀀스를 예측하는 모델이다.
GPT - 2
Fine- tuning 없이 zero-shot으로 task를 풀수는 없을까?
대량의 데이터셋을 활용했고, batch size, input length, vocab size, model size 모두 증대시켰다.
별도의 과정을 거치지 않아도 바로 zero-shot으로 생성 가능하다.
'제로 샷' 이란 새로운 작업을 수행하는 방법을 직접 배우지 않고도 수행할 수 있는 스마트 컴퓨터 프로그램을 의미
GPT - 3
- In-context learning 이라는 개념이 주요하게 자리를 잡았다.
문맥에 따라 이해하지 않고, 특정 상황을 기억하지 못하는 것을 해결하기 위해서 도입된 개념이다. 이전에 주고 받은 대화의 정보를 상태로 유지하면서 새로운 입력에 더 잘 대응하고 일관성 있는 답변을 제공하는 것이 목표.
- input에 demonstration을 추가했다.
여기서 demonstration은 시연의 개념을 활용하는 것. 사용자가 모델에게 작업의 수행을 직접 알려주기 보다는 모델에게 원하는 결과를 보여주고, 이를 모델이 이해하는 방향으로 작업을 수행할 수 있게 됨.
✔️ GPT - 3의 문제점
Large Language Model이라면 지적 받았을 만한 것으로 사실이 아닌데, 사실인 것 처럼 꾸며내기도 한다. 또한, 유해한 텍스트를 생성하거나 사용자 지시를 따르지 않기도 한다.
논문의 목표
논문은 Alignment에 초점을 맞추려고 했다.
사용자의 의도에 맞게 작동하도록 LM을 학습시키려고 한다.
평가지표
명시적 의도(사용자의 지시에 제대로 따르기), 암묵적의도(신뢰도를 유지하면서 편향되거나 해롭지 않은 답변을 내놓아야함)에 맞아야한다.
- 도움
- 정직
- 무해
논문의 제안
본 논문에서는 GPT - 3 모델을 fine-tuning하는 전략을 제안한다.
fine- tuning 방식으로 RLHF 방식( Reinforcement Learning from Human Feedback ) 채택한다.
여기서 강화학습의 reward로서는 인간의 평가가 활용 되었다.
RLHF는 강화학습에 대한 인간의 피드백을 활용하여 에이전트를 학습시키는 접근 방법. 인간의 피드백은 보통 예상되는 결과와 실제 결과의 차이를 가르쳐주는 것으로 이해. RLHF는 강화학습을 더 빠르고 효율적으로 만드는 방법으로 간주 될 수 있음
한계점 : 연구에 참여한 저자들과 labeler들로 사용자들이 한정되어, 사용자의 선호도가 광범위하게 반영되지는 않았다.
Step이 3가지 존재한다.
1. demonstration 구축
- 총 13000개 정도의 데이터가 있음
- prompt : labeler가 직접 작성한 것 , response도 labeler들이 직접 작성
- 16 epoch 정도를 학습
2. 인간의 선호도를 반영한 비교군 데이터 구축 및 reward model 학습
- comparison data : 각 prompt에 대응하는 4~9개의 response 생성 결과물을 대상으로 labeler가 선호도 순위를 매김
- 두 reward의 차이가 클수록 Loss가 감소한다
3. reward model을 활용하여 PPO 기법으로 GTP -3 fine-tuning
- PPO 기법(강화학습 기법)
- reward model을 reward funcion으로 활용하여, 강화학습의 PPO 알고리즘으로 보상을 최대화하도록 GPT -3 를 fine - tuning → 완성한 모델이 바로 Instruct GPT
- reward model을 value function으로 하여 PPO를 통한 policy의 최대화
- objective function 이 reward function 최대화
Evaluation
labeler의 선호도 반영하고, 최종적으로 fine-tuning의 과정을 거친다.
alignment : LM이 사용자의 의도에 맞게 동작하는가?
3가지 기준을 만족하는가?
- 도움 : labeler의 판단
- 정직 : TruthfulQA와 close-domain 결과로 평가
- 무해 : 독성 측정용 데이터셋으로 평가
결과
Instruct GPT 보다 GPT-3를 사용한 labeler들은 Instruct GPT 결과를 더 선호하며, 학습에 참여하지 않은 labeler들도 Instruct GPT를 긍정적으로 평가했다. 특히 175B 사이즈의 모델을 통해 GPT-3와 Instruct GPT를 비교하면, Instruct GPT가 더 선호되었다는 정량적인 증거가 있다.
Instruct GPT는 GPT-3에 비해 더 정직한 답변을 제공하는데, 입력에 없는 정보를 임의로 생성하지 않는 것으로 확인되었다. 또한, Toxity 측정 데이터셋으로 평가한 결과, Instruct GPT가 약간 개선되긴 했지만 여전히 편향성을 완전히 개선하지는 못했다.
Instruct GPT는 코드 요약, 코드 질의 응답, 다른 언어로 응답하는 등의 작업에서도 좋은 추론 능력을 보인다. 그러나 완벽하지 않으며 여전히 일부 실수를 범한다는 점을 감안해야 한다. 그렇지만 대화에 특화된 능력으로 발전하고 있으며, 이를 위해 데이터 구축 과정에서 약간의 차이가 있을 수 있다.
'AI > NLP' 카테고리의 다른 글
비전공자의 챗봇 구축 경험 정리 : Rule-based, RAG 기반 LLM 챗봇 (0) | 2025.04.15 |
---|---|
[데청캠] 자연어처리기법 : 토큰화, 불용어처리 (1) | 2023.07.20 |