[DL Basic] 04. Convolution은 무엇인가?

Angie·2022년 2월 10일
0

부스트캠프 AI Tech

목록 보기
9/11
post-thumbnail

Convolution

  • signal processing에서 두개의 함수 f, g가 있을 때, 두개의 함수를 잘 섞어주는 방법
  • Continuous convolution
  • Discrete convolution
  • 2D image convolution
    • II: 전체 이미지 공간

    • KK: 우리가 적용하고자 하는 컨볼루션 filter


  • 2D convolution in action
    • 적용하고자 하는 filter의 모양에 따라 같은 이미지에 대해 다른 출력

RGB image convolution

  • depth 방향으로 R, G, B의 3 channel

  • image가 들어가서 여러개의 channel을 갖는 convolutional feature map이 나오게 됨
    • feature map의 channel 숫자는 convolution filter가 여러개 있다고 보는것

Stack of Convolutions

  • 컨볼루션을 여러번 진행
    • 32x32x3 짜리 이미지가 들어가서 5x5x3 convolution을 했는데 다음 convolution할 feature map이 28x28x4짜리가 나오려면 4개의 5x5x3 필터가 필요
      • parameter의 수5x5x3x4가 됨
    • 이렇게 해서 나오는 convolutional feature map의 각 element 별로 activation fuction 통과

Convolutional Neural Networks

  • CNN consists of convolution layer, pooling layer, and fully connected layer.
    • Convolution and pooling layers: feature extraction
    • Fully connected layer: decision making (e.g., classification)
      - 최근에는 FC가 점점 없어지거나 최소화되는 추세
      - 파라미터 숫자에 dependent함 → but parameter 숫자를 줄이는게 추세임

Convolution Arithmetic (of GoogLeNet)

Stride

  • 얼마나 dense/sparse하게 옮길껀데

Padding

  • boundary 정보가 버려지는 것 방지

Stride & Padding

Convolution Arithmetic

  • 파라미터 개수 계산해보기

1 x 1 Convolution

  • 1*1: 이미지에서 한 픽셀만 보는 것, 채널 방향으로 줄임
    • Dimension reduction
      • channel을 줄임
    • To reduce the number of parameters while increasing the depth
      • e.g., bottleneck architecture
      • 뉴럴 네트워크를 깊게 쌓는데 parameter의 수를 줄일 수 있음
profile
Hi there 👋

0개의 댓글