Inception Nets
Going deeper with convolutions
Problem
- 어떤 커널 사이즈를 적절히 선택해야 하나?
- overfitting 의 문제
- deeper networks의 문제이다.
Solutions
- 다른 사이즈의 커널을 여러 개 사용하자
- Auxiliary classifiers
Inception model
다음과 같이 Inception 모델을 사용한다.
나이브한 버전을 사용하면 계산 비용이 크다.
- 채널의 수가 많으면 배로 늘어남
1 x 1 convolutions 를 이용해서 채널을 낮춰 사용한다.
풀링 층도 사용한다.
- 성능이 좋았다고 한다.
- 1 x 1로 채널 수를 맞춰준다.
Architecture
입력으로는 224x224 크기의 RGB 채널을 이용한다.
depth는 convolution 층의 개수를 말한다.
reduce가 붙은 것은 채널을 낮춘다는 의미이다.
처음 Inception(3a)를 보면 output의 채널이 256이다.
- 이는 64 + 128 + 32 + 32 의 합이다.
- 즉 채널을 쌓는 방식이다.
그림으로 나타내면 다음과 같다.
Inception-V1 ~ V4
- 버전이 많다.
- Inception-v1 / googLeNet
- Inception-v2 / BN-Inception
- Inception-v3 / Factorization in convolution
- Inception-v4 / Inception-v4 + ResNet