[TIL] day26

Hyebin·2022년 2월 14일
0

TIL

목록 보기
27/47

TIL

컨볼루션 신경망 사례연구

  • AlexNet
  • VGGNet
  • GoogLeNet
  • ResNet

AlexNet

컨볼루션층 5개와 완전연결층 3개
테스트 단계에서 앙상블 적용

내부적 성공요인

  • 활성함수로 ReLU 사용
  • 지역 반응 정규화 기법 적용
    • 지역 반응 정규화 (local response normalization)
      : 위치가 비슷한것들끼리의 평균값이나 이런 정규화 과정을 통해서 값들을 조절

    • 배치 정규화 (batch normalization)
      : 학습 파라미터가 있어서 정규화를 배치단위로 차이가 나는 편지를 맞춰주기위해서 사용

      👉 LRN은 단순하게 연산에 의해서 나오는데, BN은 학습에의해서 결정되는 파라미터에의해서 batch들 간의 정규화 과정을 통해서 성능을 끌어올린다.

  • 과잉적합 방지하는 여러 규제 기법 적용
    • 데이터 확대
    • 드롭아웃

VGGNet

핵심 아이디어

  • 3*3 작은 커널 사용
  • 신경망을 더 깊게 만듦
  • AlexNet의 5개에 비해 2~3배 깊어짐
    👉 16층짜리 VGG-16(conv 13 + fc 3)

작은 커널의 이점?

  • VGG 이후 깊은 신경망 구조에 영향을 줌
  • 층도 깊어지며 파라미터들도 훨씬더 줄어듦
  • 큰 크기의 커널은 여러 개의 작은 크기 커널로 분해될 수 있음

1*1 커널

NIN(network in network) 에서 유래 (GoogLeNet에서 사용됨)

  • 차원 통합
  • 차원 축소 효과 (통합을 통해서 연산의 양을 감소시킬때 사용한다고 생각하기)

GoogLeNet

핵심 아이디어

인셉션 모듈 (inception module)

수용장의 다양한 특징을 추출하기 위해 NIN 구조를 확장하여 복수의 병렬적인 컨볼루션 층을 가짐
*수용장: 입력을 얼마만큼 patch

마이크로 네트워크로 Mlpconv 대신 4종류의 컨볼루션 연산 사용
-> 다양한 특징 추출

👉인셉션 모듈을 9개 결합

  • 매개변수가 있는 층 22개, 풀링층 5개
  • 완전연결층은 1개
  • 보조 분류기
    : 경사 소멸 문제 완화
    : 학습할 때 도우미 역할을하고 추론할 때 제거됨

ResNet

잔류(잔차) 학습이라는 개념을 이용하여 성능 저하를 피하면서 층 수를 대폭 늘림
(원래의 컨볼루션 신경망은 최적화가 제대로 이루어지지 않음)

잔류 학습은 지름길 연결된 xx를 더한 F(x)+xF(x) + xτ\tau를 적용 (F(x)F(x)는 잔류)
y=τ(F(x)+x)y = \tau(F(x)+x)

지름길 연결을 두는 이유는?

  • 깊은 신경망도 최적화가 가능
    단순 구조의 변경으로 매개변수 수에 영향이 없음
    덧셈 연산만 증가하므로 전체 연산량 증가도 미비
  • 경사 소멸 문제 해결

VGGNet과 같은점

3*3 커널 사용

VGGNet과 다른점

  • 잔류 학습 사용
  • 전역 평균 풀링 사용 (FC 층 제거)
  • 배치 정규화 적용 (드롭아웃 적용 불필요)

수학 너무 ㅇㅓ렵다........⭐ (눙물

profile
공부중입니다 :D

0개의 댓글

관련 채용 정보