Computer Vision

[2025-2] 황징아이 - Big Self Supervised Models Advance Medical Image Classifications

yujacs 2025. 7. 12. 11:42

 

논문 : https://arxiv.org/pdf/2101.05224

 

Introduction

본 논문은 Self Supervised Learning의 방법중 SimCLR을 활용하여 의료 이미지 분류 성능을 향상 시키는 논문입니다.

Self-Supervised Learning은 데이터에 라벨을 부여하지 않고도 학습이 가능하다는 점에서 라벨링 비용이 높은 의료 분야에서 특히 더 강점을 드러낸다. SSL는 그동안 일반 이미지 도메인에서 많이 연구 되어 왔지만 본 논문은 SSL을 의료 도메인에 적용했다는 점에서 의미가 있고 기존 Supervised Learning 방식보다 효율적이고 좋은 일반화 성능을 보여줬다.

 

3단계의 학습 파이프라인을 제안한다 :

  1. ImageNet 기반 Self-Supervised Pretraining (SimCLR 사용)
  2. 의료 이미지 기반 Self-Supervised Pretraining (Multi-Instance이면 MICLe 사용)
  3. 라벨이 있는 의료 데이터로 Supervised Fine-Tuning

 

Step 1 : SimCLR on ImageNet

본 연구는 Self-supervised learning의 방법중 SimCLR을 이용한다.

SimCLR은 Contrastive Learning Framework을 가진다.

  1. $x$ 라는 이미지를 각각 두 번 랜덤하게 Augmentation해서 $x_i$, $x_j$를 얻는다
  2. 각각 $x_i$와 $x_j$에 $f(x)$를 적용 : ResNet-50로 Augmented Image View를 임베딩
  3. 같은 이미지에서 나온 두뷰는 positive pair, 다른 이미지에서 나온 뷰들은 negative pair
  4. Projection head $g(x)$를 적용
  5. NTXent (Contrastive Loss) 계산 : Cosine Similarity로 Positive pair는 가깝게, Negative pair는 멀게 학습

 

SimCLR PseudoCode 

 

Step 2 : Self Supervised Learning on Medical Image

2가지의 classification task에 대해 다룬다 :

  1. 피부 질환 분류 (Dermatology) : 일반 디지털 카메라로 촬영된 피부 사진을 27개의 Class로 분류
  2. 흉부 X-ray 분류 (CheXpert) : X-ray 이미지를 흉부 질환별로 5개의 Class로 분류

Experiment Details

→ 논문과 Appendix를 참고

 

 

  • 기본적으로는 NTXent Loss를 사용 : SimCLR 기반의 Contrastive Learning

  • Multi-Instance (한 환자에 대해서 여러장의 image들이 존재하면) : 본 논문에서는 Multi-Instance Contrastive Learning (MICLe)을 제안한다. MICLe는 기존과 동일하게 NTXent Loss를 사용하지만 positive sample을 구성할 때 기존처럼 하나의 이미지에서 서로 다른 augmentation을 적용해 얻는 이미지 쌍이 아니라, 같은 환자에게서 얻는 서로 다른 이미지들를 positive pair로 사용한다.
    → 시점의 변화와 조명 차이 등을 반영할 수 있다

MICLe PseudoCode 

 

Step 3 : FineTuning

  • Pretraining에서 사용한 ResNet-50와 ResNet-152를 그대로 사용하여 파인튜닝.
  • Learning Steps : 30,000, Batch Size : 256, SGD Momentum : 0.9
  • 파인튜닝 할 때 성능이 가장 좋았던 증강기법은 랜덤 색상 변화, 크롭후 리사이즈, 가우시안 블러, 회전, 좌우 반전
  • Derm 이미지를 448 x 448픽셀로, CheXpert 이미지를 224 x 224로 리사이즈

Experiment Details

→ 논문과 Appendix를 참고

 

Result

  • Table 1 : ImageNet으로 학습한 모델보다 ImageNet으로 먼저 학습한 후 target domain에 다시 한번 더 pretraining 시킨 결과가 더 좋다.

 

  • Table 2 : 기존 SimCLR 처럼 augmentation된 이미지 쌍 만으로 학습한 경우 보다 Multi-instance가 있는 데이터를 이용할 때 성능이 더 좋았으며, 존재하는 정보를 더 이용할 수록 성능이 높아지는 것을 확인할 수 있다. * MICLE Pretraining은 Multi-Image Per Case인 Dermatology Dataset에만 적용하고 CheXpert에 적용하지 않았다.

  • Table 3 & 4 : Supervised Learning과 Self-Supervised Learning을 이용하여 pretraining 시켰을 때의 결과를 비교하면 모두 Self-Supervised Learning의 결과가 더 좋은 성능을 보였다. 이는 SSL를 할 때 모델이 generalized된 정보를 더 잘 학습하게 되는 것으로 이해할 수 있다.

  • Figure 4 : Transferability→ 좋은 일반화 성능
    저자는 DExternalDerm이라는 완전히 다른 병원 출처의 외부 피부 진단 데이터셋을 사용해 zero-shot 성능을 측정했다. 이 데이터셋은 기존 학습 데이터와 라벨 분포가 다르고 생검 결과를 바탕으로 라벨링된 데이터이기 때문에 모델 입장에서는 이미지를 분류하기 어려운 상황. 그런데 fine-tuning 없이 zero-shot 환경에서도 self supervised 방식으로 학습된 모델이 기존 supervised 방식보다 좋은 성능을 보였다.

  • Figure 5 : Label Efficiency (ResNet-50 기준으로 MICLe는 라벨의 20%만 사용해도 supervised learning의 90%와 비슷한 성능을 보였다)
    Dermatology와 CheXpert 데이터셋의 라벨링을 10%부터 90%까지 다양하게 조절해서 실험을 진행한 결과 모든 라벨링 비율에서 Self-Supervised 모델이 Supervised 모델보다 더 나은 성능을 보였다. 그리고 MICLe는 적은 라벨만으로도 supervised baseline 수준의 성능을 달성.

Contribution

  • Self Supervised Pretraining을 의료 데이터에 성공적으로 적용
  • Multi-Instance Contrastive Learning를 제안하여 기존 Contrastive Learning을 확장 (한 환자에게서 촬영된 여러 장의 이미지를 이용했다)
  • 피부 질환 분류에서 Top-1 Accuracy 6.7% 향상, 흉부 X-ray 분류에서 AUC 1.1%를 향상해서 기존 Supervised Pretraining모델을 능가했다
  • Self Supervised 모델이 Fine Tuning없이도 아예 분포가 다른 테스트셋에서 뛰어난 일반화 성능을 입증했다