☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. Class Activation Map 기존의 CNN에서 사용이 되는 모델은 Convolution Layer가 여러 겹 쌓여있고 마지막에 Fully-connected layer(FCL)로 이어져 분류하여 뛰어난 성능을 보여준다. 하지만 이렇게 FCL로 Flatten할 때 Convolution이 가지고 있던 각 픽셀들의 위치 정보를 잃게 된다. 따라서 분류 정확도가 아무리 좋아도 무엇을 보고 그 class를 판별했는지 알 수 없다. 본 논문에서는 FCL을 GAP(Global Average Pooling)로 변경하여 위치 정..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. LeNet Yann LeCun은 "Gradinet-based learning applied to document recognition" 논문에서 손글씨 숫자를 인식하는 문제를 해결하기 위해 LeNet을 고안했다. ( Image Class에서 보편적으로 사용되는 CNN(Convolution Neural Network)을 최초로 제안한 모델이다. ) 기존에 classifier로 사용되던 fully-connected layer, 즉 MLP(Multi-Layer Perceptron)는 다음과 같은 문제점이 있었다. 첫 번째로 ..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. 네트워크의 성능을 향상하는 직관적인 방법은 네트워크의 크기를 늘리는 것이다. 이 크기는 보통 넓이와 깊이를 의미하며 넓이는 노드의 개수(파라미터의 개수)를 의미하며 깊이는 레이어의 계층 수를 말한다. 다시 말해 성능을 올리고 싶으면 노드 수를 늘리고 레이어를 많이 쌓으면 된다. 하지만 무작정 네트워크의 크기를 늘린다고 성능이 좋아지지 않는다. 큰 네트워크는 구조적으로 두 가지 문제점을 가지게 된다. 첫 번째로 많은 파라미터를 가지게 된다. 파라미터의 개수가 많아지면 Over fitting 일어날 가능성이 높다. 두 번째..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. 많은 CNN 분류 모델들 중 하나로 VGGNet은 옥스퍼드 대학에서 개발됐으며 2014년 ImageNet Challenge에서 정확도 92.7%를 달성하며 준우승 한 모델이다. VGGNet의 논문 이름은 Very Deep Convolutional Networks for Large-Scale Image Recognition 이다. VGGNet은 신경망 모델의 깊이(layer)에 따라 VGG16, VGG19로 불린다. 아래 그림을 보면 VGGNet을 시작으로 네트워크의 깊이가 확 싶어 지는 것을 확인할 수 있다. VGGNe..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. Fully Convolutional Networks(FCN) Fully Convolutional networks(이하 FCN)은 제목에서 나타나듯 Semantic Segmentation문제를 위해 제안된 딥러닝 모델이다. Semantic Segmentation은 단순히 BB(bounding box)을 하는 문제가 아니라 이미지를 pixel단위로 구분해 각 pixel이 어떤 물체 class인지 구분하는 문제이다. FCN은 기존에 이미지 분류에서 사용된 CNN기반 모델(AlexNet, VGG, GoogLeNet)을 Segm..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. CNN(Convolutional neural network)은 CNN은 데이터에서 패턴을 학습하고 이미지를 분류하기 때문에 특징을 수동으로 입력할 필요가 없다 때문에 컴퓨터 비전(computer vision)에서 많이 사용된다. CNN 네트워크로 VGG, GoogleNet, ResNet, Yolo 등이 있다. Fully-connected neural networks(FNN)의 문제점과 CNN Fully-connected neural networks(FNN)은 그림1(좌) 처럼 한 계층의 모든 뉴런을 다른 계층의 모든 뉴..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. NMS란? 일반적으로 Input image가 Object detection 알고리즘을 통과하면 Object에 bbox(Bounding box)가 그려지며 어떤 물체일 확률 값(Score)값을 가지게 된다. 이때 아래 그림 처럼 한 가지Object에 많은 bbox가 생긴다. 동일한 Object에 여러개의 bbox가 있다면, 가장 스코어가 높은 박스만 남기고 나머지를 제거하는 것이 NMS(Non-maximum Suppression)라 한다. NMS Input : B - bbox list S - bbox의 confidence..
IOU(Intersect over Union) IoU는 아래의 그림[1] 같이 구해진다. 예측된 바운더리 박스와 사용자가 설정한 바운더리 박스 간 중첩되는 부분의 면적을 측정해서 중첩된 면적을 합집합의 면적으로 나눠준다. IoU의 계산 결과 값이 0.5 이상이면 제대로 검출(TP)되었다고 판단한다. 만약 0.5 미만이면 잘못 검출(FP)되었다고 판단한다. (이 값은 임의의 값으로 설정할 수 있다.) 중첩 영역 계산 중첩 영역 계산은 박스 A, 박스 B의 왼쪽 상단, 오른쪽 하단의 좌표 값을 이용하여 중첩 부분의 왼쪽 상단, 오른쪽 하단의 값을 구한다. 그리고 width, height 값을 이용하여 Overlapping region 값을 구한다. 결합 영역 계산 중첩 영역 계산을 이용하여 구한 Overla..
mAP 합성곱 신경망(Convolutional Neural Network CNN)의 모델 성능 평가는 아래 그림과 같이 mAP를 이용하여 평가하는 것을 볼 수 있다. mAP를 이해하기 위해서는 우선 precision, recall , AP(Average Precision)에 대해 이해해야 한다. ※ Precision-recall 곡선과 , Average precision은 컴퓨터비전(Computer Vision)에서 물체 검출(Object Detection) 알고리즘 성능 평가를 위해 사용되는 방법이다. 예를 들어 2개의 알고리즘이 있다고 하자, 첫 번째 알고리즘은 사람을 검출할 수 있는 검출율이 99%이다. 하지만 1장당 10건 정도의 오검출이 발생된다. 두 번째 알고리즘은 검출율이 50%이다. 하지만..