본문 바로가기

컴퓨터비전/CNN14

[딥러닝] GoogLeNet(Inception) 모델의 개요 및 특징 구조 GoogLeNet은 22개의 층으로 이루어져 있습니다.. 파란색 블럭(Conv)의 층수만 세보면 22개의 층입니다. 겉으로 보기에 다른 모델보다 엄청 복잡해 보입니다. 하나하나 뜯어보겠습니다. Inception 모듈 위의 뭉텅이들이 전부 Inception 모듈들입니다. 이제 내부 구조를 살펴볼까요?? 내부 구조는 이렇습니다. 결합 1x1 Conv 1x1 Conv -> 3x3 Conv 1x1 Conv -> 5x5 Conv 3x3 max pooling -> 1x1 Conv 모든 결과를 채널을 기준으로 결합합니다. 결합 함으로써 여러가지 필터를 한꺼번에 합쳐 다양한 Feature Map을 가져올 수 있습니다. 근데 여기서 의아해 하실분들이 있습니다. 1, 4번의 구조는 상관이없는데 2, 3번의 구조를 1.. 2022. 3. 17.
[딥러닝] VGG 모델의 개요 및 특징 특징 VGG모델은 네트워크의 깊이와 모델 성능 영향에 집중한 것입니다. 커널 사이즈를 Alexnet과는 다르게 3 x 3으로 고정하였습니다, 그 이유는 커널 사이즈가 크면 이미지 사이즈 축소가 급격하게 이루어져 깊은 층 만들기가 어렵고, 파라미터 개수와 연산량이 많이 필요하기 때문입니다. 작은 필터를 사용함으로써 더 많은 ReLU함수를 사용할 수 있고 더 많은 비선형성 확보할 수 있었습니다. AlexNet에서도 그랬듯이, 아래의 그림을 보면 깊이에 따라 모델 성능이 좋아짐을 알 수 있습니다. 1. 위의 3x3 커널을 2개 적용한 경우 3x3x2 = 18 개 2. 5x5 커널을 1개 적용한 경우 5x5 = 25 개 그림을 보면 3x3을 2번 적용함으로써 2번 추상화 시킬수 있고, 최종으로 5x5의 추상화도.. 2022. 3. 17.
[딥러닝] AlexNet 모델의 개요 및 특징 특징 AlexNet은 2012년 당시 오차율이 제일 낮은 모델로 우승한 모델입니다. 지금은 그렇게 좋은 모델은 아니지만 저 당시에는 굉장한 정확도였다고 합니다. ReLU 이전에 보통 사용하던 뉴런 출력 함수는 주로 f(x)=tanh(x) ReLU가 보통 출력 함수들보다 몇 배 빠르기 때문에 이 거대한 neural networks의 실험을 가능하게 해줌 Overlapping MaxPooling으로 Overlapping Polling을 적용함, Local Response Normalization(LRN) AlexNet에서 처음 도입되었습니다. 활성화 함수를 적용하기 전에 Noramlizatino을 적용하여 함수의 결괏값에서 더 좋은 일반화 결과를 도출했습니다. 이미지의 인접 화소들을 억제시키고 특징을 부각합.. 2022. 3. 17.
[딥러닝] Albumentations의 데이터 증강 이해 Albumentations의 데이터 증강 albumentations는 이미지 데이터 증강 라이브러리입니다. 이미지를 좌, 우, 회전, 색변환, 노이즈 등등 넣어서 다양한 데이터를 모델이 학습시킬 수 있게 변환해주는 것입니다. 코드를 보면서 어떻게 사용하는지 확인하겠습니다. import numpy as np import pandas as pd import os import cv2 import matplotlib.pyplot as plt image = cv2.cvtColor(cv2.imread('test.jpg'), cv2.COLOR_BGR2RGB) plt.imshow(image) 여기 원본 강아지사진 한 장이 있습니다. albumentations은 함수마다 확률 값을 줘서 작동을 확률 값으로 하는 것입니다.. 2022. 3. 17.