Paper Review

[Paper Review] SPP-Net

조상현 2022. 11. 11. 18:31

이전 R-CNN 리뷰 :

2022.11.10 - [Paper Review] - [CVPR 2014] Rich feature hierarchies for accurate object detection and semantic segmentation

 

[CVPR 2014] Rich feature hierarchies for accurate object detection and semantic segmentation

뜬금없이 오래된 R-CNN을 리뷰하는 이유는 블로그에 기초부터 정리하기 위해서이다. 읽는 순서는 서베이 논문인 Object Detection in 20 Years: A Survey 를 참고하여 읽을 것이다. 서베이 논문 : https://arxiv.o

josh3255.tistory.com

 


 

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

 

두 번째로 리뷰할 논문은 R-CNN의 고정된 크기의 입력 문제를 해결한 SPP-Net 이다.

 

SPP-Net 이전의 네트워크들은 고정된 크기의 입력을 가지기 때문에 객체의 가로-세로 비율이나 크기 같은 중요한 정보가 손실된다는 문제점이 있었다. 이에 논문의 저자들은 다음과 같은 insight를 제시한다.

 

  • convolution layer와 fully connected layer 사이에 위치한 spatial pyramid pooling network 를 이용해 깊은 레이어에서 중요한 정보를 모으, 고정되지 않은 크기의 입력을 고정된 크기의 출력으로 변환하여 입력 이미지의 크기 제한을 없앤다.

 


Architecture

 

 

SPP-Net은 다음과 같은 과정을 통해 동작한다.

 

1. 입력받은 이미지에 대해 convolution 연산을 수행한다.

 

2. 가변 형태의 feature map을 SPP 모듈에 통과시켜 고정된 크기의 vector를 얻어낸다.

 

3. fully-connected layers와 softmax를 이용해 class를 분류한다.

 


The Spatial Pyramid Pooling Layer

 

 

논문의 핵심 아이디어인 Spatial Pyramid Pooling Layer의 pooling layers는 spatial bins의 값에 따라 구성된다. 예를 들어 spatial bins의 값이 21일 경우 위와 같이 구성되고 spatial bins의 값이 14일 경우 아래 그림과 같이 구성된다.

 

 

spatial bins의 값이 어떠하든지 pooling layer의 sizeX와 stride 값을 변경하여 적용이 가능하다.

 

위와 같은 과정들을 통해 SPP layer는 k * M 차원의 feature vector를 출력한다. (k : filter num of last convolution layer, M : spatial bins)

 

 


Training

 

논문에서 제안하는 SPP-Net은 입력 이미지의 크기와 상관없이 동작이 가능하지만 실제로는 고정된 크기의 이미지에서 실행되는 것이 바람직하다고 설명합니다.

 

논문에서도 single-size training과 multi-size training으로 구분하고 있지만 multi-size training에서 사이즈만 다를뿐 기본적인 레이아웃은 동일하고 입력 크기 또한 사전에 정의된 사이즈(224 x 224, 180 x 180)를 사용하였다.

 

single-size training은 일반적인 방법으로 학습을 진행하였고, multi-size training에서의 학습은 1 epoch마다 이미지의 크기를 변경하면서 학습을 진행하였다. 논문에서는 이런 학습 방식을 통해 다양한 크기의 입력을 시뮬레이션 하는 것이라고 설명한다.

 

 

위의 그림을 확인해보면 multi-size training 방식을 사용할 경우 single-size training 대비 1% 내외의 성능향상을 보이는 것을 알 수 있다.

 


Limitations

 

1. multi-stage pipeline : 분리된 프로세스로 인해 end-to-end 학습이 불가능하다.

 

2. high computational cost : 여전히 후보 영역 추출에 selective search, 클래스 분류에 linear SVM을 사용하기 때문에 많은 계산 비용과 대용량 저장장치를 필요로 한다.

 


Results

 

 

위 테이블을 보면 알 수 있듯이 SPP-Net이 R-CNN에 비해 높은 성능 향상을 이루어낸 것은 아니지만, 가변 크기 입력을 수용할 수 있게 함으로써 이미지의 기하학적 특성을 보존할 수 있게 되었다.

 

 

또한 R-CNN 대비 학습에서 약 3배, 추론에서 100배 정도의 속도를 향상시켰다고 한다.

 


다음글에서는 Fast R-CNN 논문을 리뷰하겠습니다.

'Paper Review' 카테고리의 다른 글

[Paper Review] YOLO  (0) 2022.11.22
[Paper Review] Faster R-CNN  (0) 2022.11.18
[Paper Review] Fast R-CNN  (0) 2022.11.16
[Paper Review] R-CNN  (0) 2022.11.10
[Paper Review] Revisiting Skeleton-based Action Recognition  (0) 2022.11.08