Basic CNN
RGB Image Convolution
- output의 channel은 filter의 개수
- input channel과 filter channel은 동일해야 함
Convolution & Pooling layers
Fully Connected layer
- decision making (e.g. classification)
- 최근들어 fc layer를 없애거나 줄이는 추세
- parameter 수를 줄이기 위해
Padding
- input과 output의 dimension size를 맞춰줄 때 사용
Number of parameters
- Padding(1), Stride(1) 이므로 output의 W, H의 크기는 변하지 않는다.
- filter의 shape은 (128, 3, 3), 개수는 64이므로 33128*64
- fully connected layer의 파라미터 수는 input dimension * output dimension
- convolution layer와 비교해 훨씬 많은 parameter가 필요하다.
1×1 Convolution
- dimension reduction (channel dimension)
- convolution layer를 깊게 쌓으면서 parameter 수를 줄이기 위해 사용
Modern CNN
Network parameter 숫자, depth에 focus
- 뒤로 갈수록 depth는 깊어지며 parameter 수는 줄고, 성능은 오른다.
ILSVRC (ImageNet Large-Scale Visual Recognition Challenge)
- image classification, detection, localization, segmentation 대회
- 2015년부터 사람보다 네트워크 성능이 좋아짐
Networks
1. AlexNet
- 두 GPU에 Network를 나눠서 input
- 총 depth는 8
key ideas
- ReLU activation
- linear model의 좋은 점을 갖고 있음
- 최적화하기 쉬움
- 기울기 소실 문제 극복
- 2 GPUs
- Overlapping Pooling
- Data Augmentation
- Dropout
2. VGGNet
- layer depth가 16개면 VGG16, 19개면 VGG19
3×3 convolution
- 같은 output 결과를 얻음에도 3×3 convolution이 5×5 convolution보다 parameter가 적음
3. GoogleNet
- NiN(network-in-network) 구조
- Inception blocks
- 1×1 convolution layer를 활용해 parameter 수를 줄임
- 같은 receptive field임에도 parameter 수를 줄일 수 있음
4. ResNet
- 보통은 parameter수가 많으면 overfitting이 발생
- 위 case는 overfitting은 아니지만 network가 커지면서 학습을 못 시키는 case
- residual connection(identity map)
- input x와 output f(x)의 dimesion shape이 맞아야 함
- shape match를 위해 1×1 convolution 사용
Bottleneck architecture
- 3×3 convolution을 하기 전, 후로 1×1 convolution을 통해 channel을 맞춰 주면서 parameter 수를 줄임
5. DenseNet
ResNet과 달리 input과 output을 concatenate 시킴
- Dense Block
- feature map을 기하급수적으로 계속 키움
- Transition Block
- 1×1 convolution을 통해 차원 축소
→ Dense Block과 Transition Block을 반복적으로 사용
Summary
- VGG : repeated 3×3 blocks
- GoogleNet : 1×1 convolution to reduce dimension
- ResNet : skip connection
- DenseNet : concatenation
※ 모든 이미지의 출처는 네이버 커넥트재단 부스트캠프 AI Tech 5기입니다. ※