In-context Leaning이란?

링딩딩 코딩딩·2023년 9월 2일
0

NLP Study

목록 보기
3/3

What is ICL

정확한 정의 : 사전 학습과 미세 조정을 결합하는 동시에 학습 프로세스 중에 작업별 지침이나 프롬프트를 통합하는 새로운 접근 방식입니다. 모델은 주어진 지침에 따라 상황에 맞는 응답 또는 출력을 생성하는 방법을 학습하여 특정 작업에 대한 성능을 향상시킵니다.

ICL의 핵심은 어떤 훈련을 통해 weight를 업데이트 하지 않고, 별도의 모델 학습과정 없이 프롬프트의 맥락적 의미(in-context)를 가지고 답변을 생성하는 것. 즉, LLM을 활용하여 task를 수행하기 위해 fine-tuning대신 예시와 함께 상황에 맞는 Prompt를 넣어줌으로서 inference단계에서 문제 해결

In-context-Learning?
"Meta Learning"중 하나로 Meta learning이란 학습 과정에서 다양한 스킬과 패턴인식 능력을 동시에 키워, Inference 단계에서 원하는 task에 빠르게 적응할 수 있도록 모델을 학습시키는 것.

Why ICL?

여러 NLP task를 어느정도 잘하는 model을 만드는 것이 추세인데, 파라미터를 키울 수록 그 성능 또한 증가한다는 연구 결과에 의해 Scailing up!을 시킴. 그 과정에서 한 task에 대해 전문화 하기 위한 Fine tuning과정의 cost가 1.데이터, 2.GPU, 3.Loss 면에서 너무 많이 든다. 따라서 훈련을 시킨 LLM을 추론 단계에서 해결할 수 있다면 적용가능성과 cost자체가 줄고 실제 서비스에 사용도 충분히 가능하다.

따라서 context의 예시에 따라 zero-shot, one-shot, few-shot으로 나눌 수 있다는 것.

Difference With

  1. Pre-training : 사전 학습은 라벨링이 없는 Megaton 급의 데이터로부터 비지도학습 중점으로 모델의 일반적인 언어 이해력을 높이는 것에 사용되는 반면, In-context learning은 적은 데이터셋으로 가능하지만 Task를 명시하는 Prompt나 예시를 두고 풀고자하는 문제를 같이 제시하여 모델의 범용성 문제해결능력을 키워주는 방법입니다.
  2. Fine-Tuning: 파인튜닝은 사전학습된 모델을 기반으로 label이 있는 데이터셋에 대해 Task adapted시켜 특정 작업에만 성능을 향상시키는 방법입니다. 예시로 분류모델로 fine tuning된 모델은 Question Answering의 task에 성능을 내지 못합니다. 하지만 In-context learning은 추론과정에서 "어떤 Task에 대해 풀 것이다"라는 prompt명시를 context에 주기 때문에 labeling된 데이터셋에 대해 전문적으로 파인튜닝되지 않습니다. 그렇기 때문에 In "context" leaning이라 불리는 것 같습니다.

Notice!
배우는 입장인지라 틀린 부분이 있거나 잘못해석한 부분이 있다면 많은 지적 부탁드리겠습니다!! 감사합니다.


Reference

0개의 댓글