GoogLeNet

2025. 10. 27. 00:40·ML&DL/논문리뷰

1. Introduction

  • GoogLeNet은 AlexNet보다 12배 적은 파라미터를 사용하면서 더 높은 정확도 달성
  • 성능 향상은 딥러닝과 전통적 CV(R-CNN)의 결합에서 옴
  • 모바일·임베디드 환경을 고려해, 효율성도 고려
  • Inception 아키텍처:
    • 이름은 Network in Network + “We need to go deeper” 밈에서 유래
    • Deep은 (1) 새로운 모듈 구조(Inception module) 도입, (2) 네트워크 깊이 증가 두 가지 의미
  • ILSVRC 2014 classification & detection에서 기존 SOTA를 크게 능가

2. Related Work

  • 기본 CNN은 Conv layer(normalization, pooling) + fully-connected layer의 구조를 널리 사용함
  • 이러한 기본 구조에서 layer 수(depth), layer 크기(width)를 증가시키거나, dropout으로 overfitting 완화시켜 성공적으로 활용됨
  • Serre et al.은 고정된 Gabor filter로 multi-scale 처리했는데, Inception은 이를 확장함. filter도 학습 가능하다는 점이 차별점
  • Network-in-Network는 1×1 Conv + ReLU 추가로 dimension reduction, 계산 병목을 제거해옴 → Inception에서 이 접근이 핵심적으로 사용됨.
  • R-CNN은 object proposal를 잘라 CNN으로 분류하는 방식으로, GoogLeNet detection에서는 이를 확장: multi-box prediction, ensemble로 성능 향상

3. Motivation and High Level Considerations

  • 모델 성능 개선의 단순한 방법: depth(깊이), width(폭) 증가.
    • 단점:
      1. Overfitting 위험 (파라미터 증가, 데이터셋이 제한적일 시 병목)
      2. 계산량 급증 (Conv layer filter 수를 늘리면 연산량이 제곱 비율로 증가, 대부분의 weight가 거의 0에 가깝게 학습된다면 연산량 낭비)
  • 해결 방향 → fully connected 구조 대신 sparse 연결 구조.
    • Arora et al.에서 “각 layer의 activation 상관관계를 분석하고, 강하게 연관된 뉴런들을 클러스터링하여 다음 layer를 구성”하는 방법 제시
  • 하지만, 현재 하드웨어는 sparse 구조 연산에 비효율적
    • Dense matrix 연산은 GPU/CPU에서 매우 빠름 → 실제로는 dense 구조가 더 유리
  • Inception
    • Sparse 구조를 dense 연산으로 근사
    • 여러 filter를 병렬로 두어 multi-scale 특징 추출
    • localization과 detection에서 좋은 성능을 보임
  • Inception의 성공이 이론적 원리 때문인지 우연인지는 불확실, 하지만 후속 연구 방향에 큰 동기 부여

4. Architectural Details

  • 1×1, 3×3, 5×5 Conv + pooling을 병렬로 적용한 후, 결과를 concatenate하여 다음 layer로 전달
  • 그러나 5×5 Conv나 pooling 출력이 많으면 연산량이 급증
  • 그리해 1×1 Conv를 사용해 차원을 줄인 후 3×3, 5×5 Conv 적용, 이로 연산량 절감 및ReLU 비선형성 추가

  • Inception module들을 반복적으로 쌓고, 중간에 stride=2의 max-pooling으로 feature map 크기를 절반으로 줄임.
  • 메모리 효율성을 위해, 낮은 layer는 전통적인 Conv를 높은 layer부터 Inception module을 사용
  • 장점:
    • 계산량 급증 없이 depth와 width 확장 가능.
    • multi-scale 정보를 동시 처리할 수 있음
    • 자원 효율적 사용으로, 동일 성능 대비 2~3배 빠른 네트워크 설계 가능

