본문 바로가기

Data Science/Computer Vision

(14)
[ML] Residual Block을 활용한 ResNet(Residual Network) 🔊 해당 포스팅은 권철민님의 CNN Fundamental 완벽 가이드 강의를 듣고 난 후 배운 내용을 정리하고자 하는 목적 하에 작성되는 포스팅입니다. 하단의 포스팅에서 사용되는 실습 코드 및 자료는 필자가 직접 재구성한 자료이며 권철민님의 자료를 그대로 인용하지 않았음을 필히 알려드립니다. 이번 포스팅에서는 Skip Connection 이라는 개념을 최초로 활용해서 Residual Block을 연속적으로 쌓아 매우 깊은 네트워크를 형성했음에도 불구하고 이전 CNN 분류 모델인 GoogleNet 보다 더 높은 성능을 이끈 ResNet에 대해 알아보고자 한다. 1. ResNet은 왜 등장했을까? 원초적인 질문으로 돌아가보자. 저번 포스팅에서 배운 GoogleNet도 성능이 나름 괜찮은 편이였는데, 왜 새로..
[ML] GoogleNet(InceptionNet) CNN 모델 🔊 해당 포스팅은 권철민님의 CNN Fundamental 완벽 가이드 강의를 듣고 난 후 배운 내용을 정리하고자 하는 목적 하에 작성되는 포스팅입니다. 하단의 포스팅에서 사용되는 실습 코드 및 자료는 필자가 직접 재구성한 자료이며 권철민님의 자료를 그대로 인용하지 않았음을 필히 알려드립니다. 이번 포스팅에서는 Pretrained 모델로 자주 사용되기도 하며 1 by 1 컨볼루션을 최초로 도입한 GoogleNet 모델에 대해 알아보려고 한다. GoogleNet은 Inception Network라고도 부르며 예전에 코세라 딥러닝 강의를 들으면서 배웠던 적이 있다. 강의를 들은지 시간이 좀 되었기도 하고 다시 회고하고 복습하고자 GoogleNet에 대해 작성하려 한다. GoogleNet은 이름에서도 알다시피 ..
[ML] Explainable AI - CAM & Grad CAM 🔉해당 포스팅에서 사용된 자료는 고려대학교 산업경영공학부 김성범교수님의 Youtube 강의자료에 기반했음을 알려드립니다. 혹여나 출처를 밝혔음에도 불구하고 저작권의 문제가 된다면 joyh951021@gmail.com으로 연락주시면 해당 자료를 삭제하겠습니다. 감사합니다. 이번 포스팅에서는 컴퓨터 비전 분야의 이미지 분류 문제에 있어서 CNN 딥러닝 모델의 예측 결과를 설명해줄 수 있는 요소 중 하나인 CAM(Class Activation Map) 과 이를 응용한 방법인 Grad CAM 방법에 대해 알아보려고 한다. 저번 포스팅에서는 Tabular data 즉, 정형 데이터에서 예측 결과를 설명할 수 있는 요소인 Shapley Value를 알아보았다. 이번에는 도메인을 변경하여 컴퓨터 비전 분야에서 알아보..
[ML] Mask RCNN Instance Segmentation 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 Pixel-level로 Object Detection을 수행하는 Instance Segmentation 모델인 Mask RCNN에 대해 알아보려고 한다. Mask RCNN은 Two-Stage Object Detection 모델인 Faster RCNN 과 Semantic Segmentation 기법인 FCN으로 구성되어 있다. 1. Segmentation이란? Segmentation은 픽셀 단위, 이른바 Pixel-level로 Classification을 수행하는 것이다. 다음 그림을 보면 직관적으로 이해..
[ML] Retina Net Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 One-Stage Object Detection의 또 다른 모델 중 하나인 Retina Net 모델에 대해 알아보려고 한다. 그동안에 살펴보았던 One-Stage 모델 중 하나인 YOLO 모델은 매우 빠른 Detection 속도를 자랑했지만 Detection 정확도는 Two-Stage 모델 중 가장 정확도가 높은 Faster RCNN 모델보다는 현저히 낮은 수준이었다. 특히 One-Stage 모델들은 작은 객체를 탐지하지 못하는 문제가 발생했다. 따라서 연구자들은 One-Stage 모델로서 YOLO 만큼..
[ML] YOLO(You Only Look Once) Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 One-Stage Object Detection 모델로서 YOLO 모델에 대해 알아보려고 한다. 원래 YOLO가 최초로 출시된 버전 1 모델은 SSD 모델 이전에 나왔다고 저번 포스팅에서 잠깐 언급했었다. YOLO 버전 1이 어떤 모델이고 또 어떤 문제점이 있었는지, 그리고 버전 2, 3 모델까지 차례대로 살펴보자. 앞으로 소개할 YOLO 모델 종류들은 모두 하나의 공통점을 가지고 있다. 바로 입력 이미지 또는 Feature Map을 특정 그리드로 나누고 각 Cell 마다 Object Detection을..
[ML] SSD(Single Shot Detector) Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 지금까지 알아보았던 RCNN 계열, SPP Object Detection 모델들은 모두 Two-Stage 모델이었다. 이번 포스팅에서 소개할 모델은 One-Stage 모델 중 하나인 SSD(Single Shot Detector) 모델에 대해 소개하려 한다. 1. One Stage? Two Stage? SSD에 대해 본격적으로 알아보기 전에 Object Detection 모델 종류 중 One-Stage / Two-Stage로 분류하는 차이점에 대해 짚고 넘어가자. 그동안 우리가 배웠던 RCNN, SPP, Fast RCNN,..
[ML] '더 빠른' Faster RCNN Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 저번에 소개했던 Fast RCNN의 느린 Detection 속도를 극복할 수 있는 Faster RCNN 모델에 대해 소개하려 한다. (만약 Object Detection에 대해 잘 모르신다면 Object Detection 시리즈를 읽고 오실 것을 권고합니다!) 이제까지 살펴본 RCNN, SPP Net, Fast RCNN 모델들의 공통점은 객체가 '있을 법한' 영역을 추천해주는 Region Proposal 단계를 Selective Search 방법을 사용해 구현했다는 점이다. 하지만 Selective Se..
[ML] Fast RCNN Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 저번에 소개했던 SPP Net을 약간 변형한 모델인 Fast RCNN에 대해 소개하려고 한다. 아마 SPP Net 모델의 구조를 잘 이해하고 있다면 이번 Fast RCNN 모델에 대해 이해하는 데 매우 수월할 것이다. 1. SPP Net이 뭐였더라? SPP Net에 대해 핵심적인 포인트만 다시 상기해보자. Selective Search로 입력 이미지에 대해 많은 Region Proposal들을 추출해주는데 이 때 Region Proposal 들의 크기가 서로 다를 수 밖에 없다. 그런데 이 각기 다른 크..
[ML] SPP(Spatial Pyramid Pooling) Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 이전 포스팅에서 소개했던 RCNN 모델의 단점을 극복하는 SPP(Spatial Pyramid Pooling) 모델에 대해 알아보려고 한다. 해당 모델을 이해하기 위해서 RCNN 관련 포스팅을 읽고 오는 것을 권장한다. 1. SPP Net 과 RCNN의 관계 먼저 SPP Net에 대해 알아보기 전에 SPP Net은 RCNN의 한계점을 극복하고자 나온 모델이다. 그렇기 때문에 RCNN의 한계점을 간단하게 다시 복습해보고 이 2가지에 중점을 두고 SPP 모델을 이해해보자. 각 Region Proposal 마다..
[ML] RCNN(Regions with CNN) Object Detection 모델 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 이번 포스팅에서는 RCNN(Regions with CNN) 모델에 대해 알아보려 한다. RCNN 모델은 저번 포스팅에서 소개했던 Regions Proposal을 CNN 모델에 결합하여 Object Detection을 수행하는 모델이다. 바로 하단의 그림에서 Object Detection Network에 해당하는 부분이다. 1. RCNN 모델이란? RCNN 모델은 Region Proposal을 Selective Search 방법으로 구현한 모델이다. 또한 Two-stage 모델로도 분류되는데, 여기서 2개의 Stage란, ..
[ML] Object Detection 기초 개념과 성능 측정 방법 🔊 해당 포스팅에서 사용된 컨텐츠는 인프런의 딥러닝 컴퓨터 비전 완벽 가이드 강의 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 최근에 인프런에서 권철민 님의 '딥러닝 컴퓨터 비전 완벽 가이드'라는 강의를 듣기 시작했다. 해당 강의는 컴퓨터 비전(Computer Vision)의 Object Detecion 과 Segmentation 내용에 포커스를 맞추고 있다. 원래 관심 분야가 컴퓨터 비전은 아니다. 그러나 머신러닝 분야를 공부하게 되면 누구나 딥러닝을 마주하게 되고 딥러닝을 조금 들여다 보면 컴퓨터 비전에 정말 잘 사용되고 있다는 것을 알 수 있다. 현재 점점 상용화되고 있는 자율 주행도 이 컴퓨터 비전을 기반으로 만들어진 기능이다. 물론 현재..
[ML] ResNet & Inception Network란? 앞으로 전개할 내용은 Coursera 딥러닝 강의의 내용을 기반으로 필자가 직접 정리하는 내용이며 해당 컨텐츠 이외의 다른 강의에 관심이 있다면 여기를 참고해 수강해보자. 이번 포스팅에서는 CNN 모델을 좀 더 발전시킨 ResNet(Residual Network)와 Inception Network에 대해 알아보려고 한다. 참고로 두 모델들에 대한 자세한 수학적인 수식들은 배제하고 두 모델의 구조가 어떤 구조이고 어떤 프로세스를 따라서 동작하는 지에 좀 더 초점을 맞추어 설명하려고 한다. 1. ResNet(Residual Network) 우선 RestNet에 대해 이해하기 전에 Residual block에 대한 이해가 필요하다. Residual의 사전적 의미는 '잔여', 수학적으로는 '잔차'라는 의미로 사..
[ML] Convolutional Neural Network(CNN) 🔉해당 자료 내용은 순천향대학교 빅데이터공학과 김정현 교수님의 수업자료에 기반하였으며 수업자료의 저작권 문제로 인해 수업자료를 직접 이용하지 않고 수업자료의 내용을 참고하여 본인이 직접 작성하였으므로 저작권 문제가 발생하지 않음을 필히 알려드립니다. 컴퓨터 비젼 즉, 이미지 데이터를 분류하는 데 가장 큰 일조를 한 모델이 있다고 한다면 바로 CNN(Convolutional Neural Network) 모델이다.(애석하게도 여기서의 CNN은 미국의 생방송 뉴스 전문 텔레비전 📺방송사 CNN과는 다르다.) 최근에 CNN은 이미지 분류를 넘어서 RNN의 Seq2Seq 모델과 결합하여 Image Captioning 즉, 기계가 이미지를 보고 텍스트로 설명할 수 있는 능력까지 보여주고 있다. 이에 대해서는 흥미로..