본문 바로가기
Computer vision

[Computer vision] 컨볼루션 Convolution이란?

by @__100.s 2021. 9. 23.
반응형

Convolution 이란?

  • 합성곱(合成-), 또는 컨볼루션(convolution)은 하나의 함수와 또 다른 함수를 반전 이동한 값을 곱한 다음, 구간에 대해 적분하여 새로운 함수를 구하는 수학 연산자이다.
  • 두 개의 함수 f와 g가 있을 때, 두 함수의 합성곱을 수학 기호로는 다음과 같이 표시한다.

  • 합성곱 연산은 두 함수 f, g 가운데 하나의 함수를 반전(reverse), 전이(shift)시킨 다음, 다른 하나의 함수와 곱한 결과를 적분하는 것을 의미한다.

    → 처음 발생한 신호끼리 먼저 만나게 하기 위해 입력을 반전시켜야한다. 입력을 반전시키지 않으면 시간적으로 반대로 된 신호가 나온다.

연속 컨볼루션 Continuous Convolution

  • Signal and System 관점에서 두개의 신호 f_1(t)와 f_2(t)로 부터convolution은 아래와 같이 정의

  • Step 1 : 두 함수 중 하나를 선택해 τ축에 대해 반전(time-invert) 시킨다.

  • Step 2: t를 더한 후, 음의 무한대에서부터 양의 무한대까지 선택한 함수를 이동시키면서 두 함수의 곱의 적분 값을 찾는다.
  • t<0 값은 겹치는 부분이 없으므로 0이 된다.

 

 

  • 0 < t < 1 /  1 < t < 3 /  3 < t < 4
  • 이 결과를 파형으로 표시한 것이 바로 두 함수의 합성곱이다.

 

이산 컨볼루션 Discrete Convolution

  • 신호 및 시스템에서의 Convolution
    • 미분 가능하지 않은 함수를 미분 가능하게 만들어줌
    • 다양한 형태의 값을 활용한 필터로 활용
      • 영상처리 및 컴퓨터 비전에서 이를 통해서 특징을 강조하거나 잡음을 제거하기 위한 하나의 수단으로 활용할 수 있지 않을까? 하는 생각으로 적용하게 됨.

합성곱 신경망 Convolutional Neural Network

  • 합성곱 Convolution
    • 픽셀의 주변 값들을 보고 영역이 어떤 특징을 가지고 있는 지를 찾기 위한 과정
    • 계층적 구조 (주변 여러 값들이 하나의 값으로 수렴)
    • 필터의 각 셀의 파라미터화
      • 각 layer에서는 여러 필터를 공유
      • Kernel=Filter=Weight=Feature matrix = Feature Map = Activation Map = Parameters to be trained

  • Padding ) output size 보존을 위한 방법 / Stride ) 필터가 이동하는 보폭

  • Pooling (MaxPool)

참고

반응형