이번에 알아볼 내용은 In Context Learning / ICL 에 대해서 알아보겠습니다.
이는 LLM 관련 논문 또는 설명들을 볼때 많이 나오는 개념인데요. 너무 어렵지 않고 직관적으로 이해할 수 있게 정리해보겠습니다.
1. In-Context Learning 이란? (ICL 이란?)
- In-Context Learning(ICL)은 LLM이 추가 학습 없이 프로프트 내 정보만으로 태스크를 수행하는 방법을 말합니다.
* GPT-4, LLaMA, PaLM 같은 최신 모델에서 활용되며, Fine tuning 없이도 다양한 작업을 수행할 수 있다는 장점을 가진 방법입니다.
- ICL은 주어진 프롬프트에서 제공된 데이터를 활용하되, 모델이 사전에 훈련된 가중치를 변경하지 않고도 문맥(Context) 내에서만 학습하는 방식이기에, 학습을 통해 생길 수 있는 잘못된 가중치 업데이트를 방지할 수 있고, 학습이 불필요하기에 전반적인 비용이 적게 든다는 장점이 있습니다.
- ICL이 사용되는 방식은 아래와 같이 Zero-shot / One-shot / Few-shot 방식으로 정리해 볼 수 있습니다.
* Zero-shot learning : 예제 없이 바로 답변을 생성 (사전 학습된 지식만을 활용)
예제)
Q. The capital of France is ?
A : Paris
* One shot learning : 단 한 개의 예제만을 활용해서 패턴 학습 및 새로운 입력에 대해 올바르게 응답
예제)
Q. Apple -> 사과
Q. Banna -> ?
A. 바나나
* Few shot learning : 모델이 문맥 내에서 패턴을 학습하고, 새로운 입력에 대해 올바른 출력 생성
예제)
Q. Apple -> 사과
Q. Banana -> 바나나
Q. Car -> 자동차
Q. Tree -> ?
A. 나무
2. ICL 과 Fine Tuning
- ICL과 Fine tuning은 모델을 특정 태스크에 맞게 적응(Adapt)시킨다는 점에서 동일하지만 작동방식적인 측면에서 아래와 같이 차이점을 정리해볼 수 있습니다.
비교 항목 | ICL | Fine Tuning |
모델 업데이트 | X (학습된 모델의 가중치 그대로 사용) |
O (학습된 모델의 가중치 업데이트) |
추가 데이터 (모델 학습용) 필요여부 |
X | O |
새로운 태스크 적용 가능성 |
O (Few-shot 예제만 있으면 가능) |
X (새로운 데이터로 재학습 필요) |
- 즉 ICL은, 추가적인 훈련 없이 다양한 테스크에 적용가능하다는 점이 있기에 이를 LLM에서 활용하여 강력한 Zero shot 또는 Few shot 성능을 만들어낼 수 있는 방법입니다.
3. ICL의 한계
하지만 이렇게 유용한 ICL은 다음과 같은 한계점들을 가지고 있습니다.
1) 메모리 제한(Context Window Size)
- 모델의 프롬프트 길이(Context Window size)가 제한됨
- 너무 긴 문맥을 처리하려면 Long-from의 컨텍스트 최적화가 필요
2) 정확도 문제
- 제공된 예제가 충분하지 않으면 패턴을 제대로 학습할 수 없음
- 몇 개의 예제로는 일반화 능력이 부족할 수 도 있음
3) 모델 크기에 의존
- ICL은 많은 데이터로 충분히 학습된 LLM에서 효과적으로 작동함
- 경량화 시켜야하는 sLLM 등에서도 효과를 발휘하기에는 제한사항이 있음
'딥러닝 with Python' 카테고리의 다른 글
[딥러닝 with Python] Decoder only 모델과 Encoder-Decoder 모델 비교 (in LLM) (0) | 2025.02.23 |
---|---|
[딥러닝 with Python] DPO(Direct Preference Optimization)와 RLHF(Reinforcement Learning with Human Feedback) (0) | 2025.02.22 |
[딥러닝 with Python] Affinity Score란? (0) | 2025.02.20 |
[딥러닝 with Python] 옵티마이저(Optimizer)란? (0) | 2025.02.19 |
[개념정리] FLOPS란? FLOPS(Floating Pont Operations Per Second) (0) | 2025.02.18 |
댓글