AI 모델 개발: 대표 기법 – Noisy Student
ㅁ 대표 기법
1. Noisy Student
ㅇ 정의:
반지도 학습(semi-supervised learning)의 한 기법으로, 먼저 라벨이 있는 데이터로 큰 Teacher 모델을 학습시키고, Teacher가 라벨이 없는 데이터에 대해 예측한 결과(의사 라벨)를 생성한 뒤, 의사 라벨과 원래 라벨 데이터를 합쳐서 더 큰 Student 모델을 학습시키는 방법. 학습 시 Student 모델에 노이즈(데이터 증강, 드롭아웃 등)를 적용하여 일반화 성능을 높인다.
ㅇ 특징:
– Teacher → Student 구조를 사용하며, Student는 Teacher보다 크거나 동일한 모델 구조를 사용.
– 데이터 증강, 드롭아웃, 입력 노이즈 등 다양한 형태의 노이즈를 Student 학습에 적용.
– 라벨이 없는 대규모 데이터셋 활용 가능.
– Teacher와 Student를 반복적으로 갱신 가능.
ㅇ 적합한 경우:
– 라벨링 비용이 높은 대규모 데이터셋이 존재할 때.
– 기존 모델보다 더 큰 모델을 활용하여 성능 향상을 노릴 때.
– 이미지 분류, 음성 인식 등 대규모 비라벨 데이터가 많은 분야.
ㅇ 시험 함정:
– Teacher와 Student의 크기 관계를 반대로 제시하는 경우.
– 노이즈 적용 대상을 Teacher로 착각하게 하는 문제.
– Noisy Student를 지도 학습 기법으로 분류하는 함정.
ㅇ 시험 대비 “패턴 보기” 예시:
O: Noisy Student는 Teacher 모델이 생성한 의사 라벨과 노이즈를 적용한 Student 모델 학습을 결합한 준지도 학습 기법이다.
X: Noisy Student는 Teacher 모델 학습 시 노이즈를 적용하여 일반화를 높인다.
X: Noisy Student에서 Student 모델은 Teacher보다 반드시 작아야 한다.
ㅁ 추가 학습 내용
Noisy Student 기법은 Google Brain이 ImageNet 분류 성능 향상을 위해 제안했으며, EfficientNet 아키텍처와 결합하여 SOTA 성능을 달성한 사례가 있다.
핵심 포인트는 다음과 같다.
1. Teacher 모델은 보통 라벨이 있는 데이터로만 학습하며, Student 모델은 라벨 데이터와 의사 라벨 데이터 모두를 사용해 학습한다.
2. 노이즈는 데이터 증강(RandAugment 등), 드롭아웃, 입력 잡음 등 다양한 형태로 적용할 수 있다.
3. Teacher와 Student 학습 과정을 여러 번 반복하면 성능이 추가로 향상될 수 있다.
4. 의사 라벨 품질이 낮으면 성능이 오히려 저하될 수 있으므로 Teacher의 초기 성능이 중요하다.
5. 준지도 학습의 다른 기법(Pseudo-Labeling, Mean Teacher 등)과 비교하는 문제가 출제될 수 있으므로 각 기법의 차이점을 명확히 이해해야 한다.