새소식

반응형
Vision AI/미분류

Contrastive Learning 개념 정리

  • -
반응형

Unsupervised Learning (Representation Learning의 한 분야)

Unlabeled dataset만을 가지고 네트워크 모델을 학습하는 방법, 비슷한 특징을 가진 데이터들을 clustering 하는 방식

 

 

Self-supervised learning (Unsupervised Learning의 한 분야)

  • labeled 데이터를 수집하려면 많은 시간과 비용이 발생한다.
  • 딥러닝 모델은 모델 사이즈에 따라 성능이 좋아지지만 모델이 커질수록 이상적인 학습데이터량도 많아지게 된다.
  • 클라우드 워커처럼 labeled 데이터를 수집하기 위해 노력하지만 여력이 충분하지 않은 대다수의 기업 또는 labeling이 어렵거나 보안을 이유로 수집이 어려운 기업들은 데이터 수집이 쉽지 않다.
  • 또한 사람이 클래스 labeling을 하게 되면 그 사람의 bias가 어쩔 수 없이 들어갈 수도 있다.
  • 위의 이유로 self-supervised learning은 unlabeled dataset으로 사람이 알 수 없거나 알지 못했던 좋은 representation을 얻기 위해 사용하는 방식이다.
  • 예를 들면, 대량의 unlabeled data 들로 representation 학습을 먼저 진행하여 스스로 클러스터링을 하도록 만들어준 후에 feature extractor를 freeze 후 필요한 downstream task (classification, detection 등)에 대한 fine-tuning을 진행하여 활용할 수 있다.

 

 

Contrastive learning (Self-supervised Learning의 한 분야)

Positive pair는 같고 negative pair는 다르다는 것을 알게 하면서 학습하는 방법이다.

  • positive pair는 같은 강아지 이미지(같은 샘플)를 각각 다른 augmentation을 적용해서 같다는 것을 알려주는 것
  • negative pair는 강아지와 고양이 이미지(서로 다른 샘플)를 각각 다른 augmentation을 적용해서 다르다는 것을 알려주는 것

Positive pair는 embedding space 상에서 가까워지고, negative pair는 embedding space 상에서 멀어지게 되며 클러스터링에 조금 더 도움을 주는 방식이다.

Representation Learning > Unsupervised Learning > Self-supervised Learning > Contrastive Learning 의 범주이다.

 

이해 못 했던 점들 질문 (feat. chatGPT)

  • positive, negative pair를 만들기 위해서는 label이 필요한 것 아닌가?
    >> positive, negative를 만들기 위해 label이 필요한 줄 알았는데, positive pair는 1장의 같은 이미지에 다른 augmentation을 가하고, negative pair는 다른 샘플에 augmentation을 가하는 것이기 때문에 label이 필요없다고 한다.
  • Label이 없는 상태에서 같은 클래스의 이미지 2장을 negative pair로 학습하면 같은 클래스끼리의 distance도 멀어지는 것 아닌가?
    >> 같은 클래스 2장에 다른 augmentation을 가하여 negative pair로 학습하기 때문에 멀어지는 것이 맞다. 하지만 positive pair를 학습할 때 같은 클래스 이미지 1장에 다른 augmentation을 가하여 학습하기 때문에 같은 클래스 샘플의 유사성 및 특은 보존되는 방향으로 학습한다.

 

 

도움이 되셨다면 아무 광고나 클릭 한 번 부탁드립니다👍

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감과 광고 클릭 부탁드립니다~