📗강의노트/핸즈온 머신러닝

[핸즈온 머신러닝] 제 13장 정리

728x90
반응형

13강. 합성곱 신경망

< Keyword >

Convolutional Layer :

합성곱층이라고 한다. 이는 한 함수가 다른 함수 위를 이동하면서 원소별 곱셈의 적분을 계산하는 수학 연산을 수행하는 층이다.

Zero padding :

이전 층의 높이와 너비를 같게 하기 위해 입력의 주위에 0을 추가하는 것이 일반적이다.

Stride :

연속된 두개의 receptive field 사이의 거리를 말한다. ( 필터가 S 칸씩 건너뛴다 )

출력의 크기는 다음의 공식을 따른다

(NF)/S+1

N : 입력의 크기 ( zero padding있을 경우 +z) / F : 필터의 크기 / S : stride의 크기

Feature map :

같은 필터들을 사용하여 전체 뉴런의 층은 필터와 유사한 이미지의 영역을 강조하는 맵을 만들게 되는데 이것이 Feature map이다.

Pooling Layer :

파라미터 수를 줄이기 위해 입력 이미지의 Subsample을 만드는 것이다. 입력 이미지의 크기를 줄이면 이미지가 약간 이동해도 신경망이 영향을 덜 받는다 (location invariance)
Pooling은 Max-pooling / Average-pooling 을 주로 사용한다.

LRN(local response normalization) :

이 정규화는 가장 강하게 활성화된 뉴런이 다른 feature map에 있는 같은 위치의 뉴런을 억제하는 형태이다. 즉, feature map을 각기 특별하게 구분하고, 더 넓을 시각에서 볼 수 있게 된다.

AlexNet :

LRN을 사용한다. 합성곱과 max-pooling으로 이루어져있다. 모델의 규제를 위해 Dropout & Data Augmentation을 이용했다.

GoogLeNet :

인셉션 모듈을 사용하여 훨씬 효과적으로 파라미터를 사용한다. 입력을 여러개로 분산 입력하여 계산한 후, 깊이를 기준으로 Concat한다. 여기서 1X1층은 병목층의 역할을 하며 3X3, 5X5이전에 적용하여 연산 비용을 줄일 수 있다.
즉, 여러 크기의 복잡한 패턴이 담긴 feature map을 출력하는 형태이다.

ResNet :

네트워크를 Skip Connection을 이용하여 훈련시킨다.
기존의 h(x)를 학습하는 대신에 F(x)=h(x)x h(x)를 근사시켜서 학습한다. ResNet에 대한 자세한 내용은 다음 링크를 확인하길 바란다.

ResNet 논문설명

한 번 읽어보는 것이 더 도움이 될 것 같다!

728x90
반응형