R-CNN(Region-based Convolutional Neural Network)은 2014년 캘리포니아 대학교 버클리 캠퍼스의 Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik이 소개한 객체 탐지 아키텍처이다. 이는 전통적인 컴퓨터 비전 접근 방식에 비해 상당한 개선을 이룬 최초의 딥러닝 방법 중 하나로, 이미지 내 객체의 위치를 찾고 분류하는 객체 탐지 문제를 다룬다. R-CNN은 합성곱 신경망이 이미지 분류에서 객체 탐지로 효과적으로 적응될 수 있음을 입증하며, 새로운 세대의 탐지 모델을 위한 토대를 마련했다.
R-CNN의 핵심 혁신은 영역 기반 접근 방식이었다. 전체 이미지를 슬라이딩 윈도우로 스캔하는 대신, 객체를 포함할 가능성이 있는 후보 영역 집합을 먼저 생성한 다음 각 영역에 CNN을 독립적으로 실행한다. 이 2단계 패러다임 - 영역 제안 후 분류 - 은 수년간 객체 탐지의 지배적인 프레임워크가 되었으며, 이후 Fast R-CNN 및 Faster R-CNN과 같은 모델에 영향을 미쳤다.
구조 및 방법
R-CNN은 세 가지 주요 단계로 작동한다. 첫째, 선택적 검색 알고리즘을 사용하여 이미지당 약 2,000개의 범주 독립적 영역 제안을 생성한다. 이러한 제안은 객체를 포함할 수 있는 후보 경계 상자이다. 둘째, 각 제안은 고정 크기(227x227 픽셀)로 변형된 후 CNN - 일반적으로 AlexNet 변형 - 을 통과하여 4,096차원 특징 벡터를 추출한다. 셋째, 이러한 특징은 클래스별 선형 서포트 벡터 머신(SVM)에 입력되어 영역을 분류하고, 경계 상자 회귀 모델이 제안의 좌표를 정제한다.
2013년 Jasper Uijlings와 동료들이 개발한 선택적 검색의 사용은 철저한 슬라이딩 윈도우 접근 방식에 비해 평가할 영역 수를 줄였기 때문에 중요했다. CNN은 원시 픽셀에서 계층적 표현을 학습하는 강력한 특징 추출기 역할을 했으며, 이는 Deformable Parts Models과 같은 초기 탐지기에서 사용된 방향 기울기 히스토그램(HOG)과 같은 수작업 특징을 능가했다.
훈련 과정
R-CNN 훈련은 다단계 절차를 포함했다. CNN은 먼저 1,000개 범주에 걸쳐 120만 개 이상의 이미지를 포함하는 ImageNet 분류 데이터셋에서 사전 훈련되었다. 그런 다음 대상 탐지 데이터셋에서 미세 조정되었으며, 지상 실측 상자와 교차-결합(IoU) 중첩이 0.5 이상인 영역 제안을 양성 예로, 0.3 미만인 것을 음성으로 사용했다. 미세 조정 후, SVM은 추출된 특징에 대해 훈련되었으며, 양성에 대해 더 엄격한 IoU 임계값 0.3을 사용하여 거짓 양성을 줄였다. 마지막으로, IoU가 0.6보다 큰 제안을 사용하여 경계 상자 좌표를 조정하기 위해 선형 회귀 모델이 훈련되었다.
이 훈련 파이프라인은 계산 비용이 많이 들었다. 각 영역 제안은 CNN을 통한 순방향 패스가 필요했으며, 이미지당 2,000개의 제안이 있으므로 훈련과 추론이 느렸다. GPU에서 단일 이미지를 처리하는 데 약 47초가 걸려 실시간 응용 프로그램에는 비실용적이었다. 그러나 정확도 향상은 상당했다.
성능 및 영향
PASCAL VOC 2012 데이터셋에서 R-CNN은 평균 정밀도(mAP) 53.3%를 달성했으며, 이는 SegDPM 방법이 달성한 이전 최고 성능인 40.4%에 비해 상당한 개선이었다. VOC 2007 데이터셋에서는 58.5% mAP에 도달하여 모든 이전 방법을 큰 차이로 능가했다. 이는 객체 탐지에 대한 딥러닝의 힘을 입증했고, 해당 분야의 급속한 발전을 촉진했다.
R-CNN의 성공은 일련의 개선을 고무했다. 2015년 Ross Girshick은 단일 CNN 순방향 패스를 통해 영역 간 계산을 공유하고 관심 영역(RoI) 풀링 레이어를 사용하여 훈련 및 추론 시간을 크게 줄인 Fast R-CNN을 도입했다. 같은 해 말, Faster R-CNN은 선택적 검색을 학습된 영역 제안 네트워크로 대체하여 전체 파이프라인을 종단 간 훈련 가능하게 만들고 거의 실시간에 가깝게 만들었다. 이러한 모델들은 다른 단일 단계 접근 방식을 취한 YOLO(You Only Look Once) 및 SSD(Single Shot MultiBox Detector)와 함께 수년간 객체 탐지 연구를 지배했다.
R-CNN이 도입한 원칙 - 영역 제안, 특징 추출, 경계 상자 회귀 - 은 DETR(Detection Transformer)과 같은 최신 아키텍처가 종단 간 트랜스포머 기반 접근 방식으로 이동했음에도 불구하고 현대 탐지 시스템에서 여전히 기본적이다. R-CNN의 영향은 객체 탐지를 넘어 인스턴스 분할 및 키포인트 탐지와 같은 작업으로 확장되며, 여기서 영역 기반 방법이 여전히 널리 사용된다.
한계 및 유산
획기적인 성과에도 불구하고 R-CNN은 주목할 만한 한계가 있었다. 다단계 훈련은 CNN, SVM, 경계 상자 회귀자에 대한 별도 훈련이 필요하여 복잡하고 시간이 많이 걸렸다. 추론 속도는 많은 실제 응용 프로그램에 비실용적이었고, 모든 제안에 대한 특징을 저장해야 하므로 메모리 사용량이 컸다. 이러한 문제는 더 빠르고 통합된 후속 모델의 개발을 촉진했다.
그럼에도 불구하고 R-CNN은 컴퓨터 비전에서 획기적인 논문으로 널리 간주된다. 이는 이전 시도에서 저항했던 문제인 객체 탐지에 딥러닝이 성공적으로 적용될 수 있음을 입증했다. 그 방법론은 이후 많은 연구에 영향을 미쳤고, 대규모 분류 데이터셋에서의 전이 학습의 중요성을 확립하는 데 기여했다. 2014년 IEEE 컴퓨터 비전 및 패턴 인식 회의(CVPR)에서 발표된 이 논문은 수만 번 인용되어 인공지능 및 기계 학습 분야에 지속적인 영향을 미쳤음을 반영한다.
R-CNN은 또한 2012년 AlexNet과 같은 다른 돌파구와 함께 컴퓨터 비전에서 딥러닝 기술의 더 넓은 채택에 기여했다. 그 성공은 연구자들이 의미론적 분할 및 비디오 분석을 포함한 더 넓은 범위의 시각적 작업에 CNN을 적용하도록 장려했다. 오늘날 더 새로운 모델이 성능에서 R-CNN을 능가했지만, 그 개념적 프레임워크는 여전히 컴퓨터 비전 과정의 커리큘럼에서 핵심 부분이며 객체 탐지의 진화를 이해하기 위한 참조점으로 남아 있다.
관련 발전
R-CNN의 계보에는 몇 가지 주목할 만한 변형이 포함된다. Fast R-CNN(2015)은 RoI 풀링을 도입하여 합성곱 계산을 공유함으로써 훈련 시간을 며칠에서 몇 시간으로 줄이고 VOC 2012에서 mAP를 66%로 개선했다. Faster R-CNN(2015)은 영역을 제안하도록 학습하는 영역 제안 네트워크(RPN)를 추가하여 GPU에서 초당 약 5프레임의 거의 실시간 속도를 달성하고 정확도를 더욱 향상시켰다. Mask R-CNN(2017)은 경계 상자와 함께 분할 마스크를 예측하는 분기를 추가하여 Faster R-CNN을 인스턴스 분할로 확장했다. 이러한 모델은 자율 주행에서 의료 영상에 이르는 응용 프로그램에서 널리 채택되었으며, 현대 아키텍처에 계속 영향을 미치고 있다.
정보 상자
- 유형: 객체 탐지 아키텍처
- 도입 연도: 2014
- 도입자: Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik
- 관련: Neural network, Deep learning, Machine learning
분류
- object-detection
- computer-vision
- deep-learning
- convolutional-neural-network