일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- semi supervised learnin 가정
- Pix2Pix
- tent paper
- shrinkmatch
- Meta Pseudo Labels
- dann paper
- dcgan
- GAN
- WGAN
- UnderstandingDeepLearning
- CoMatch
- simclrv2
- conjugate pseudo label paper
- ConMatch
- 컴퓨터구조
- remixmatch paper
- cifar100-c
- CGAN
- 최린컴퓨터구조
- BYOL
- adamatch paper
- SSL
- Pseudo Label
- Entropy Minimization
- shrinkmatch paper
- 백준 알고리즘
- mme paper
- mocov3
- CycleGAN
- 딥러닝손실함수
- Today
- Total
Hello Data
Pseudo Labeling and Confirmation Bias in Deep Semi-Supervised Learning2020 논문리뷰 본문
Pseudo Labeling and Confirmation Bias in Deep Semi-Supervised Learning2020 논문리뷰
지웅쓰 2024. 3. 27. 17:47논문의 풀 제목은 글 제목에 적혀있다. https://arxiv.org/pdf/1908.02983.pdf
Introduction
Semi Supervised LearningSSL 에서는 consistecy regularization과 pseudo label 두가지 방법이 있다물론FixMatch에서는두가지방법을혼합한다. 여기서는 pseudo label방법만을 사용하고 pseudo label의 단점이라고 한다면 confirmation bias 가 쉽게 일어날 수 있으며 일어날 경우 iid 가정이 무너지므로 일반적인 SSL 프레임워크에서는 성능이 떨어진다고 한다iid는label,unlabel데이터가같은분포에서샘플링된다는것인데,만약틀린label로예측할경우이러한완전히새로운이미지를같은label로예측하는것이니iid가정이깨져버린다. 기존의 naive한 pseudo labeling 방식은 이러한 confirmation bias가 심하다고 한다. 그러나 여기서는 mixup augmentation을 활용해 model의 confirmation bias, calibration 능력을 향상시켰다고 한다기존제프리힌튼의labelsmoothing논문에서보면은softlabel을주는것만으로model의calibration능력을향상시켰다고하는데여기서도softlabel을사용하니그러한효과를얻는것과같은거같다. 단순히 mixup 만을 사용하는 것이 아니라 여기서는 2가지 추가적인 제약을 사용하고, 배치 안에서의 최소 label 데이터 개수를 설정한다.
Pseudo labeling
기존의 pseudo label연구들은 hard label을 사용한다고 한다지금도그렇다. 여기서는 soft label을 사용한다Entropyminimization이라고할수있다,근데개인적으로EM을사용하였을때많은클래스의데이터셋에대하여낮은성능을기록했고수렴하지못했는데단순히EM을사용하는것이아니라추가적인method를추가해야좋은거같다. 여기서는 2가지 규제항을 추가한다.

여기서 C는 클래스이고 pc는 각 C에 대한 uniform 분포이고 hc 값은 모든 데이터의 클래스의 평균값이라고 할 수 있다모델의output에대한. 이것은 저자의 prior라고 할 수 있는데 모든 클래스의 평균 값이 같아야한다는 생각이 반영되었다고 할 수 있다. 여기서 pc 는 1/C 이고 hc가 1/C값과 똑같아 나와야 이 loss가 줄어진다고 할 수 있다. 만약 모델이 어느 한 클래스가 어려워 이 값이 낮다면 loss가 커지는 것을 알 수 있다뭔가dino에서의centering과느낌비슷하다.

이 규제 항은 Entropy Minimization이다. 따라서 위의 규제 항이 모든 클래스의 평균이 비슷하게 되도록 output을 뱉는다면 이 규제항은 최대한 한 쪽 class로 예측하도록 하는 것이다.


여기서 살짝 의문점은 그렇다면 EM을 두번 수행하는 것이 아닌가 생각이 든다. 왜냐하면 l에서 이미 저자가 soft label을 사용한다고 했기 때문이다.
모델이 내뱉는 값을 pseudo label로 사용하는 것은 당연히 틀릴 수 있으며 이를 confirmation bias라고 하며, 이는 계속 사용되기 때문에 이러한 경향을 훈련이 진행될 수록 더 커진다고 할 수 있다틀린라벨로예측한이미지는다른이미지에영향이가기때문이다. 따라서 여기서는 mixup 이라는 방법을 사용하는데 이는 다음과 같이 표현될 수 있다.

이는 모델이 훈련 데이터에 대해 한쪽으로만 linear하게 하는 것을 규제한다고 한다. 한마디로 mixup 자체도 soft label을 사용하는 것이니 decision boundary가 부드러워지는 효과를 낳을 것이다. 따라서 mixup을 적용한다면 다음과 같이 재정의 할 수 있다.

이렇게 soft label, mixup 을 사용함으로써 confirmation bias를 줄일 수 있었다고 한다. 추가적으로 mixup 된 데이터에 대해서 훈련을 진행하면서 second forward 에서는 unmixed 된 데이터들에 대해 예측한다고 한다.
그런데 이렇게 mixup만 사용한다면 한 배치 안에 labeled 데이터가 많이 없을 경우 훈련 초기에는 학습이 잘 안되며 문제가 생길 수 있다고 한다여기서는littlecorrectguidance라고표현한다. 따라서 저자는 labeled 데이터에 대해 oversampling을 한는데 배치 안에 최소 k개의 labeled 데이터를 포함하는 것을 말한다.
Experiment
아래 figure는 저자의 방식으로 pseudo label을 생성하는 것의 효율성을 보여준다.

왼쪽은 mixup이 적용안돼었을 때, 가운데는 mixup, 오른쪽은 mixup + 최소 k개의 label 데이터를 포함했을 때이다. 보면은 오른쪽에 decision boundary가 더 부드럽게 잘 그어지는 것을 알 수 있는데 왼쪽을 보자면 decision boundary 가 linear하게 그어졌음을 확인할 수 있다. 이렇게 비교하면서 confirmation bias가 완화될 수 있다고 한다.

위 figure는 틀리게 예측한 데이터들에 대한 loss추이다. epoch가 진행될 수록 mixup을 사용하지 않는 알고리즘이 더 커지는 것을 확인할 수 있다.
다음은 test error를 나타내는 표이다.

cifar100기준 4000 label 일 때 62.5% 정도의 정확도를 기록하는 것을 알 수 있다.
'Self,Semi-supervised learning' 카테고리의 다른 글
Joint Optimization Framework for Learning with Noisy Labels2018 논문리뷰 0 | 2024.03.29 |
---|---|
Meta Pseudo Labels2021 논문리뷰 0 | 2024.03.28 |
ShrinkMatch2023 논문리뷰 4 | 2024.03.19 |
AdaMatch2022 논문리뷰 0 | 2024.03.13 |
ReMixMatch2020 논문리뷰 0 | 2024.03.07 |