본문 바로가기

전체 글28

딥러닝 Object detection (이미지에서 객체를 검출 하는 방법)(feat. 2 stage detector)- 2 지난 시간에 이어 이번에는 전통적인 Object detection방법이 아닌 딥러닝이 나온 이후를 살펴보자~ 딥러닝 이후로는 1stage detector와 2 stage detector 2가지 방법으로 나뉘게 된다. 📍One stage detector, Two stage detector Object Detection은 지난시간에 설명한 것과 같이 물체를 식별하는 Classification 문제와, 물체의 위치를 찾는 Localization 문제를 합한 것이다. 간단하게 설명해서 1-stage Detector는 이 두 가지 task를 동시에 행하는 방법이고, 2-stage Detector는 이 두 문제를 순차적으로 행하는 방법이다. 이번 시간에는 2 stage detector에 대해 다뤄보려 한다 Obje.. 2022. 12. 3.
딥러닝 Object detection (이미지에서 객체를 검출 하는 방법) (feat 딥러닝 이전) - 1 지난번까지 우리는 CNN에 대해 알아보았다. 이미지를 Classification(분류) 하는 것뿐 아니라 이미지 내부에서 localization(어느 위치에 물체가 존재하는지 구체적인 위치를 특정) 하는 것을 object detection이라고 한다. 오늘은 이 object detection에 대해 알아보자!! 📍이미지에서 사물을 인식하는 방법 이미지 에서 사물을 인식하는 방법에는 크게 4가지가 있다. 먼저 Classification 이라고 불리는 전통적인 분류 문제는 하나의 이미지를 입력으로 받아 해당 이미지가 어떤 것인지 맞추는 것이다. 여기에 Localization 이 추가된 방법은 해당 이미지가 어떠한 것인지 맞추고 추가로 이미지 내에서 객체가 어느 위치에 존재하는지 두 번째 사진과 같이 바운딩 .. 2022. 11. 27.
CNN의 등장과 발전 과정 - 2 (VGGNet, ResNet, DenseNet, EfficientNet) 지난 시간에 이어 이번에는 나머지 CNN 계열을 살펴보자~ ✅VGGNet VGGNet은 2014년 ILSVRC대회에서 2위를 차지한 모델이다. 하지만 Googlenet 보다 구조가 훨씬 간단하여 오늘날까지도 백본 모델로 많이 사용되기에 설명을 하려 한다. VGGNet은 Very deep convolutional networks for large scale image recognition라는 논문 제목과 같이 Network 깊이가 CNN 성능에 어떤 영향을 주는지 알아보기 위해 층을 깊이 쌓는 것에 초점을 맞춘 연구이다. 일반적으로는 레이어층이 깊어지면 깊어질수록 모델의 성능은 좋아진다. (무조건 좋아지는것은 아님.. vanishing gradient와 같은 여러 문제가..ㅎㅎ) VGGNet은 이전 CNN.. 2022. 11. 19.
CNN의 등장과 발전 과정 - 1 (LeNet, AlexNet, GoogleNet) 📌CNN의 등장 CNN은 데이비드 허블(David H. Hubel / 캐나다 신경학자)과 토르스텐 비셀(Torsten Wiesel / 스웨덴 신경학자) 이 두 신경학자는 1959년에 시각피질 구조에 대한 실험을 수행했다. 실험에서는 고양이가 사용되었는데 (그림 1) , 그때 시각피질 안의 많은 뉴런들이 작은 국부 수용 영역 (local receptive field)을 가진다는 결과를 보였다. 즉, 뉴런들이 시야의 일부 범위 안에 있는 시각 자극에만 반응을 한다는 의미다(그림 2). 뉴런의 수용 영역은 서로 겹칠 수 있으며, 이렇게 겹쳐진 영역들이 전체 시야를 이루게 된다. (ps. 두 신경학자 선생님들은 1981년에 대뇌반구의 기능과 시각 정보화 과정에 관한 연구로 노벨 생리학 의학상을 수상했다 역시나 .. 2022. 10. 2.
[DL] 딥러닝 CNN (합성곱 신경망)알고리즘 의 동작원리 이번 시간에는 CNN에 대해 알아보겠습니다. 지난 DNN에서 발생한 overfitting(과적합) 문제에 해결책 중 하나로 나온 것이 CNN이며 computer vision 분야에서 매우 핫하게 사용되는 딥러닝 알고리즘입니다. Overfitting (과적합) 이란 overfitting은 학습 데이터를 과하게 잘 학습하여 새로운 데이터가 들어왔을 때 오히려 낮은 성능을 보이는 것을 말한다. CNN 등장 배경 Convolutional Neural Networks라는 이름은 실제로 Yann LeCun과 팀의 LeNet 설계에서 유래했습니다 (논문: http://vision.stanford.edu/cs598_spring07/papers/Lecun98.pdf) CNN (Convolutional Neural Net.. 2022. 10. 1.
[DL] 딥러닝 DNN과 인공신경망 동작원리 (feat. 퍼셉트론) 이번시간엔 딥러닝 알고리즘의 기본이 되는 DNN과 인공신경망의 동작원리에 대해 알아보겠습니다. DNN이란? 지난시간에 ANN에 대해 그림과 함께 설명을 했습니다. ANN은 즉, 인공신경망 입니다. DNN(Deep Neural Network)은 이름 그대로 심층 뉴럴 네트워크 입니다. 앞서 설명드린 인공신경망(ANN)에서 hidden layer 를 2개 이상 늘린 알고리즘을 이야기 합니다. DNN의 탄생 배경 우리는 왜 DNN이 나오게 되었는지 생각을 해볼 필요가 있습니다. 이는 ANN에서 모델 내부 은닉층을 늘려 학습의 결과를 향상시키는 방법이 나왔고 이게 곧 DNN입니다. DNN을 응용한게 CNN, RNN 등이 있고 이들에 대해서 다음에 다뤄보겠습니다. 딥러닝 인공신경망의 동작 원리 위 DNN의 구조에.. 2022. 9. 25.
[AI][ML][DL] 머신러닝, 딥러닝 이란? 이번시간엔 머신러닝과 딥러닝에 대해서 알아보고 둘의 차이점과 각각의 세부 알고리즘이 어떤것들이 있는지 알아보는 시간을 가져봅시다. 머신러닝 이란? 머신러닝은 컴퓨터가 스스로 학습할 수 있도록 도와주는 알고리즘이나 기술을 개발하는 분야로 인공지능을 구현하기 위한 하나의 방식 입니다. 이는 기계를 인간처럼 학습시키려는 시도에서 시작이 되었습니다. 머신러닝 알고리즘 유형 머신러닝은 크게 지도학습, 비지도학습, 강화학습 으로 나뉩니다. 지도 학습은 정답이 있는 데이터로 기계를 학습시키는 방법으로, 분류,회귀 가 있습니다. 비지도 학습은 문제의 정답 없이 데이터의 규칙을 기계가 스스로 발견하여 새로운 데이터에 대한 결과를 예측하는 방법입니다. 강화학습은 행동 심리학에서 나온 이론으로 자신이 한 행동에 대해 보상을.. 2022. 9. 25.
[ML] dataset이란? coco dataset 란? Pascal VOC 란? (dataset 종류) 오늘은 데이터셋의 대표적인 형태인 coco와 pascal voc 에 대해 알아봅시다. 데이터셋이란? 데이터셋은 특정 작업을 위해 데이터를 모아둔것 입니다. computer vision 에서 가장 중요한 작업 중 하나는 데이터에 라벨을 지정하는 것입니다. 머신러닝 (특히 지도학습) 에서 이 라벨링을 한 데이터셋은 매우 중요합니다. 데이터셋에 따라 학습의 결과가 천차만별이 될 수 있기 때문입니다. 데이터셋은 다양한 형태로 존재할 수 있습니다. coco dataset 부터 알아보겠습니다. COCO Dataset이란? coco dataset은 공식홈페이지의 정의에 따르면 object detection, segmentation, keypoint detection 등을 위한 데이터 포맷형식 이라고 명시되어 있습니다.. 2022. 9. 5.
[AWS] AWS S3에서 폴더 다운받기 (CloudPathlib) S3에서 파일은 많이 다운 받아 봤었다 하지만 디렉토리를 통으로 다운받아야 할 일이 생겨 boto3를 사용해서 그대로 다운받아 보려고 시도해보았는데 import boto3 s3 = boto3.client('s3') s3.download_file('버킷이름', '경로', '로컬에서 다운받고 싶은 이름') 보통은 위와 같이 하면 되는데 ... 결과는 실패.. stackoverflow를 찾아본 결과 나와 같은 문제를 마주친 다른사람이 있었다. https://stackoverflow.com/questions/49772151/download-a-folder-from-s3-using-boto3 Download a folder from S3 using Boto3 Using Boto3 Python SDK, I was .. 2022. 8. 23.