Paper Review

[Paper Review] YOLO

조상현 2022. 11. 22. 18:34

이전 Faster R-CNN 리뷰 : 2022.11.18 - [Paper Review] - [Paper Review] Faster R-CNN

 

[Paper Review] Faster R-CNN

이전 Fast R-CNN 리뷰 : 2022.11.16 - [Paper Review] - [Paper Review] Fast R-CNN [Paper Review] Fast R-CNN 이전 SPP-Net 리뷰 : 2022.11.11 - [Paper Review] - [IEEE Transactions] Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recogni

josh3255.tistory.com


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

 

다섯 번째로 리뷰할 논문은 객체 검출 분야의 새로운 지평을 연 YOLO이다. YOLO는 2015년에 공개된 최초의 One-Stage Detector로 아래 그림과 같이 이미지를 여러 그리드로 분리한 후 각각의 그리드 셀에 대해서 경계상자의 좌표, 신뢰도, 클래스 및 확률을 추출하여 객체를 검출한다.

 

 

YOLO의 베이스 모델은 VOC07 데이터셋에 대해서 45 fps, 63.4% mAP라는 높은 검출률을 보였으며, 경량화 모델을 기준으로는 무려 155 fps라는 엄청난 속도를 보여주었다.

 

YOLO의 Key insight는 다음과 같다.

 

  • Simple training and Very fast inference, using single network

 


Architecture

 

 

YOLO의 네트워크는 24개의 convolutional layers, 4개의 maxpool layers, 2개의 fully connected layer로 구성된다. 해상도를 절반으로 줄여서 이미지넷 데이터에 대해 convolutional layer를 사전학습하였다고 한다.

 

YOLO는 다음과 같은 과정을 통해서 동작한다.

 

1. 입력받은 이미지를 448 x 448 크기로 변경한다.

 

2. 이미지에 대해서 convolution, pooling, fully connected 연산을 수행한다.

 

3. 2의 과정을 통해 얻은 텐서에 대해 후처리를 진행하여 경계상자의 좌표, 신뢰도, 클래스 확률을 추출한다.

 

최종적으로 얻은 텐서는 S x S x (B * 5 + C) 크기를 가진다. S는 나누고자 하는 그리드의 수, B는 경계상자의 좌표 및 신뢰도, C는 클래스 확률을 나타낸다. 경계상자는 (x,y,w,h,conf)로 이루어지는데 (x,y)는 그리드 셀 내부 오프셋, (w,h)는 원본 이미지의 가로, 세로 대비 크기를 의미한다.

 


Loss

 

 

네트워크의 학습을 위한 loss function은 sum-squared error를 사용하였다. loss function은 balance parameter, 경계상자 좌표 (x,y,w,h) loss, 경계상자의 신뢰도 C loss, 클래스 확률 pi(c) loss로 구성된다.

 

객체가 없는 그리드 셀이 객체가 있는 그리드 셀에 비해서 훨씬 많기 때문에 학습할 때 나타나는 편향을 막아주고자 balance parameter λcoord,λnoobj를 사용한다.

 


Limitations

 

YOLO는 다음과 같은 몇 가지 한계점을 가진다.

 

1. 각각의 그리드 셀이 B개의 상자만 예측하기 때문에 공간적 제약성을 가진다. 예시로 여러 객체가 하나의 그리드 셀에 뭉쳐있거나, 인접한 셀에서 동일한 클래스를 가지는 경우

 

2. 학습 데이터로 부터 경계상자의 형태를 학습하기 때문에 처음 보는 형태의 객체를 감지하는데 어려움을 겪는다.

 

3. Loss를 계산할 때 IoU 값이 가장 큰 객체에 대해서 계산을 하기 때문에 동일한 오류라도 크기가 작은 경계상자에 민감하다.

 


Results

 

 

표 1에서 YOLO는 실시간 영역에서 DPM 대비 엄청난 성능과 속도를 보이는 것을 확인할 수 있다. 비록 비 실시간 영역에서는 Two-Stage Detector에 비해 떨어지는 mAP를 보이지만 속도적인 측면에서 약 3배 정도의 향상을 이뤄낸걸 볼 수 있다.

 


Advantages

 

YOLO의 장점은 다음과 같다.

 

1. 이전 연구에 비해서 비약적으로 상승한 처리속도

 

2. 단일 네트워크, 간단한 목표함수로 간단하게 구현이 가능하다.

 

3. 이미지 전체를 보기 때문에 객체의 전역적인 특성 또한 학습이 가능하다.

 


다음글에서는 SSD 논문을 리뷰하겠습니다.