[Paper Review] FixMatch : Simplifying Semi-Supervised Learning with Consistency and Confidence

2024. 1. 22. 00:39Papers/Semi-supervised Learning

FixMatch : Simplifying Semi-Supervised Learning with Consistency and Confidence

Sohn, K., Berthelot, D., Carlini, N., Zhang, Z., Zhang, H., Raffel, C. A., ... & Li, C. L. (2020). Fixmatch: Simplifying semi-supervised learning with consistency and confidence. Advances in neural information processing systems, 33, 596-608.

본 논문은 Semi-supervised Learning에서 MixMatch 그리고 ReMixMatch와 함께 backbone architecture로 많이 활용되고 있는 semi-supervised 방법론이다. 현재까지도 많은 논문들이 FixMatch를 backbone으로 주로 활용하고 있으며, 이전에 발표된 MixMatch와 ReMixMatch와 비교했을때 훨씬더 간단한 방법으로 의미있는 성능을 얻은 논문이다. 일반적인 Uniform distribution에서의 Semi-supervised learning 상황에서는 이전의 MixMatch나 ReMixMatch와 비교했을 때, 높은 성능을 얻었지만, 최근 들어 Imbalanced semi-supervised learning에서는 ReMixMatch가 보다 높은 성능을 얻음을 볼 수 있다. 그럼에도 불구하고 FixMatch는 굉장히 많이 활용되고 있는 방법론이다.


위 그림은 FixMatch를 가장 간단하게 표현할 수 있는 그림이다. FixMatch에서 가장 중요한 키워드는 3가지 정도가 있다.

1. Weak Augmentation & Strong Augmentation
2. One-hot Pseudo-label
3. Confidence

일단 첫번째로, 이전 MixMatch나 ReMixMatch와 다르게 Augmentation 기법이 Weakly 와 Strongly가 추가되었다. Weakly augmentation은 pseudo-label을 만들기 위한 augmentation이며, Strongly augmentation은 consistency loss에서 예측 부분을 맡기 위한 부분이다.

이 부분은 쉽게 이해하자면, Strong augmentation 이미지와 Weak augmentation 이미지 중 하나를 통해 pseduo-label을 만든다고 한다면, 무슨 이미지로부터 만드는게 보다 '정확한' Pseudo-label 일지를 생각해보면 쉽게 나온다. 당연히 weak augmentation 이미지를 통해 pseudo-label을 만드는 것이 보다 '정확한' pseudo-label일 것이다.

그렇다면 이렇게 만든 pseudo-label과 강한 augmentation이 적용된 이미지로부터 예측된 값을 최대한 '유사하게'만들고자 하는것이 FixMatch에서의 consistency loss이다. 어려운 이미지더라도 최대한 정답으로 예측하게 만들고자 하는것이다.

여기서 MixMatch와의 가장 큰 차이점은 'pseudo-label'이 one-hot vector라는 점이다. MixMatch나 ReMixMatch에서는 Entropy minimization 측면에서 soft label을 활용했지만, FixMatch에서는 one-hot vector로 변환하여 모델을 학습한다. 여기서 문제점이 생길 수 있는데 그 문제점을 해결하는 방법이 confidence check이다.

3번째 키워드인 confidence란, pseudo-label의 신빙성을 증명하는 것이다. 본 논문에서는 confidence threshold를 0.95로 설정하였는데, softmax를 통과한 예측값이 0.95 이상일 경우 해당 pseduo-label을 써도 무방할 것이다라고 판단하는 과정이 있다. 이는 아래의 수식에서 자세히 설명하도록 하겠다.

따라서 FixMatch는 위의 내용들을 이해하면 쉽게 이해할 수 있을 것이다. 보다 자세한건 이제 아래의 수식을 하나하나 보면서 설명하도록 하겠다.


본 논문에서 제안하는 방법론의 손실함수는 위와 같다. 2번 수식의 경우에는 MixMatch에서 본 Supervised Learning for labeled sample과 동일하다. 하지만 여기서 차이점은 MixUp을 써서 증강을 하지 않았다는 점, 또한 augmentation이 labeled sample에 대해서는 weak augmentation만 적용되어서 쓰인다는 점이 있다.

제일 중요한 것은 unlabeled sample에 대한 손실 함수인데, 손실함수는 4번 식과 같다. 여기서 중요한 점은 ${1}(max(q_B)\geq\tau)$ 와 $\hat{q}_b$. $\mathcal{A}$의 경우에는 위에서 언급한 'Strong Augmentation'이며, $\hat{q}_b$는 weak augmentation 이미지에 대해서 모델이 예측한 값을 one-hot vector로 바꾼 값이다. 해당 값을 pseduo-label로 활용하는 것이 FixMatch의 방법론이다.

${1}(max(q_B)\geq\tau)$ 는 위에서 언급한 3번째 방법론인 confidence를 확인하는 부분인데, $\tau$이 부분은 임계값(threshold)로 본 논문에서는 ablation study를 통해 0.95로 설정한다. 즉, 가장 높은 클래스의 확률 값이 0.95가 넘을 경우 해당 pseudo-label을 믿을만하기 때문에 학습에 활용해도 된다 라고 결정하는 것이다.


Related Works

위의 표를 보면 알 수 있듯이, FixMatch는 Pseduo-labeling 즉 one-hot vector를 활용하며 이전 MixMatch나 ReMixMatch의 경우에는 Sharpening을 통하여 soft label을 통해 손실함수를 계산한다.


Results

위의 표는 결과를 보여주며, FixMatch가 전반적으로 이전 연구들에 비해서 높은 성능을 보여준다.


Ablation Study

위의 그림은 논문에서 수행한 Ablation study를 보여주는 그림이며, Figure 3의 경우에는 Confidence threshold($\tau$)의 영향력과 Temperature를 argmax 즉 one-hot vector 대신 사용했을 때의 결과이다. 결과론적으로 confidence threshold가 0.95일때 가장 성능이 좋았으며, sharpening보단 one-hot vector로 활용하는것이 좋다는 것을 보여주는 그림이다.

Table 3의 경우에는 Strong Augmentatino 전략에서의 성능 차이를 보여주는데, Cutout만 썼을 때, Cutout만 안썻을때, 그리고 본 논문에서 제안하는 CTAugment,RandAugment 그리고 Cutout을 모두 썼을때의 성능 평가이다. 결과론적으론 본 논문에서 제안한 Strong augmentation 기법을 모두 썼을 때 성능이 좋다는 것을 보여준다.


결과론적으로 FixMatch는 Semi-supervised learning에서 유의미한 성능을 보여줬으며, 이전 방법론들과 비교했을 때 높은 성능을 보여줬음을 보여준다. 또한 이전 방법론들에 비해 굉장히 단순한 것도 하나의 큰 장점이다. (MixUp이나 K번 만큼의 Augmentation이 들어가야되는 복잡한 부분이 필요없다는 점에서 굉장히 단순하다.)

최근 논문들에서도 backbone 방법론으로 여전히 많이 등장하고 있다.

준지도식학습을 공부하고 싶은 분들은 꼭 읽어보면 도움이 될 내용이라고 생각된다.