콘텐츠로 이동

Few-Shot / Zero-Shot 학습

핵심 요약: 예시가 아주 적거나(Few-shot) 아예 없어도(Zero-shot) 새 과제를 수행하는 능력이다. “사진 5장으로 새 동물 분류”, “프롬프트 하나로 감정 분석” — 대규모 사전 학습이 이를 가능하게 한다.

  • Few-shot 학습: 클래스당 1~5개의 극소수 예제만으로 새로운 과제를 학습하는 것. 기존 ML이 수천 장을 필요로 하는 것과 대조적.
  • Zero-shot 학습: 한 번도 본 적 없는 클래스에 대해 예측하는 능력. CLIP이 “얼룩말”을 학습 데이터 없이 분류할 수 있는 것이 대표적.
  • 메타 학습(Meta-Learning): “학습하는 방법을 학습”하는 접근. 다양한 과제를 경험하여 새 과제에 빠르게 적응하는 능력을 획득한다.
  • In-Context Learning(ICL): LLM이 프롬프트 안의 예시만 보고 과제를 수행하는 능력. 파라미터 업데이트 없이 추론만으로 가능하다.
  • N-way K-shot: Few-shot 문제의 형식. N개 클래스, 각 K개 예제. “5-way 1-shot”은 5개 종류를 각 1장의 사진만으로 분류.

Few-shot 학습과 Zero-shot 학습은 극소수의 예제(또는 예제 없이)만으로 새로운 과제를 수행하는 능력이다. 전통적 ML은 대규모 라벨 데이터를 필요로 하지만, 실제 많은 상황에서 라벨 데이터는 극도로 부족하다. 메타 학습(meta-learning), 대규모 사전 학습, In-Context Learning(ICL) 등의 접근법이 이 문제를 해결한다.


“데이터가 부족한 현실”은 ML의 가장 오래된 도전 과제 중 하나이다. 이 문제를 체계적으로 해결하려는 시도의 기원은 2016년 Google DeepMind의 Matching Networks (Vinyals et al.)까지 거슬러 올라간다. 이 논문은 “학습하는 방법을 학습한다(learning to learn)“는 메타 학습의 개념을 few-shot 이미지 분류에 처음으로 성공적으로 적용했다.

2017년에는 Chelsea Finn의 MAML(Model-Agnostic Meta-Learning)이 등장하여, 모델에 구애받지 않는 범용적 메타 학습 프레임워크를 제시했다. MAML의 핵심 아이디어 — “어떤 과제에든 소수의 gradient step만으로 빠르게 적응할 수 있는 초기화를 학습한다” — 는 이론적으로 우아하면서도 실용적이었다.

그러나 진정한 패러다임 전환은 2020년 GPT-3의 등장과 함께 일어났다. GPT-3는 1,750억 파라미터와 대규모 사전 학습을 통해, 파라미터 업데이트 없이 프롬프트 내의 예시만으로 새로운 과제를 수행하는 In-Context Learning(ICL) 능력을 보여주었다. 이것은 별도의 학습 루프나 fine-tuning 없이, 추론만으로 few-shot 학습이 가능하다는 것을 의미했다. 이후 few-shot 학습은 메타 학습 알고리즘 연구에서 대규모 사전 학습 + 효율적 적응이라는 방향으로 급속히 전환되었다.


용어정의
Zero-shot학습 시 본 적 없는 클래스에 대해 예측
One-shot클래스당 1개 예제만으로 학습
Few-shot클래스당 극소수(1~5개) 예제만으로 학습
N-way K-shotN개 클래스, 각 K개 예제로 구성된 에피소드

“Learning to learn”: 다양한 과제를 학습하여, 새로운 과제에 빠르게 적응하는 능력을 획득한다.

Finn et al. (2017)이 제안. 소수의 gradient step으로 빠르게 적응할 수 있는 초기화를 학습한다.

Inner loop (과제 적응): θi=θαθLtaski(θ)\theta_i' = \theta - \alpha \nabla_\theta L_{\text{task}_i}(\theta)

Outer loop (메타 업데이트): θθβθiLtaski(θi)\theta \leftarrow \theta - \beta \nabla_\theta \sum_i L_{\text{task}_i}(\theta_i')

MAML (Model-Agnostic Meta-Learning) 다이어그램 직관: “좋은 초기화란, 어떤 과제에든 몇 번의 업데이트만으로 빠르게 적응할 수 있는 위치”

각 클래스의 프로토타입(지원 집합의 평균 임베딩)을 계산하고, 쿼리 샘플을 가장 가까운 프로토타입의 클래스로 분류한다.

ck=1SkxiSkfϕ(xi)c_k = \frac{1}{|S_k|} \sum_{x_i \in S_k} f_\phi(x_i)

p(y=kx)=exp(d(fϕ(x),ck))kexp(d(fϕ(x),ck))p(y = k | x) = \frac{\exp(-d(f_\phi(x), c_k))}{\sum_{k'} \exp(-d(f_\phi(x), c_{k'}))}

