네이버부스트캠프aitech2기 23

Week 8/9/10 - Object Detection - EfficientDet

EfficientDet : The importance of Efficiency in Object Detection through Model Scaling Efficient Net이란? [주요 Contribution] Image Net competition이후 점점 deep 하고 방대한 모델들이 등장했고, 성능면에서도 향상을 보였다. 하지만 무조건 깊게 쌓는것만이 능사는 아니다. 모델이 깊어질 수록 파라미터 수가 많아지고, 그럼 계산속도와 효율 측면에서 오히려 역효과를 낳기도 한다. Efficient Det에서는 어떻게 하면 효과적으로 쌓을 수 있을지(=Model Scaling)방법에 대해 연구했다. EfficientNet 팀의 연구는 네트워크의 폭 (Width), 깊이 (Depth),해상도 (Resolu..

Week 8/9/10 - Object Detection - SSD

SSD - Single Shot Detection 1 stage detector의 대표인 Yolo와 SSD는 어떻게 다를까? SSD는 fully connected layer를 사용하지 않는다. 그 대신 extra convolution layer를 적용해 여러 scale의 feature map을 추출하고, 이런 중간과정의 feature map들을 전부 detection에 사용한다. Fully connected layer대신 conv layer를 사용해서 속도 향상 extra convolution layers (큰 feature map은 작은 물체를, 작은 feature map은 큰 물체를 탐지) Default box 사용 (=anchor box, 미리 scale과 비율을 계산해놓은 box. Fast RCN..

Week 8/9/10 - Object Detection - YOLOv1, v2, v3

You Only Look Once ! Yolo는 v1~v5까지 다섯개의 버전이 있다 더보기 YOLO v1 : 1stage detector 최초 등장 YOLO v2 : faster, stronger, better . 3가지 측면에서 향상 YOLO v3 : multi-scale feature maps 사용 YOLO v4 : 최신 딥러닝 기술 BOS사용 YOLO v5 : 크기별로 모델 구성 - small, medium, large, xlarge.. YOLO의 특징은 1. Region Proposal 단계가 없다 2. 전체 이미지에서 bbox와 bbox의 클래스를 에측하는 일이 동시에 진행이 된다. (맥락 이해↑, 전체를 보니까) YOLO v1 1. Pipeline 1단계 : 입력이미지를 SxS 그리드 영역으로..

Week 8/9/10 - Object Detection - 1-Stage-Detector

2-stage detector RCNN, FastRCNN, SPPNet...은 1. Localization, 2. Classification의 두단계로 이루어져 있기 때문에 속도가 매우 느리다는 단점이 존재한다. 1 stage detector는 단계를 하나로 통일해 real-time으로 응용가능한 Detector를 만들고자 했다. RPN과정 사라짐!!! 1 Stage Detector Localization, Classification 동시 진행 전체 이미지에 대해 특징 추출, 객체 검출 -> 간단하고 쉬운 디자인 속도 빠름. Real-time가능 영역을 추출하지 않고 전체의 이미지를 보기 때문에 객체에 대한 맥락적 이해가 높다 YOLO, SSD. RetinaNet... 정리 : 속도!!!! 왕중요

Week 8/9/10 - Object Detection - BiFPN , NASFPN, AugFPN

BiFPN , NASFPN, AugFPN은 모두 기존의 FPN에서 문제점을 발견하고 개선을 한 논문이다. 어떤 점을 문제로 삼았고 어떤 새로운 contribution을 했는지 살펴보자. Bi-directional Feature Pyramid EfficeintDet에서 제안한 FPN. Contribution 1. 간소화 기존의 PANet을 간소화했음을 알 수 있다. 화살표 몇개가 사라졌다. 효율성을 위해 feature map들이 한곳에서만 오는 노드들을 제거했다. BiFPN은 parameter와 FLOPS를 줄일 수 있기 때문에 여러 번 레이어를 쌓을 수 있게 되었다. 2. Weighted Feature Fusion feature map들을 합칠때 기존에는 단순합으로 더했다. high-level, low-..

Week 8/9/10 - Object Detection - DetectoRS

Motivation -> Looking things twice? detectoRS는 같은것을 두번씩 반복적으로 보면 성능이 좋아질까?라는 의문점에서 출발한모델이다. 주 Contributio이 2개인데 그 중 Neck과 관련된 RFP만을 살펴보자!. 1. Recursive Feature Pyramid ( RFP ) : 말그대로 feature pyramid를 recursive하게 진행한 것이다. - 학습속도 극악 펼처서 보면, RFP 반복을 몇번할지는 선택이다. 한번 Neck을 통과한 stage들은 (왼쪽에서 두번쨰 스택) ASPP를 거쳐서 다시 한번 feature map들과 합쳐진다. [ASPP] - receptive field 늘리는 방법

Week 8/9/10 - Object Detection - PANet

Path Aggregation Network (PANet) 등장배경 : FPN모델이 간과한 점이 하나 있다. 바로 backbone이 resnet이라는 것!! 꼭 Resnet이 아니더라도 deep한 딥러닝 모델을 backbone으로 사용하면 low level feature가 high level feature map까지 온전하게 전달이 될 수 있을까???! 1. Bottom-up Path Augmentation - Bottom up Path 추가 = Bottom up을 한번 더해줬다. - High-level, Low-level정보가 골고루 섞이도록 하는 역할 2. Adaptive Feature Pooling 모든 feature map에 ROI projection을 하자.

Week 8/9/10 - Object Detection - Neck의 개념

일반적으로 사용되는 2stage detector는 아래와 같다. 일반적으로 사용되는 2stage detector : Input이 Backbone 네트워크를 통과해서 맨 위에 다다랐을때, 마지막 feature map을 활용해 region proposla (ROI)를 검출한다. ->꼭 마지막 feature map을 사용할 필요가 있을까? 정답은 없다이다. Neck은 위와같은 의문점에서 출발해 굳이 마지막 feature map만을 사용하지 않고 중간 layer feature map들도 사용한다. Neck의 필요성 ? 객체는 크기가 다 제각각이다. 일반적으로 작은 feature map일수록 큰 범위를 보고, 큰 feature map일수록 작은 범위를 본다고 알려져 있다. (참고) - 다양한 크기의 객체를 더 잘..

Week 8/9/10 - Object Detection - Fast R-CNN

Fast R-CNN은 이름에서 알 수 있듯이 R-CNN을 보완한 모델이다. 어떤 점이 달라졌는지 비교해보자. 주요 Contribution 1. input image를 바로 CNN에 넣어 추출한 feature에 ROI 적용 - RoI Projection 2. RoI Pooling 1. RoI Projection, RoI Pooling Ex) input image : 400x400x3 - selective search 사용해 2000개의 region을 추출 - CNN을 통과한 feature map에 해당 ROI를 추출 - 이때 ROI는 feature map의 비율에 맞게 축소 2. Hierarchical Training RCNN의 경우 여러개의 이미지에 존재하는 ROI들을 전부 저장해서 사용한다. 따라서 한..