라벨 부족 시대의 해결책: 반지도 학습 핵심 기법들
최근 데이터 과학 실무에서 반지도 학습(Semi-Supervised Learning) 은 점점 더 중요해지고 있습니다.
라벨링 비용은 줄이고, 대규모 비라벨 데이터를 최대한 활용해 일반화 성능을 극대화하는 것이 목표죠.
이번 글에서는 단순한 "라벨 일부 + 비라벨 데이터" 개념을 넘어,
반지도 학습의 핵심 전략과 대표 기법들을 깔끔하게 정리해드립니다!
반지도 학습 핵심 분류 & 전략
1. Self-Training / Pseudo-Labeling
-
핵심 아이디어: 현재 모델의 예측 중 신뢰도 높은 출력을 가짜 라벨(Pseudo-Label)로 활용해 학습을 확장.
-
과정:
- 소량의 라벨 데이터로 모델 학습
- 비라벨 데이터에 대해 예측
- confidence 높은 예측 → 라벨로 간주해 데이터셋에 추가
- 반복 학습
-
대표 예시: Google의 Pseudo-Label, Noisy Student
-
장점: 간단하고, 기존 supervised 모델 그대로 사용 가능
-
단점: 잘못된 pseudo-label이 누적되면 오히려 성능 저하
2. Consistency Regularization (일관성 정규화)
- 핵심 아이디어: 동일한 입력을 다르게 변형해도 출력은 일관되어야 한다!
- 기법: 이미지 회전, 크롭, 밝기 변경 / 텍스트 동의어 치환 등 다양한 augmentation 활용
- 대표 알고리즘: Π-model, Mean Teacher, FixMatch, UDA
- Loss:
x → y₁
, augment(x) → y₂
⇒ y₁
와 y₂
를 가깝게
장점: 강력한 정규화로 라벨 없이도 일반화 성능 향상
단점: 도메인에 따라 적절한 augmentation 설계가 어렵기도 함
2.1.Labeled 데이터는 어떻게 처리하나요?
1. 기본 방식: Cross Entropy Loss
2. + Consistency Regularization 추가 (선택적)
3. Entropy Minimization
- 핵심 아이디어: 모델이 unlabeled 데이터에 대해 확신을 갖도록 출력 확률의 엔트로피를 최소화.
- Loss:
H(p) = -∑ p_i log p_i
- 효과: 간접적으로 pseudo-labeling과 유사한 효과
3.1. H(p) = -∑ pᵢ log pᵢ
는 무엇인가?
이 식은 Shannon entropy를 나타내는 것으로, 모델의 출력 확률 분포 p 자체의 **엔트로피(entropy)**를 계산합니다.
- 즉, 모델이 예측한 softmax 확률 벡터 p=[p1,...,pK]에 대해:
Entropy(p)=−i=1∑Kpilogpi
- 이 값이 작을수록 모델은 더 **확신(confident)**을 갖고 예측하고 있다는 뜻입니다.
- 따라서 entropy minimization은 모델의 예측 분포가 더 sharp해지도록 (예: [0.9, 0.05, 0.05]) 유도하는 regularization 기법입니다.
반면, Cross Entropy는?
Cross entropy는 두 분포 간의 차이를 측정합니다. 보통:
CrossEntropy(q,p)=−i∑qilogpi
- q: ground truth 분포 (예: one-hot: [0, 1, 0])
- p: 모델의 출력 softmax 확률
- supervised 학습에서 자주 쓰이는 loss입니다.
항목 | H(p) (Entropy) | CrossEntropy(q, p) |
---|
목적 | 모델의 자기 확신을 유도 | 예측과 정답의 차이를 줄임 |
사용처 | Semi-supervised, regularization | Supervised learning |
입력 | 모델 출력 p만 | 정답 q, 예측 p |
의미 | 자기 확률의 불확실성 | 예측과 정답의 불일치 |
전체 Loss 계산 예시
losstotal=losssupervised+λ⋅lossunsupervised
losssupervised=CrossEntropy(predlogits,labels)
lossunsupervised=Entropy(predprobs)=−∑pilogpi
λ: 두 손실의 균형을 조절하는 하이퍼파라미터
4. Graph-Based Methods
- 핵심 아이디어: 데이터 간 유사성을 그래프로 연결 → 비슷한 데이터끼리 비슷한 라벨을 갖도록 학습.
- 대표 기법: Label Propagation, Graph Neural Network (GNN)
- 주요 분야: 소셜 네트워크 분석, citation network
5. Generative Models 활용
- 핵심 아이디어: VAE, GAN 같은 생성모델로 데이터 구조를 파악하고, 잠재 벡터(latent representation)를 지도 학습에 활용.
- 대표 예시: Semi-VAE, Semi-Supervised GAN (SGAN)
6. Pretraining + Fine-tuning
실무에서 가장 많이 쓰이는 강력한 방법!
한눈에 비교 정리
방법 | 라벨 필요 | 핵심 아이디어 | 대표 기법 | 장점 |
---|
Pseudo-Labeling | 소량 | 신뢰 높은 예측 → 가짜 라벨로 사용 | Pseudo-label, Noisy Student | 쉽고 직관적 |
Consistency Regularization | 소량 | 변형에도 출력 일관성 유지 | Π-model, FixMatch, UDA | 강력한 정규화 |
Entropy Minimization | 소량 | 예측 확신도 높임 | - | pseudo-labeling과 유사한 효과 |
Graph-Based | 소량 | 데이터 간 유사도 기반 라벨 전파 | GNN, Label Propagation | 네트워크 데이터에 최적화 |
Generative Models | 소량 | 생성 모델로 데이터 구조 학습 | Semi-VAE, SGAN | 표현력 강화 |
Pretraining + Fine-tuning | 없음→소량 | self-supervised → fine-tune | BERT, SimCLR, MAE, DINO | 실무에서 가장 강력 |
요약
반지도 학습은 단일 기법이 아니다!
- Pseudo-labeling, Consistency Regularization, Graph 기반, 생성모델, 사전학습 전이까지 다양한 전략 포함.
- 특히 Pretraining + Fine-tuning 은 NLP와 CV에서 표준 전략으로 자리잡음!
Tip: 각 기법은 도메인 특성에 맞게 선택하고 조합하면 더 큰 효과를 발휘합니다.