[Train a LM to follow instructions] FLAN, InstructGPT, Chain-of-Thought Prompting

임혜림·2024년 1월 12일
0

자연어처리

목록 보기
7/7

n-shot learning이 갑자기 헷갈려서 쓰는 글!
prompt만 주는건지 fine-tuning하는 건지 헷갈렸는데 이 2개의 방법이 모두 있다.

FLAN: Finetuned Langauge Models Are Zeo-Shot Learners

  • instruct tuning을 사용함에 따라 zero-shot 능력이 향상됨을 보여준다.

Instruction Tuning

  • LM을 next word prediction으로 pre-training하는 것 + 추가적으로 instruction-answer pairs로 fine-tune
  • FLAN의 중요 쟁점은 "얼마나 instruction-tuning시켜야 zero-shot 성능이 좋아질까?"이다. 학습 cluster 수에 대한 모델 성능 향상을 실행해본 결과 사용된 cluster 수가 늘어날 수록 성능이 좋아진다.
  • model size가 작을 때는 효과가 별로 없다.

Conclusion

  • Pretrain-finetune과 prompting method를 통합한 instruction tuning은 평가가 진행된 중요 task에서 zero-shot GPT-3를 능가했다.
  • task cluster의 수에 따라 unseen task에서의 성능이 증가함을 확인할 수 있었다.
  • 충분한 모델 사이즈에서 instruction-tuning이 좋은 결과를 보인다는 것이다.
  • FLAN은 cross-task generalization이 모델 일반화에 중요하다는 것을 보여준다.

InstructGPT

  • LLM이 untruthful, toxic, not helpful한 output을 만들 수 있기 때문에 human feedback을 받아서 user에게 align 시키자.
  • RLHF 방식 사용. 다른 포스팅에 자세히 썼기 때문에 생략합니다!

CoT

  • zeroshot으로 prompt만 주는것
  • 복잡한 reasoning을 요구하면 LM이 tasks를 완성시키는 것에 실패할 때가 많다 -> prompt the LM to generate intermediate reasoning steps
  • prompt를 줄 때 example을 input, chain-of-thought, output으로 구성하고 마지막에 input을 준다.

Evaluation 방법

  • Arithmetic Reasoning
  • Symbolic Reasoning
  • Commonsense Reasoning
profile
hello world

0개의 댓글