랜덤하게 적용시키고 그 중 성능이 잘 나오는 것을 사용
Parameter로는 1) 어떤 방법을 적용할 것인지, 2) 얼마나 세게 적용할 것인지 가 있음
RandAug의 종류
RandAug를 이용해 성능을 손쉽게 높일 수 있음
"미리 잘 학습된 큰 네트워크(Teacher network) 의 지식을 실제로 사용하고자 하는 작은 네트워크(Student network) 에게 전달하는 것"
NIPS 2014 workshop에서 발표한 논문 “Distilling the Knowledge in a Neural Network”에서 처음으로 등장한 개념
앙상블과 같은 복잡한 모델이 학습한 generalization 능력을 단순한 모델에 transfer해주는 좀 더 일반적인 방법
원래는 큰 모델(teacher model)에서 작은 모델(student model)로 지식을 주입해서 학습하는데 주로 쓰였음
요즘은 teacher model을 이용해 unlabeled data의 pseudo-label(가짜 label)를 자동 생성하는 방법을 사용
동일한 input에 대해서 student model만 학습시켜서 student가 teacher을 따라하게 되는 학습법
Soft label은 pre-trained에 사용된 이전의 task들과 연관이 되어있긴 하지만 label을 공유하지 않는다던가, 카테고리가 겹치지 않는다던가 하는 이유로 GT와 큰 연관이 없을수도 있다
따라서 각각의 값이 중요한 의미를 갖고있다기 보다는 전체적인 개형을 나타내고, student model이 그것을 따라하게 만든다는 것이 중요하다
-> semantic information is not considered in distillation
Soft label
: inference result의 softmax값으로, model이 input을 어떻게 보고 있는지에 대한 확률값을 나타냄temperature
라는 큰 값으로 나눠서 softmax하면 출력을 smooth하게 만들 수 있음Self-training with Noisy Student improves ImageNet classification에서 처음 등장한 방식
Unlabeled data는 300M의 고정된 unlabeled data를 매번 pseudo-labeling
Teacher와 Student 모두 EfficientNet-B7 로 학습을 진행
Teacher는 EfficientNet-B7, Student는 EfficientNet-L0로 학습을 진행
Teacher는 EfficientNet-L0, Student는 EfficientNet-L1으로 학습을 진행
Teacher는 EfficientNet-L1, Student는 EfficientNet-L2로 학습을 진행
Teacher는 EfficientNet-L2, Student는 EfficientNet-L2로 학습을 진행