Convolutional Neural Network

image-center

기존 신경망과 CNN의 Parameter 수 비교

  • 기존은 입력 이미지가 Parameter 크기에 직접 영향을 미쳤으나, CNN은 훨씬 작은 Kernel 크기가 영향을 준다.
    단, 은닉층의 갯수에 의한 비례 증가는 동일.

image-center

Feature Map 크기

image-center

Channel 수

  • k 개 Channel의 Input에는 k Channel의 1개 Kernel이 필요하고, Output인 Feature mape은 1개의 Channel을 가진다. image-center

따라서 Feature Map의 Channel 수는 Kernel 갯수로 결정된다. image-center

image-center

Pooling

  • 특성 맵을 다운샘플링하여 특성 맵의 크기를 줄이는 연산 image-center

  • Pooling 연산에도 Kernel과 Stride가 필요하나, 학습해야하는 가중치가 없고, Channel 수가 유지됨.
  • Pooling에는 위 그림처럼 최대값을 추출하는 max pooling과 평균값을 추출하는 average pooling이 있음.

Subsampling (downsampling)

image-center

  • Convolutional 층과 subsample 층 교대로 반복됨. image-center

  • Input Image에 Convolution 과정을 수행하는 것은 단지 수치적 연산이다.
    이 numerical result에 Pooling을 하는 것은 특성 추출 과정인데, linear Model과 Activation Function을 통해 확률값(probabilities)으로 변환한 것이 바로 subsample이다.
    따라서 Convolution 층은 numerical matrices인 반면, Subsample은 항상 featured pictures이다.