3달 전

Noisy Student를 활용한 자기학습은 ImageNet 분류 성능을 향상시킨다

Qizhe Xie, Minh-Thang Luong, Eduard Hovy, Quoc V. Le
Noisy Student를 활용한 자기학습은 ImageNet 분류 성능을 향상시킨다
초록

우리는 레이블이 풍부한 경우에도 효과적으로 작동하는 반감독 학습 방법인 '노이지 스터디언 트레이닝(Noisy Student Training)'을 제안한다. 이 방법은 ImageNet에서 상위 1위 정확도 88.4%를 달성하며, 35억 개의 약한 레이블링된 인스타그램 이미지를 필요로 하는 최신 기술 대비 2.0% 높은 성능을 보였다. 또한 강건성 테스트 세트에서 ImageNet-A의 상위 1위 정확도를 61.0%에서 83.7%로 향상시키고, ImageNet-C의 평균 손상 오차(mean corruption error)를 45.7에서 28.3으로 감소시켰으며, ImageNet-P의 평균 플립률(mean flip rate)은 27.8에서 12.2로 감소시켰다.노이지 스터디언 트레이닝은 동일하거나 더 큰 크기의 스터디언 모델을 사용하고, 학습 과정에서 스터디언에 노이즈를 추가함으로써 자가 학습(self-training)과 디스틸레이션(distillation)의 개념을 확장한 기법이다. ImageNet 데이터셋에서는 먼저 레이블링된 이미지로 EfficientNet 모델을 학습한 후, 이를 테이처로 활용해 3억 개의 미레이블링된 이미지에 대해 의사 레이블(pseudo labels)을 생성한다. 이후 이 레이블링된 데이터와 의사 레이블링된 데이터의 조합을 이용해 더 큰 크기의 EfficientNet 모델을 스터디언으로 학습한다. 이후 이 스터디언을 다시 테이처로 삼아 반복 학습을 수행한다. 이 과정에서 스터디언 학습 시 드롭아웃(dropout), 스토캐스틱 디pth(stochastic depth), RandAugment를 통한 데이터 증강(data augmentation)과 같은 노이즈를 추가함으로써 스터디언이 테이처보다 더 우수한 일반화 성능을 갖도록 한다. 관련 모델은 https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet에서, 코드는 https://github.com/google-research/noisystudent에서 제공된다.