5. GoogLeNet

  • Inception 아키텍처의 가장 성공적인 구현체, ILSVRC14에서 사용
  • 총 22-layer(파라미터가 있는 layer 기준), pooling 포함하면 27-layer.
  • 모든 Conv + Inception module에 ReLU 활성화 함수 사용
  • 마지막 classifier 전에 average pooling 사용으로, FC 대체. 파라미터 절감 및 fine-tuning 용이. FC 제거 후에도 dropout은 필수적으로 포함
  • 효율성
    • 계산량과 메모리 footprint를 줄여 모바일/제한된 환경에서도 실행 가능.
    • average pooling 채택 시 top-1 정확도 +0.6% 향상.
  • Auxiliary classifier
    • Inception (4a), (4d) 출력 위에 작은 classifier 추가해 gradient 전파 강화, 중간 feature의 구분력 향상, regularization 효과 적용
    • 학습 시 loss에 0.3 가중치로 반영, 추론 시 제거
      • 5×5 average pooling (stride=3), 출력 크기 4×4×512 (stage 4a), 4×4×528 (stage 4d)
      • 1×1 Conv, filter 128개, ReLU
      • fully-connected layer, 1024 유닛, ReLU
      • Dropout layer, 70% drop ratio
      • linear layer + softmax classifier (1000 class 예측, main classifier와 동일)구조

6. Training Methodology

  • DistBelief 분산 학습 시스템 사용, CPU 기반이었으나 GPU로도 약 1주일 내 수렴 가능
  • asynchronous SGD + momentum 0.9, 학습률은 8 epoch마다 4% 감소, 최종 모델은 Polyak averaging으로 생성
  • 일부 모델은 작은 crop 중심, 일부는 큰 crop 중심으로 학습하여 ensemble에 다양성 확보
  • 이미지의 8%~100% 크기로 다양하게 샘플링, aspect ratio는 3/4~4/3 범위 랜덤 선택
  • photometric distortion 적용, resize 시에는 bilinear/area/nearest neighbor/cubic interpolation을 무작위로 적용

7. ILSVRC 2014 Classification Challenge

  • 이미지 분류, 평가 지표는 top-1 정확도와 top-5 오류율
  • 동일 GoogLeNet 아키텍처로 7개 모델을 학습해 ensemble
  • 더 다양한 cropping 전략 사용, scale 4단계 × 좌/중앙/우 crop 3개 × 4모서리+중앙 crop 6개 × 반전 2개 = 144 crop/이미지
  • softmax 확률을 평균해 최종 예측
  • 최종 제출 결과 top-5 오류율 6.67%로 1위 달성
  • 외부 데이터 미사용
  • 모델 수와 crop 수를 늘리면 성능이 향상하지만, 일정 수준 이상에서는 향상 폭이 줄어듦

8. ILSVRC 2014 Detection Challenge

  • 이미지에서 객체의 bounding box 예측하고 어디에 속하는지 맞추는 것, 성능 지표는 mAP(mean average precision)
  • GoogLeNet 접근
    • R-CNN 파이프라인 기반, 단 region classifier로 Inception 모델 사용
    • Region proposal 개선:
      • Selective Search + multi-box prediction 결합
      • superpixel 크기 2배 → proposal 수 절반으로 감소
      • multi-box에서 200개 region proposal 추가
    • Classification 단계:
      • proposal 분류에 6개 ConvNet ensemble 사용
    • 시간부족으로 bounding box regression은 사용하지 않음
  • 2013년 대비 정확도 거의 2배 향상, GoogLeNet: mAP 43.9%로 1위, 단일 모델 성능: 38.0% (ensemble로 43.9%)

9. Conclusions

  • Inception 아키텍처는 sparse 구조를 dense 블록으로 근사하여 성능을 크게 향상시킴
  • 얕거나 좁은 네트워크와 비교했을 때, 계산량의 큰 증가 없이 품질을 크게 향상시킴
  • Detection에서도 context나 bounding box regression 없이도 경쟁력 있는 성능

'ML&DL > 논문리뷰' 카테고리의 다른 글

BLIP  (0) 2025.11.03
CLIP  (0) 2025.11.03
YOLO  (0) 2025.10.27
VGGNet  (0) 2025.10.27
AlexNet  (0) 2025.10.27
'ML&DL/논문리뷰' 카테고리의 다른 글
  • CLIP
  • YOLO
  • VGGNet
  • AlexNet
minyoy
minyoy
  • minyoy
    MINYOY
    minyoy
  • 전체
    오늘
    어제
    • 분류 전체보기 (17)
      • ML&DL (16)
        • 논문리뷰 (16)
      • 알고리즘 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
minyoy
GoogLeNet
상단으로

티스토리툴바