In-Context Learning (KO)
문맥 내 학습 (영어: In-Context Learning, ICL)은 대형 언어 모델(LLM)의 근본적인 능력으로, 요청의 문맥(프롬프트) 안에 제공된 예시(데모)만을 활용하여 새로운 과제를 '즉석에서' 학습하는 것을 말합니다. 핵심적인 특징은, 이 적응 과정이 모델의 가중치(파라미터)를 업데이트하지 않고, 즉 전통적인 fine-tuning 없이 이루어진다는 점입니다[1][2].
이 메커니즘을 통해 모델은 특별히 훈련받지 않은 과제도 해결하는 놀라운 유연성을 발휘할 수 있습니다. ICL은 대형 언어 모델을 강력하고 범용적으로 만든 핵심적인 돌파구 중 하나로 자리매김했습니다[3].
작동 메커니즘
ICL이 어떻게 작동하는지에 대한 정확한 이해는 여전히 활발한 연구 분야이지만, 이 현상을 설명하는 몇 가지 주요 이론이 존재합니다.
Transformer - 메타 최적화기로서의 트랜스포머
유력한 이론 중 하나는, Transformer 아키텍처가 사전 학습 과정에서 순방향 패스(forward passes) 안에 학습 알고리즘을 구현하는 법을 익힌다는 것입니다. 모델이 예시가 포함된 프롬프트를 받으면, 가중치가 아닌 내부 상태(활성화 값)를 조정하며 제시된 과제를 해결하기 위한 일종의 암묵적 최적화를 수행합니다[4].
베이즈 추론
또 다른 이론은 ICL을 베이즈 추론의 한 형태로 바라봅니다. 방대한 데이터로 사전 학습된 모델은 수많은 개념에 대한 사전 분포를 갖고 있습니다. 문맥 안의 예시들은 증거로 작용하여, 모델이 잠재적 개념에 대한 사후 확률 분포를 정교하게 다듬을 수 있게 합니다. 다시 말해, 예시들은 모델이 지금 이 순간 자신이 알고 있는 수천 가지 과제 중 정확히 어떤 것을 해결해야 하는지 '파악'하도록 도와줍니다[5].
In-Context Learning의 유형
제공되는 예시의 수에 따라 ICL은 세 가지 주요 유형으로 나뉩니다.
- Few-shot Learning (소수 예시 학습): 가장 널리 쓰이고 균형 잡힌 접근 방식입니다. 모델에 몇 가지(보통 2~10개)의 데모 예시를 제공합니다.
예시 (감성 분류):
Текст: "Какой прекрасный день!" Тональность: Позитивная Текст: "Я ненавижу стоять в пробках." Тональность: Негативная Текст: "Этот фильм был довольно средним." Тональность:
예상 답변:
Нейтральная
- One-shot Learning (단일 예시 학습): 모델에 예시를 딱 하나만 제공합니다. 이것만으로도 응답 형식을 설정하고 zero-shot 방식에 비해 성능을 크게 향상시키기에 충분한 경우가 많습니다.
- Zero-shot Learning (예시 없는 학습): 모델에 예시 없이 지시문이나 과제 설명만 제공합니다. 이 경우 모델은 사전 학습 중 습득한 지식에 전적으로 의존합니다.
실용적 활용
ICL을 올바르게 적용하면 비용이 많이 드는 개발과 fine-tuning 없이도 다양한 과제를 해결할 수 있습니다.
- 창의적·스타일 관련 과제의 경우 (특정 스타일의 코드 생성, 특정 작가 문체로 글쓰기):
- Few-shot Learning을 권장합니다.
- 예시는 모델이 원하는 스타일, 형식, 출력 구조를 포착하는 데 도움을 줍니다.
- 명확한 지시가 있는 단순 과제의 경우 (번역, 요약, 간단한 질의응답):
- 종종 Zero-shot Learning으로 충분합니다.
- 현대 모델들은 해당 과제가 사전 학습의 일부였다면 충분히 잘 처리할 수 있습니다.
- 출력 형식이 중요한 과제의 경우 (JSON 생성, 개체명 추출):
- One-shot 또는 Few-shot Learning을 권장합니다.
- 예시 하나만으로도 요구되는 응답 구조를 명확히 설정하여 형식 오류를 예방할 수 있습니다.
장점과 단점
| 장점 | 단점 |
|---|---|
|
|
다른 패러다임과의 비교
ICL vs. Fine-tuning
Fine-tuning(추가 학습)은 모델의 가중치를 변경하여 새로운 지식을 '새겨 넣는' 방식입니다. 이를 통해 모델은 특정 분야의 전문가가 되지만, 전반적인 유연성은 낮아집니다. 반면 ICL은 가중치를 변경하지 않아 더 유연하지만, 깊은 도메인 지식이 요구되는 고도로 전문화된 과제에서는 성능이 다소 떨어질 수 있습니다.
ICL vs. RAG (Retrieval-Augmented Generation)
두 방법 모두 모델의 문맥을 확장하지만 목적이 다릅니다:
- ICL은 예시를 활용하여 모델에게 과제를 어떻게 수행하는지 가르칩니다 (기술 시연).
- RAG는 검색된 정보를 활용하여 모델에게 답변에 필요한 사실을 알려줍니다 (지식 제공).
실제로 ICL과 RAG는 최상의 결과를 얻기 위해 함께 활용되는 경우가 많습니다.
참고 문헌
- Brown, T. B. et al. (2020). Language Models are Few-Shot Learners. arXiv:2005.14165.
- Dai, D. et al. (2022). Why Can GPT Learn In-Context? Language Models Implicitly Perform Gradient Descent as Meta-Optimizers. arXiv:2212.10559.
- Panwar, M.; Ahuja, K.; Goyal, N. (2024). In-Context Learning through the Bayesian Prism. arXiv:2306.04891.
- Müller, S. et al. (2021). Transformers Can Do Bayesian Inference. arXiv:2112.10510.
- Garg, S. et al. (2022). What Can Transformers Learn In-Context? A Case Study of Simple Function Classes. arXiv:2208.01066.
- Min, S. et al. (2022). Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?. arXiv:2202.12837.
- Wang, X. et al. (2023). Explaining and Finding Good Demonstrations for In-Context Learning. arXiv:2302.13971.
- Xie, S. et al. (2024). A Survey on In-Context Learning. arXiv:2301.00234.
- Yu, Z.; Ananiadou, S. (2024). How Do Large Language Models Learn In-Context? Query and Key Matrices of In-Context Heads Are Two Towers for Metric Learning. arXiv:2402.02872.
- Wibisono, K. C.; Wang, Y. (2024). From Unstructured Data to In-Context Learning: Exploring What Tasks Can Be Learned and When. arXiv:2406.00131.
- Chan, J. K. et al. (2022). Data Distributional Properties Drive Emergent In-Context Learning in Transformers. arXiv:2205.05055.
- Hahn, M.; Goyal, N. (2023). A Theory of Emergent In-Context Learning as Implicit Structure Induction. arXiv:2303.07971.
각주
- ↑ What is In-Context Learning (ICL)? // Lakera.ai
- ↑ In-Context Learning (ICL) // Hopsworks.ai
- ↑ In-Context Learning, In Context // The Gradient
- ↑ Why Can GPT Learn In-Context? Language Models Secretly Perform Gradient Descent as Meta-Optimizers // arXiv, 2022.
- ↑ Understanding In-Context Learning // Stanford Human-Centered AI, 2023.