4.5 KiB
4.5 KiB
In-Context Learning (ICL, 문맥 내 학습)
📌 Brief Summary
In-Context Learning(ICL)은 LLM의 파라미터를 업데이트(학습)하지 않고, 입력 프롬프트 안에 예제(Few-Shot Examples)를 포함시키는 것만으로 모델이 새로운 태스크를 즉석에서 수행하는 능력이다. "학습 없는 학습"으로 불리며, 대형 LLM에서 창발(Emergent)하는 대표적 능력 중 하나다.
📖 Core Content
1. ICL의 종류
| 유형 | 프롬프트 예시 | 특징 |
|---|---|---|
| Zero-Shot | 예제 없이 지시만 | 모델 사전 지식에 완전 의존 |
| One-Shot | 예제 1개 | 형식 힌트 제공 |
| Few-Shot | 예제 2~8개 | 가장 일반적, 성능 안정 |
| Many-Shot | 수십~수백 개 | 긴 컨텍스트 모델에서 강력 |
2. Few-Shot ICL 프롬프트 구조
[시스템 지시]
"다음은 감정 분류 예제입니다."
[예제 1]
입력: "오늘 정말 기분이 좋아!"
출력: 긍정
[예제 2]
입력: "서비스가 최악이에요."
출력: 부정
[예제 3]
입력: "그냥 그저 그래요."
출력: 중립
[실제 질의]
입력: "이 제품 꽤 마음에 드네요."
출력: ???
→ 모델이 패턴을 파악하여 파인튜닝 없이 "긍정" 출력.
3. ICL 능력이 창발하는 메커니즘 (추정)
[현재 학계 주요 가설]
가설 1: Induction Head 메커니즘
특정 Attention Head가 "[입력 X → 출력 Y] 패턴"을 파악
→ 새 입력 X'에서 Y'를 유추 (패턴 복사)
가설 2: 사전학습 데이터 도움
학습 데이터에 (입력, 출력) 쌍이 많이 포함
→ 유사한 패턴 매칭 시 자동 활성화
가설 3: 메타러닝 (Learning to Learn)
사전학습이 "태스크 패턴 인식" 자체를 학습
→ 프롬프트의 구조만 보고 태스크 종류 파악
4. ICL vs Fine-Tuning 비교
| 구분 | ICL (In-Context Learning) | Fine-Tuning (SFT/LoRA) |
|---|---|---|
| 파라미터 업데이트 | ❌ 없음 | ✅ 있음 |
| 속도 | 즉시 (프롬프트만) | 학습 시간 필요 |
| 비용 | 토큰 비용만 | GPU 비용 |
| 성능 | 모델 용량에 제한 | Fine-tuning 후 더 높음 |
| 지식 유지 | 컨텍스트 창 제한 | 파라미터에 영구 저장 |
| 적합 사용 | 빠른 프로토타입 | 정밀 도메인 특화 |
5. 성능에 영향을 주는 요소
| 요소 | 효과 |
|---|---|
| 예제 수(N) | N↑ → 성능↑ (단, 컨텍스트 한계 존재) |
| 예제 품질 | 관련성 높은 예제 > 무작위 예제 |
| 예제 순서 | 순서가 성능에 영향 (최근 예제 더 강한 영향) |
| 형식 일관성 | 입출력 형식이 일관적일수록 성능 향상 |
| 모델 크기 | 대형 모델(>7B)에서 ICL 능력 비약적 향상 |
6. RAG와의 결합 (Dynamic Few-Shot)
[정적 Few-Shot]
사람이 미리 선정한 예제 → 프롬프트에 고정 포함
문제: 새 질의와 무관한 예제 포함 가능
[Dynamic Few-Shot (RAG + ICL 결합)]
질의 → 임베딩 → 벡터 DB에서 유사 예제 검색
→ 가장 관련된 例 N개 동적으로 선택 → 프롬프트 구성
→ 태스크 특화 ICL 자동화
🔗 Knowledge Connections
- Related Topics: Chain-of-Thought (CoT, 사고 사슬), RAG (검색 증강 생성), SFT (Supervised Fine-Tuning), LoRA (Low-Rank Adaptation), 임베딩 (Embedding), 벡터 데이터베이스 (Vector Database), Mechanistic Interpretability (기계적 해석 가능성)
- Projects/Contexts: AI 추론 시스템
- Contradictions/Notes:
- ICL의 창발 메커니즘은 아직 완전히 해명되지 않음 → Induction Head 가설이 가장 유력하나 전부가 아닐 수 있음.
- 예제 순서 효과 (Recency Bias): 마지막 예제에 과도하게 의존하는 경향 → 예제 순서 주의 필요.
- 신규 키워드:
Dynamic Few-Shot,메타러닝 (Meta-Learning),Recency Bias→ 탐색 큐 추가.