NMS(Non Max Suppression) 이번 포스팅 에서는 IOU에 이어서 NMS(Non Max Suppression)에 대해 알아보려고 한다. NMS는 여러 Object Detection논문(YOLO, SSD 등)에서 사용한 방법으로 각각의 물체에 대한 bounding box를 제일 잘 나타낸 1개의 box만 두고 나머지를 제거하는 기법이다. 자세히 알아보자. 모델이 위 그림과 같이 box를 예측했다고 해보자. 어떤 박스는 자동차를 거의 완벽하게 내포하고 있고 몇몇 박스는 조금씩 아쉽게 위치한 것을 볼 수 있다. 여기서 우리가 원하는 것은 이 박스들 중에 자동차를 가장 잘 포함시킨 박스 하나만 남겨서 깔끔하게 만드는 것이다. 이러한 작업은 어떻게 이루어 질까? 다시 박스를 바꿔서 모델이 위와 같은..
IOU(Intersection over union) 이번 포스팅에서는 많은 Object Detection 논문에서 사용하는 IOU(Intersection over union) 에 대해 알아보자. 참고로 IOU는 jaccard overlap 이라고도 불린다. 위의 그림을 보면 Prediction은 Ground truth와 꽤 겹치는 듯 하면서도 만족스럽지는 못한 것을 알 수있다. 이러한 차이를 어떤 방법으로 Prediction과 Ground trutt를 비교하면서 평가를 할 수 있을까? 바로 왼쪽 그림의 두 박스의 교집합과 오른쪽 그림의 합집합을 이용을 하면 prediction이 얼마나 ground truth와 겹쳐 있는지 수치적으로 비교할 수 있다. 즉 IOU는 이름에서부터 알 수 있듯이 두 박스(pre..
MobileNets : Efficient Convolutional Neural Networks for Mobile Vision Applications 이번 포스팅에서는 구글에서 2017년 10월에 발표한 논문 MobileNet에 대하여 다뤄 보려고 한다. 사실 이 논문에서는 어떤 새로운 방법론에 대해 다뤘다기 보다 기존의 CNN의 무거운 네트워크를 수정하는 내용을 다루고 있다. 컴퓨터 비전에 대한 상업적인 요구사항을 두가지 관점에서 생각해 보면 다음과 같다. 1. Data-centers(clouds) - Rarely safety-critical - Low power is nice to have - Real-time is preferable 2. Gadgets= Smartphones, Self,drivin..
이번 포스팅에서는 Batch Normalization에 대해 알아보려고 한다. 레이어 수가 많이질수록 즉 망이 깊어질수록 vanishing/exploding gradient 문제로 인해 학습이 잘 되지 않았고 그것을 해결하기위해 activation function 변경, dropout, regularization 방법 등이 제시 되었지만 여전히 골칫거리로 남아있었다. 이 문제를 해결하기 위해 나온것이 이전 포스팅에서 다룬 ResNet 과 Batch Normalization이다. 천천히 Batch Normalization에 대해 알아보자. What is vanishing / exploding gradient ? vanishing gradient : 학습과정에서 backpropagation을 하면서 grad..
2014년에는 ILSVRC 대회에서 GoogleNet 이 1등(6.7% 에러율) VGGNet이 2등(7.3% 에러율)을 차지하였다면 2015년에는 ResNet이 3.57%의 에러율을 가지며 전년도 1~2등의 에러율의 거의 절반에 가까운 성능을 보이면서 압도적으로 1등을 하였다. ResNet은 그 유명한 'Kaiming He'님이 설계를 하였고 당시 마이크로소프트 북경연구소, 현재는 FAIR(Facebook AI Research에 소속되어 계신다. ResNet의 가장 큰 특징이라고 하면 깊은 망(레이어)와 residual learning인데 논문 내용을 통해 ResNet에 대해 자세히 알아보자. 깊은 망의 문제점 CNN에서 파라미터를 업데이트 할때 gradient 값이 너무 크거나 작아지게 되면 더이상 학..
VGGNet이란? VGGNet은 2014년 이미지넷 대회에서 준우승을 한 모델이며 옥스포드 대학의 연구팀 VGG에서 발표를 하였다. 정식명칭이 Visual Geometry Group인 이 모델은 아직까지도 backborn architecture로 사용되고 있을정도로 괜찮은 구조를 가지고 있다. 원래 이 VGGNet의 목적은 CNN의 깊이가 image classification 에 어떤 영향을 끼치는지 알아내기 위함이었다고 한다. 그래서 VGGNet의 이름은 레이어의 수로 구분을 할 수 있게 되는데 현재 많이 인용되는 네트워크는 VGG16 과 VGG19이다. 뒤에붙은 16과 19가 바로 네트워크 레이어의 수 이고 여기서 중요한건 weight를 가진 레이어(convolution layer,fully conn..