Tsung-Yi Lin1,2, Piotr Dollar´ 1 , Ross Girshick1 , Kaiming He1 , Bharath Hariharan1 , and Serge Belongie2 1Facebook AI Research (FAIR) 2Cornell University and Cornell Tech
Intro
SSD를 이용한 pedestrian detection 을 하면서 Pyramidal feature 구조에 대해 궁금하게 되었고 SSD와 같은 Pyramidal feature hierarchy의 다음 연구 격인 Feature Pyramid Network에 대해 공부 해 보았다.
Scale-Invariant는 object detection에서 아주 중요한 과제다. 따라서 우리는 pyramid 구조를 쓴다.
(b)와같은 형태로 cnn을 통해 단일 아웃풋으로 좀 더 robust한 예측을 할 수 있지만 (a)에 비해 성능이 부족하다. (c)와 같은 형태가 ssd에서 사용한 방법이다. cnn자체가 태생적으로 레이어를 거치면서 피라미드 구조를 만들고 레이어를 거치면서 더 semantic해진다.
이 논문에서 제안한 구조는 (d) skip connection, top-down, cnn forward에서 생성되는 피라미드 구조를 합친다. forward에서 응축된 sematic 요소들을 top-down 과정에서 upsampling해 해상도를 올리고 forward에서 손실된 지역 정보들을 skip connection으로 보충해서 크기 변화에 강한 모델을 만든다. 또한 속도도 빠르다.
Bottom-up
위로 올라가는 forward 단계에서는 매 레이어마다 semantic을 응축하는 역할을 한다. 깊은 모델의 경우 가로, 세로 크기가 같은 레이어들이 여러개 있을 수 있는데 이 경우에 같은 레이어들은 하나의 스테이지로 취급해서 각 스테이지의 맨 마지막 레이어를 skip-connection에 사용한다. 왜냐 하면 마지막의 깊은 레이어가 더 강한 피쳐를 갖기 때문이다.
Top-down
아래로 내려가는 네트워크는 upsmapling하면서 많은 sematic을 내포함과 동시에 고해상도의 이미지를 만드는 역할을 한다. 여기서 skip-connection ( lateral connection) 을 통해 같은 사이즈의 bottom-up 레이어와 합쳐서 손실된 지역적 정보를 보충한다.
top-down 과정 매 레이어마다 classifier/regressor가 적용되는데 같은 classifier/regressor를 사용하기 때문에 채널이 전부 같고 논문에서는 256을 사용했다. 때문에 skip connection을 합칠 때 1 x 1 레이어를 한번 거쳐서 채널을 맞게 바꿔준다.
왜 top-down이 중요한가?
top-down없이 bottom-up만으로 네트워크를 만들었을 때 성능이 안좋은데 레이어 별 semantic 수준이 너무 다르기 때문이다. 특히 이런 현상은 깊은 레이어에서 두드러진다.
lateral connection이 없으면?
lateral connection이 없으면 top-down레이어가 물론 높은 semantic을 가지고 있지만 지역 정보가 부정확해 정확도가 떨어진다.
figure 아래에
“(b)와같은 형태로 cnn을 통해 단일 아웃풋으로 좀 더 robust한 예측을 할 수 있지만 (a)에 비해 성능이 부족하다.”
다음과 같이 설명해주셨는데 저는 좀 더 robust하다는 것은 더 좋은 성능이 나온다는 것으로 알고 있었는데 다른 의미가 있으신가요?
detection 연구의 3대 거장은?
skip connection에 대해서 설명해주실 수 있나요?