논문 리뷰 Paper Review

[논문 리뷰] Discriminative Unsupervised Feature Learning with Exemplar Convolutional Neural Networks (2015, IEEE TPAMI, Exemplar-CNN)

킹남지 2024. 7. 7. 03:06
반응형

Paper: https://arxiv.org/pdf/1406.6909

 

 

Introduction

이 논문에서 Self-supervised learning을 (아마도) 최초로 도입했다.

Unsupervised Learning을 다루는 논문들이 늘 얘기하는 문제(Labeled Dataset을 구축하는 게 어렵다.)를 극복하고자 Unlabeled Dataset으로 CNN을 사전 학습 시키는 방법을 제안한다.

 

 

Method

Create Surrogate Training Data

Exemplar-CNN 학습을 위해 어떤식으로 Input-Output을 구성했는지 확인해보겠다.

 

먼저, Figure 1과 같이 Unlabeled Dataset내 Images로부터 객체가 포함된 Patch를 N개 추출한다.

(정확히는, Gradient를 활용해 객체가 포함될 가능성이 높은 Patch를 추출한다.)

 

이후 N개의 Patches에 대해 Data Augmentation을 수행한다. (아래의 Transformation 적용)

각 patch로부터 Augmentation을 수행했다면, Sets of transformed image patches의 각 Set이 하나의 class로 분류되도록 Label을 부여한다. Figure 2에 해당하는 이미지들은 하나의 Patch에 대해 다양한 Transform을 적용했으므로, 모두 같은 Label 값을 갖게 된다.

 

만약 Patch를 10개 추출했다면 각 Patch에 대한 set이 0~9의 Lable을 각각 갖게되고, Output Layer의 노드 수는 10이 된다.

 

Downstream Task

위의 과정을 통해 구축한 Surrogate Training Data를 통해 학습한 CNN layer의 가중치를 통해 Downstream Task에 맞게 Output Layer를 구성해 전체적인 Network를 구성한다.

 

논문에서는 아래와 같이 CNN을 구성하고 활용한다. 

  • (64c5-64c5-128f): 두 개의 64 필터를 가진 컨볼루션 레이어, 128 유닛의 풀리 커넥티드 레이어, 소프트맥스 출력층. 
  • (64c5-128c5-256c5-512f): 각각 64, 128, 256 필터를 가진 세 개의 컨볼루션 레이어, 512 유닛의 풀리 커넥티드 레이어. 
  • (92c5-256c5-512c5-1024f): 각각 92, 256, 512 필터를 가진 세 개의 컨볼루션 레이어, 1024 유닛의 풀리 커넥티드 레이어.

 

EXPERIMENTS

Classification Task에서 당시 Unsupervised feature learning method들 및 Supervised Sota와 비교해 Exemplar-CNN이 더 나은 성능을 보였다.

 

반응형