직관: 각 클래스의 “대표점”과의 거리로 분류

Attention 메커니즘 기반으로, 쿼리와 지원 집합 간의 유사도를 직접 학습한다.

LLM이 prompt 내의 예시만으로 새 과제를 수행하는 능력이다.

예시 1: "맛있는 음식이었습니다" → 긍정
예시 2: "서비스가 불친절했습니다" → 부정
질문: "분위기가 좋았어요" → ?

특징:

  • 파라미터 업데이트 없음 (추론만으로 수행)
  • Prompt 설계가 핵심
  • 모델 규모가 클수록 ICL 능력 향상

이론적 이해: 완전히 규명되지 않았다. Transformer가 내부적으로 gradient descent를 시뮬레이션한다는 가설(implicit meta-learning)이 유력하다.

대규모 사전 학습 후, 소수 예제로 fine-tuning한다.

접근법방법
Feature Extraction사전 학습 모델 고정 + 분류기만 학습
LoRA / Adapter소수 파라미터만 효율적으로 학습
Prompt Tuning학습 가능한 프롬프트 벡터 추가

N-way K-shot 에피소드 구성 다이어그램 메타 학습에서는 이러한 에피소드를 대량 생성하여 학습한다. 각 에피소드는 하나의 “미니 학습 과제”이다.

접근원리예시
속성 기반클래스의 속성(예: “줄무늬 있음, 네 발”) 활용동물 분류
텍스트 기반클래스 이름의 텍스트 임베딩 활용CLIP zero-shot
LLM 기반Prompt로 과제 설명GPT few-shot

상황추천 접근
클래스당 0개 예제Zero-shot (CLIP, LLM)
클래스당 1~5개 예제Prototypical Networks, MAML
클래스당 10~100개 예제Transfer + LoRA fine-tuning
새 클래스가 계속 추가메타 학습 (에피소드 기반)
NLP 과제LLM In-Context Learning
비전 과제CLIP zero-shot 또는 few-shot fine-tuning

희귀 질환 진단: 5장의 이미지로 90% 정확도를 달성한 의료 AI

섹션 제목: “희귀 질환 진단: 5장의 이미지로 90% 정확도를 달성한 의료 AI”

희귀 피부 질환 분류는 전통적 딥러닝의 한계를 극명하게 보여주는 분야이다. 질환당 전 세계에 보고된 사례가 수십 건에 불과한 경우도 있어, 일반적인 지도 학습에 필요한 수천 장의 학습 이미지를 확보하는 것이 원천적으로 불가능하다.

한 의료 AI 연구팀은 Prototypical Networks 기반의 few-shot 학습을 적용하여 이 문제를 해결했다:

  • 사전 학습: 일반 피부 질환 100종, 총 20만 장의 이미지로 메타 학습을 수행했다. 모델은 “피부 질환을 소수 예제만으로 분류하는 방법”을 학습했다
  • 적용: 새로운 희귀 질환에 대해 질환당 5장의 참조 이미지만 제공하고, 쿼리 이미지를 분류하도록 했다
  • 결과: 10종의 희귀 질환에 대해 평균 90% 정확도를 달성했다. 전통적 전이 학습(fine-tuning) 방식은 5장으로는 심각한 과적합이 발생하여 60% 미만에 그쳤다

핵심 성공 요인은 다음과 같았다:

  1. 에피소드 학습: 학습 단계에서도 “5장만으로 분류”하는 과제를 반복하여, 모델이 소량 데이터 환경에 최적화되었다
  2. 도메인 내 사전 학습: 일반 이미지(ImageNet)가 아닌 피부 질환 이미지로 사전 학습하여 표현의 질이 높았다
  3. 참조 이미지의 질: 전문 피부과 의사가 선별한 대표적 이미지 5장이, 무작위 50장보다 더 효과적이었다

  1. “Few-shot 환경에서는 과적합이 문제가 아니다”: 오히려 과적합이 극심하다. 데이터가 적기 때문에 강한 정규화(weight decay, dropout, 증강)가 필수적이다.

  2. “ICL이 fine-tuning을 대체한다”: ICL은 편리하지만, 특정 도메인에서는 fine-tuning이 훨씬 우수하다. 둘은 보완적 관계이다.

  3. “MAML은 모든 few-shot 문제에 최고”: MAML은 이론적으로 우아하지만 학습이 불안정하고 계산 비용이 높다. 실무에서는 transfer 기반 방법이 더 간단하고 강력한 경우가 많다.

  4. “클래스당 예제가 많을수록 항상 좋다”: 노이즈가 있는 예제는 오히려 해로울 수 있다. 예제의 이 양만큼 중요하다.

  5. 일반 사전 학습이 항상 최적: 도메인 내(in-domain) 사전 학습이 범용 사전 학습보다 few-shot 성능에서 더 효과적인 경우가 많다.