AI

CNN

mihee 2022. 4. 26. 12:01

CNN (Convolution Neural Networks)

  • 이미지 처리에 특화된 네트워크

convolution

  • Convolutional matrix (3X3, 5X5)
  • 입력 이미지의 기하학적인 정보들을 커널 연산으로 정보를 추출

stride

  • convolution kernel이 sliding window 방식으로 갈때 그 간격
    • 커질수록 연산량이 줄어듬.

padding

  • boundary 외곽에 zero value를 넣어줌.

input 이미지를 인위적으로 늘려줌.

  • for문을 여러번 사용해 합성곱을 연산할 수 있음.(sliding window)
  • sliding window convolution 방식 -> 연산량이 효율적이지 않음. -> IM2COL & GEMM

  • GPU 연산에선 효율적임.(공간 복잡도는 늘어나나 시간 복잡도가 줄어듬)

 

Pooling

  • Resize the feature map
  • Reduce the resolution of feature map
  • [C,H,W] -> [C,H/2,W/2]

max pool : 눈에 띄는 엣지 부분, Average : 스무딩한 느낌의 output

 

Fully Connected Layer

해상도가 크면 연산량도 커짐.

 

Activation