(ch.1) Image Classification - GoogLENet

2020. 12. 30. 22:43·머신러닝-딥러닝/study

" 망이 넓고, 깊을 수록 성능이 좋다." 

 

구글넷은 이 점을 지적했음

 

깊고 넓은 네트워크 정말 좋기만 해 ?

 

 

1. 학습 시키는데 오래걸린다. -> 연산량이 많고, 파라메터가 많다.

 

-파라메터 수를 어떻게 하면 줄일 수 있을까?

A : 1x1 conv, Tensor factorization

1x1 conv : 여러개의 입력 feature가 있을 때, 채널 방향으로 연산을 하여서 filter의 개수만큼 output이 생성되어서 width와 height는 변하지 않음에도 채널의 크기를 filter의 개수만큼 자유롭게 변화시킬 수 있다. 이를 통해 채널 수를 줄일 수 있다면 당연히 파라미터 수도 줄겠죠.

Tensor factorization : 행렬을 분해해 다른 행렬로 factorization 하는 경우

파라미터 개수 6 -> 9

 

-연산을 효율적으로 하려면 어떻게 해야할까?

A : matrix 연산이 dense 해야한다.

주로 CNN에서는 kernel을 stride만큼 옮겨가면서 닷프로덕트(?)를 하는 metrics연산이 제일 많은 비중을 차지한다.

이런 metrics 연산이 너무 sparse하게 된다면 연산의 효율성이 떨어져서 고성능 GPU로 빨리하기 위해서는 메트릭스 연산이 dense해야한다.

 

 

2. 학습이 어렵다 -> gradient vanishing, over fitting

 

- 깊은 layer까지 정보가 전달되려면 어떻게 해야할까?

A : auxiliary layer

auxiliary layer를 만들어서 얘가 오차나 label값을 알려줌

 

- Overfitting이 덜되는 general한 구조는 어떻게 만들어야 할까?

A : sparse한 convolution

메트릭스는 dense해야지 연산이 효율적인데,

오버피팅이 덜 되게 하려면 네트워크 자체는 sparse해야함.

 

 

 

3. Inception Module

 

Sparse convolution & dense metrics

subsampling - invarient한 특성을 얻음, convoultion - input feature의 detail한 특성을 뽑아내는데 유리

concatenation 미국식 [kənˌkætəˈneɪʃn] 영국식  (사물·사건의) 연속

-여기서 나온 모든 피쳐를 이어서 붙이는것, 하나의 metrics로 만듬

 

마지막에 concatenation을 통해 dense하게 함.. 1x1 Convolutions은 NIN 모델의 효과 (Non-linear)한 특성을 살릴 수 있음. 1x1은 dimesion을 reduction할 수 있음. 어떻게? 아까 스크롤 위로 올려봐.. 이러면 연산량을 줄일 수 있고, pooling에서는 채널은 줄어들지 않음

 

 

 

4. GoogLENet 구조

Alexnet 에 비해 parameter가 1/12로 줄음!!, 더 적은 연산량 + 더 높은 정밀도

 

'머신러닝-딥러닝 > study' 카테고리의 다른 글

[pytorch] 파이토치로 시작하는 Image Segmentation (1)  (0) 2021.12.16
1. 머신러닝,딥러닝 개요  (0) 2021.04.29
(ch.4) 자연어처리 - 단어를 숫자로 표현  (0) 2020.12.30
(ch.4) 자연어처리란? (Natural Language Processing)  (0) 2020.12.29
(ch.1) Image Classification - ZFNet, NIN  (0) 2020.12.28
'머신러닝-딥러닝/study' 카테고리의 다른 글
  • [pytorch] 파이토치로 시작하는 Image Segmentation (1)
  • 1. 머신러닝,딥러닝 개요
  • (ch.4) 자연어처리 - 단어를 숫자로 표현
  • (ch.4) 자연어처리란? (Natural Language Processing)
복복씨
복복씨
개발자여, 사고하라 !
  • 복복씨
    정리노트
    복복씨
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 개발새발자 (22)
        • 의 삶 (7)
        • 의 회고 (9)
        • 의 낙서장 (6)
        • 영어 (0)
      • Flutter (38)
        • 새싹 (5)
        • Dart (8)
        • Flutter (14)
        • iOS 에서 Flutter 로 전환하며 (2)
        • 챗지피티랑놀.기 (3)
        • 하루 한 입 플러터 (2)
      • CS (7)
        • 짤막지식 (6)
      • IOS (6)
        • Swift (0)
        • UIKit (1)
        • SwitUI (4)
      • 머신러닝-딥러닝 (28)
        • 논문리뷰 (3)
        • study (16)
        • Kaggle (9)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    새싹 용산
    새싹 플러터
    runzonedguarded
    플러터 새싹
    unawaited
    flutter 애니메이션
    유리과일
    IOS
    시그널링데이터
    swiftui 플러터
    깊은참조
    expando
    유리과일 자르기
    용산캠
    veo3
    멋쟁이 사자처럼
    새싹
    플러터
    핫 리로드
    플러터 di
    dart
    사그널링서버
    futurerecord2
    schedulemicrotask
    코드 결합도
    FLUTTER
    부트캠프
    getit
    ai asmr
    asmr 프롬프트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
복복씨
(ch.1) Image Classification - GoogLENet
상단으로

티스토리툴바