대표적인 컨볼루션 신경망 모델

·2021년 11월 27일
0

인공지능

목록 보기
18/20

LeNet 모델

  • 5 계층 구조: Conv-Pool-Conv-Pool-Conv-FC-FC
  • 입력 : 32x32 필기체 숫자 영상
  • 풀링 : 가중치x(2x2블록의 합)+편차항
  • 시그모이드 활성화 함수 사용
  • 성능 : 오차율 0.95%(정확도: 99.05%)

AlexNet 모델

상위-5 오류율 : 16.43%

  • 8계층 구조
  • ReLU 함수를 사용한 첫 모델
  • FC 층에 드롭아웃 기법 사용
  • 최대값 풀링 사용
  • Norm : 국소 반응 정규화 연산 층
    • 인접한 여러 층의 출력값들을 이용하여 출력값 조정
  • 마지막층
    • 완전연결층
    • 소프트맥스 사용
    • 1000개의 부류를 나타내기 위해 1000개의 노드

VGGNet 모델

  • VGG-16 모델(16개 층)
  • VGG-19 모델(19개 층)
  • 단순한 구조
  • 모든 층에서 3x3 필터 사용
  • 3x3 필터 2회 적용 -> 5x5 필터 적용 효과
  • 3x3 필터 3회 적용 -> 7x7 필터 적용 효과

GoogleNet 모델

  • 22개 층의 구조
  • 인셉션 모듈
    • 직전 츠의 처리결과에 여러개의 컨볼루션을 적용
    • 이들 크기의 수용장에 이쓴 특징들을 동시에 추출
  • 1x1 컨볼루션
    • 동일한 위치의 특징지도의 값을 필터의 가중치와 선형결합
    • 1x1 컨볼루션 필터의 개수를 조정하여 출력되는 특징지도의 개수를 조정
  • 마지막 계층: 소프트맥스
    • 22개 층 모델이지만, AlexNet 모델에 비해 가중치 개수는 10%이내
  • 기울기 소멸 문제 완화 장치
    • 4번째, 7번째 계층에 보조 분류기 추가
    • 보조 분류기를 통해 그레디언트 정보 제공

ResNet 모델

  • 152개 층의 모델
  • 다수의 층 사용
    • 상위 게층에서 의미있는 특징 추출 가능
    • 다수 계층 사용시 기울기 소멸 문제 발생
  • 잔차 모듈(residual module)

    - 지름길 연결
    - 항등 사상
    - 잔차 모듈 F(x)의 학습
  • 잔차 모듈의 특징
    • 기대하는 출력과 유사한 입력이 들어오면 영벡터에 가까운 값을 학습
      -> 입력의 작은 변화에 민감 -> 잔차 학습
    • 다양한 경로를 통해 복합적인 특징 추출
      • 필요한 출력이 얻어지면 컨볼루션 층을 건너뛸 수 있음
      • 다양한 조합의 특징 추출 가능

DenseNet 모델

  • 각 층은 모든 앞 단계에서 올 수 있는 지름길 연결 구성
  • 노드의 연산: HiH_i
    • 배치 정규화(BN)-ReLU-(3x3 컨볼루션)
    • 각 층은 입력 특징지도와 같은 차원의 특징지도 생성
    • 병목층
      • 1x1 컨볼루션
      • 출력되는 특징지도의 채널 수 축소
    • 병목층이 있는 층
      • BN-ReLU-(1x1 컨볼루션)-BN-ReLU-(3x3 컨볼루션)
  • 특징지도의 크기를 줄이기 위해 풀링 연산 적용 필요
  • 밀집 블록과 전이층으로 구성
    • 전이층 : 1x1 컨볼루션과 평균값 풀링으로 구성

DPN(Dual Path Network) 모델

  • ResNet과 DenseNet을 결합한 모델
  • ResNet
    • 이전 단계의 동일한 특징 정보가 각 단계에 전달되어 이들 특징을 재사용하도록 하는 경향
    • 상대적으로 이전 단계의 특징들로부터 새로운 특징을 만드는 것에는 소극적
  • DenseNet
    • 새로운 특징이 추출될 가능성이 높음
    • 이전에 추출된 특징이 다시 추출될 가능성도 높음
  • 마이크로 블록에서 DenseNet과 ResNet의 특징 결합

딥러닝 신경망의 전이 학습

전이학습

  • 큰 규모의 딥러닝 신경망을 학습시킬 때는, 많은 학습 데이터와 상당한 학습 시간이 필요
  • 대규모 영상 데이터베이스인 ImageNet 데이터를 학습한 여러 컨볼루션 신경망 모델 공개
  • 공개된 모델을 가져다가 누구나 자신의 문제에 적용해 볼 수도 있고, 모델의 일부 활용 가능
  • 학습된 컨볼루션 신경망의 컨볼루션 층들을 가져오고 뒤 단계에서 분류하는 다층 퍼셉트론 모델을 붙여서 학습
profile

0개의 댓글