지난 시간에 소개한 R-CNN에 이어서 오늘은 Fast R-CNN에 대해 다루도록 하겠습니다. 이름만 봐도 R-CNN과 연관이 있고, 더 빠른 모델임을 알 수 있겠죠? 그러면 어떤 이유도 더 빨라졌는지 확인해보도록 하겠습니다. Fast R-CNN의 original 논문은 ICCV 2015에서 발표된 "Fast R-CNN"입니다.
R-CNN의 경우 입력 이미지에서 selective search를 통해 물체가 존재할 가능성이 있는 약 2000개의 관심영역(region of interest, ROI)을 찾은 후에, 각 ROI를 CNN에 입력해서 특성을 도출하기 때문에 약 2000개의 CNN이 사용됩니다. 그러다보니 자연스럽게 모델이 무거울 수 밖에 없었죠.
이와 달리 Fast R-CNN은 단 하나의 CNN만 사용합니다. 여기서 시간을 확 줄이게 되는 것이죠. 이미지를 CNN에 통과시킴을 통해 도출된 특성맵에서 ROI들을 찾아줍니다(이 ROI들은 입력 이미지에서 selective search를 통해 찾은 것을 특성맵에 적용한 것입니다). 그 다음에 특성맵을 각 ROI로 잘라줍니다. 그러면 특성맵이 ROI에 따라 각각 다양한 크기로 잘라집니다. 그것들을 ROI pooling을 통해 고정된 사이즈의 특성맵으로 변환해준 다음에 fully-connected(FC) 층에 각각 입력해줍니다. FC 층들을 거쳐서 얻은 특성벡터를 두 개의 자녀 출력층에 각각 입력해줍니다. 하나는 softmax를 통해 객체의 클래스를 예측하고, 또 다른 하나는 Bbox regressor를 통해 객체의 위치를 좀 더 정확하게 찾아줍니다. 이 과정이 이해가 안되시는 분들은 좀 더 자세하게 Fast R-CNN의 구조를 그려놓은 아래 그림을 참고하세요.^^
다음 표는 R-CNN과 Fast F-CNN의 성능을 비교해주고 있습니다. (VOC 2012 test 데이터셋)
표에서 알 수 있듯이 Fast R-CNN이 R-CNN보다 좀 더 높은 정확한 물체 검출을 시행합니다. mAP는 물체 검출 알고리즘의 성능을 나타내는 지표입니다.
그리고 다음 그림은 R-CNN과 Fast R-CNN의 속도를 비교해놓은 것입니다.
속도가 획기적으로 빨라졌음을 알 수 있습니다. 속도도 빨라졌는데 더 정확해졌으니 금상첨화죠. 하지만 사람의 욕심은 끝이 없습니다. 여전히 실시간으로 물체를 검출하기에는 느립니다. 더 빠른 모델이 필요합니다. 그래서 나온 것이 Faster R-CNN입니다. fast의 비교급인 faster를 사용해서 Fast R-CNN보다 더 빠르다는 것을 나타냈죠.
다음 시간에는 이 Faster R-CNN에 대해 다루도록 하겠습니다. 항상 질문과 지적은 환영합니다. 빠르게 답변해드리고 있으니 댓글 남겨주세요.^^
<참고자료>
[1] https://towardsdatascience.com/r-cnn-fast-r-cnn-faster-r-cnn-yolo-object-detection-algorithms-36d53571365e, Rohith Gandhi, "R-CNN, Fast R-CNN, Faster R-CNN, YOLO - Object Detection Algorithms"
[2] https://nuggy875.tistory.com/33?category=860935, 제이스핀, "[Object Detection] 3. Fast R-CNN & Faster R-CNN 논문 리뷰"
'Research > ML, DL' 카테고리의 다른 글
배치(batch)와 에포크(epoch)란? (5) | 2020.06.11 |
---|---|
ground-truth 라벨을 얻기 어려운 경우 대안, pseudo 라벨 (0) | 2020.04.15 |
손실함수(loss)와 평가지표(metric)란? 그 차이는? (0) | 2020.04.07 |
hold-out 교차검증과 k-fold 교차검증 (2) | 2020.03.16 |
[object detection] R-CNN의 구조 (4) | 2020.02.05 |
전이학습(transfer learning) 재밌고 쉽게 이해하기 (4) | 2020.02.04 |
[CNN 알고리즘들] SENet의 구조 (4) | 2020.01.31 |
[CNN 알고리즘들] ResNet의 구조 (18) | 2019.11.22 |