GoogLeNet 소개
GoogLeNet은 2014년도 ILSVRC(ImageNet Large Scale Visual Recognition Challenge)에서 우승한 CNN 네크워크이다. GoogLeNet은 Inception이라는 개념의 네트워크 중 하나로, Inception-v1와 같은 모델이다.
GoogLeNet이란 이름이 붙은 이유는 구글이 알고리즘 개발에 참여했기 때문이다. 당시 참여 개발자들은 딥러닝 모델의 수치적인 성능 향상보다는 Convolution을 이용한 딥 러닝 네트워크 구조의 혁신에 집중하였다. 그 결과, Inception module이라는 네트워크 구조를 설계하였고, 이를 활용하여 AlexNet보다 더 깊지만 파라미터 수는 1/12인 GoogLeNet을 설계하였다.
GoogLeNet의 특징
가. Inception Module


- GoogLeNet은 9개의 Inception Module을 포함하고 있다.
- Inception Module은 다양한 종류의 특성을 도출하기 위해 다양한 사이즈의 필터 커널을 이용해 Convolution 해준다.
- 3 x 3 Max Pooling은 Convolution Feature Map들과 사이즈를 동일하게 하기 위해서 Padding을 사용한다.
- GoogLeNet은 Inception Module로 인해 늘어난 연산량을 줄이기 위해 1 x 1 Convolution을 추가한다.
나. 1 x 1 Convolution
- GoogLeNet에서 1 x 1 Convolution은 Feature Map의 갯수를 줄이는 데 사용한다.
- Feature Map의 갯수가 줄어들면 Convolution을 하는데 사용되는 연산량이 줄어든다.
GoogLeNet의 구조

가. Input Image
- 224 x 224 x 3 이미지를 입력으로 받는다.
나. Inception Module
- 총 9번의 Inception Module을 시행한다.
- 얕은 네트워크는 Inception Module을 사용해도 효과가 없음을 확인했기 때문에 Input Image와 가까운 부분은 단일 Convolution을 시행한다.
- Model 훈련중일 때 4번째와 7번째 Inception Module은 Auxiliary Classifier를 시행한다.
다. Final Layer(Fully Connected Layer)
- Global Average Pooling으로 Flatten 해준 후 1000개의 뉴런과 Fully Connected 해준다.
- 1000개 뉴런 출력값에 Softmax 함수를 적용하여 1000개 클래스 각각에 속할 확률을 나타낸다.
이론 학습에 참고한 블로그
[CNN Networks] 3. GoogLeNet
ILSVRC-2014에서 우승한 CNN Network인 GoogLeNet에 대한 내용입니다.
velog.io
'Personal Project > GoogLeNet 모델을 활용한 이미지 분류' 카테고리의 다른 글
03 프로젝트 진행 / 결과 & 고찰 / 결론 (0) | 2023.06.18 |
---|---|
01 프로젝트 소개 / 딥 러닝 모델 학습 과정 (0) | 2023.06.18 |
댓글