Step1: Collect Demonstration Data, and train a supervised policy
High alignment in Language Model
-Demonstration Data:
이런 prompt에는 이런 거 담아/생성하지 마
-(1) A prompt is sampled from our prompt dataset
ex. Explain the moon landing to a 6 year old
(2) A labeler demonstrates the desired output behavior
ex. Some people went to the moon ~
(3) This data is used to fine-tune GPT-3 with supervised learning
Step2:Collect comparison data, and train a reward model
Reinforcement Learning from Human Feedback
-(1) A prompt and several model outpus are sampled.
ex. Explain the moon landing to a 6 year old
Outputs from different models
A: Explain Gravity.. , B: Explain War…, C: Moon is a natural satellite of ! , D: People went to the moon
(2) Labeler ranks the outputs best to worst
(3) This data is used to train the reward model
Step3: Optimize a policy against the reward model using rl
-(1) A new prompt is sampled from the dataset
ex. Write a story about frogs
(2) The policy generates an output (PPO Trainer)
ex. Once upon a time~
(3) The reward model calculates a reward for the output
(4) The reward is used to update the policy using PPO
Supervised Fine Tuning (SFT:지도 학습 기반 Fine Tuning)
-Dataset: 약 13K
13000개의 dataset (prompt, answer) sample한 점이 놀라운 점
GPT API 서비스에 수집된 Command Prompt(일부는 Labeler가 추가)
이에 대한 정답은 Labeler가 작성
-Foundation model(GPT-3)를 Dataset에 대해 FineTuning
Result
-Foundation model이 명령-응답형 생성을 위한 워밍업이 갖춰진 상태
-주관적인 만족스러움에 대한 지표가 충분히 반영되지 않은 상태
만족스러운 지표 학습(RM: A reward model by supervised learning)
-Dataset: 약 33K
GPT API service 및 labeler 작성 prompt
Model은 이에 대한 다수의 응답 목록 생성
-Labeling
목록에서 응답 둘을 쌍으로 Labeler에게 Display
Labeler는 둘 중 만족스러운 응답을 승자로 Tagging
RLHF(Human Feedback)
-Ranking Model(Reward Model)
일대일 게임에 대한 결과(승자 Tagging)을 모으면 General한 Ranking 함수 학습 가능
6B size model을 Supervised Learning
Result
-이후 RL Reward Model로 삼음
-응답 지표(Reward)를 제시함으로써, RL을 통한 Finetuning이 가능하게 해줌
만족스러운 지표를 추종하도록 언어모델 Fine tuning (LLM finetuned by RL:PPO)
-인간의 개입없이 31K Prompt training
-State(상태):
GPT API Service에서 Sampling한 Prompt
-Action(액션):
언어 모델은 응답 생성
-Reward(보상):
Step2에서 학습한 Reward Model로부터 응답에 대한 보상 수신
-Training(학습):
응답에 대한 보상으로부터 Reinforce)를 반영하여 Language Model Parameter 수정
Result
설계한 지표를 추종하도록 Finetuning된 ChatGPT
강화학습 목표식
KL항
-Kullback-Leibler divergence
-두 분포가 다를 수록 큰 값
Reward항
-Reward Model 평가값
의미
-보상을 키우는 쪽으로
=> Base Model, Reward Model 분포 너무 다르지 않게, Reward는 극대화되도록 Training
-단, SFT와 너무 달라지는 것을 지양
-Foundation Model GPT-3는 방대한 언어 지식이 자기 회귀 모델 자체에 코딩이 됨
-채팅 형식의 명령 추종형 생성에 특화
-RLHF: 명령에 대한 적절한 응답에 대한 Ranking modeling을 Human Feedback을 기반으로 학습
-세상을 대격변 시키는 동력으로 작용 중
-유사 ChatGPT 구축론
-거대 언어모형 학습 최적화
-거대 언어 모형 응용 최적화 관점
-Google Bard (PaLM2)
Content:
-Seed Task Set
저자들이 생성한 175개의 명령(instruction) 예제들 (명령어 당 Instance 하나)
-예제 일부를 조합하여 Prompt를 작성하고 이로부터 후속 예제 (instance)를 API(GPT-3)로부터 확보
총 52K 명령에 대한 82K의 예제 Dataset 구축
그 과정에서 Filtering 등을 통해 고품질의 예제만 남김
-확보된 82K 명령-예제 Dataset을 활용하여 Vanilla GPT-3 Model을 Finetuning
Result
ChatGPT에 준하는 성능 확보
의미
High level Labeling 작업 (Supervised Learning, RLHF)없이 효과적인 ChatGPT 스타일의 Model 구축 대안 방법
-Scaling 법칙이 바뀜
동일 Computing 자원으로는 Model Size를 키우는게 Dataset을 키우는 것보다 더 효과적이다
작은 Model에서 더 많은 token을 학습시키는 것이 optimized 접근이다.
-LLaMA 의미
공개 Model로서 민간에서 Fine tuning 또는 Inference용으로 접근 가능한 size
13B model이 GPT-3 성능 상회
-학습은 여전히 많은 자원 필요
Self-Instruct 형식으로 명령 Dataset 확보 후 LLaMa 7B(13B)를 Fine Tuning
Self-Instruct와 변경점
-명령 Dataset 구축시 ChatGPT 사용
Prompt Template + Seed 명령 Set으로 Prompt 생성
구축 과정 간소화
52K Dataset 생성: 약 $500 비용으로 사람에 비해 훨씬 저렴함
LLAMA 7B(13B)에 대해 Fine Tuning
3시간: 8대의 A100
영어에 대한 만족스러운 성과 (ChatGPT와 유사)
의미
-RLHF를 통한 ChatGPT는 Nice한 방법이지만 Human Labeler 비용 소모
-강력한 성능으로 학습된 ChatGPT로부터 정답 Set을 구성해서 Finetuning하는 전략
-아쉬운 점: 한국어 Corpus에는 취약
A tool designed to extend the capabilities of the ChatGPT language model.
These plugins are essentially add-ons that allow ChatGPT to access external resources, perform specific tasks, or improve its overall performzance.
Process of ChatGPT Plugin
LangChain:
-언어 모형 활용 응용 프로그램 개발 Framework
GPT-4와 External Source data 결합
벡터 DB 등 Custom 문서 저장 및 조회 방법과 결합
추론은 GPT-4 활용
-문제 해결에 필요한 개발 요소 결합
AutoGPT:
문제 해결을 위한 prompt 생성
External Source 조회 및 저장
Prompt 확장
LangChain으로 구현 가능
:Scaling language modeling with pathways
-Decoder 기반, parameters 540B, 학습 token 수: 780B
컴퓨틴 최적화된 확장: Data, Model Scaling 1:1
Dataset/문제 혼합: 다국어, 병렬 다국어, Programming, 수학 등 전문분야, Toxity에 대한 개선
평가: 텍스트 이해 / 생성 능력확장, 영어 문서 비율 낮아졌으나 성능 높아짐
특이점: 영어 이외 영역에 일본어/한국어 targeting