정확한 정의 : 사전 학습과 미세 조정을 결합하는 동시에 학습 프로세스 중에 작업별 지침이나 프롬프트를 통합하는 새로운 접근 방식입니다. 모델은 주어진 지침에 따라 상황에 맞는 응답 또는 출력을 생성하는 방법을 학습하여 특정 작업에 대한 성능을 향상시킵니다.
ICL의 핵심은 어떤 훈련을 통해 weight를 업데이트 하지 않고, 별도의 모델 학습과정 없이 프롬프트의 맥락적 의미(in-context)를 가지고 답변을 생성하는 것. 즉, LLM을 활용하여 task를 수행하기 위해 fine-tuning대신 예시와 함께 상황에 맞는 Prompt를 넣어줌으로서 inference단계에서 문제 해결
In-context-Learning?
"Meta Learning"중 하나로 Meta learning이란 학습 과정에서 다양한 스킬과 패턴인식 능력을 동시에 키워, Inference 단계에서 원하는 task에 빠르게 적응할 수 있도록 모델을 학습시키는 것.
여러 NLP task를 어느정도 잘하는 model을 만드는 것이 추세인데, 파라미터를 키울 수록 그 성능 또한 증가한다는 연구 결과에 의해 Scailing up!을 시킴. 그 과정에서 한 task에 대해 전문화 하기 위한 Fine tuning과정의 cost가 1.데이터, 2.GPU, 3.Loss 면에서 너무 많이 든다. 따라서 훈련을 시킨 LLM을 추론 단계에서 해결할 수 있다면 적용가능성과 cost자체가 줄고 실제 서비스에 사용도 충분히 가능하다.
따라서 context의 예시에 따라 zero-shot, one-shot, few-shot으로 나눌 수 있다는 것.
Notice!
배우는 입장인지라 틀린 부분이 있거나 잘못해석한 부분이 있다면 많은 지적 부탁드리겠습니다!! 감사합니다.