심층 학습

9. 합성곱 신경망

명징직조지훈 2023. 6. 11. 21:01

정해진 격자 형태로 배열된 자료를 처리하는 데 특화된 신경망이다. 

 

적어도 하나의 층에서 일반적인 행렬 곱셈 대신, 합성곱을 사요아는 신경망이면 그 어떤 것이든 합성곱 신경망이라고 할 수 있다. 

9.1 합성곱 연산

가장 일반적인 형태에서, 합성곱은 실숫값을 받는 두 함수에 관한 연산이다. 

 

레이저 감지기를 이용해서 우주선의 위치를 추적한다고 상상, 시간 t 에서의 우주선의 위치를 뜻하는 x(t) 를 출력, x 와 t 모두 실수, 

감지기가 부실해서 잡음이 섞인다고 가정, 우주선 위치 추정 값에서 잡음을 줄이는 방법은 측정한 여러 추정값의 평균을 위치 추정값으로 사용하는 것, 

 

최근의 측정값에 더 큰 가중치를 부여해서 가중 평균을 구한다. 

 

그러한 추정값을 정의하는 함수 s 는 두 함수를 특정한 방식으로 합성한 형태 

이런 식으로 두 함수를 합성하는 연산을 합성곱 이라고 부른다. 

일반적으로 합성곱 연산은 다음과 같이 별표로 표기한다.

w 는 유효한 확률밀도함수이어야 한다. 그렇지 않으면 출력은 유효한 가중 평균이 되지 않는다. 

또한, w 는 반드시 모든 음의 인수에 대해 0 이어야 한다. 그렇지 않으면 음의 인수에 대해 함순느 미래를 예측한 위치를 출력하게 되는데 그러한 예측은 우리의 능력을 벗어난 것, 

이러한 제약은 일반적으로 합성곱이 적분이 가능하기만 하면 어떤 함수들에 대해서도 정의할 수 있으며 가중 평균 이외의 목적에도 유용할 수 있다.

 

합성곱 신경망의 어법에서 합성곱은 첫 인수 (x) 를 입력이라고 부르고 둘째 인수 (w) 를 kernel 이라고 부를 때가 많다. 그리고 합성곱의 출력을 feature map 이라고 부르기도 한다.

 

일반적으로 우리는 컴퓨터에 있는 자료를 다루므로, 시간을 연속적인 값이 아니라 이산적인 값으로 취급하게 된다. 그런 환경에서 감지기는 일정 간격마다 자료를 제공할 것이다. 따라서, 지금 예에서는 레이저 감지기가 1초에 한 번씩 측정값을 제공한다고 가정, 그러면 시간 색인 t 는 정숫값만 가진다. 

이제 x 와 w 가 오직 정수 t 에 대해서만 정의된다고 가정하고, 이산적인 합성곱 연산을 정의할 수 있다.

일반적으로 기계 학습 응용에서는 입력이 다차원 배열 형태의 자료이고 핵이 학습 알고리즘으로 적응되는 매개변수들의 다차원 배열이다. 그러한 다차원 배열들을 텐서라고 부른다. 

입력과 kernel 의 각 성분을 반드시 따로 저장해야 하므로 명시적으로 저장된 일단의 점들을 제외한 거의 모든 점에서 이 함수들의 값이 0이라고 가정하는 것이 일반적이다. 그러한 가정에 따라 실제 응용에서는 무한합을 유한한 개수의 원소들로 이뤄진 배열에 관한 합으로 구현하게 된다.

 

마지막으로, 종종 합성곱을 한 번에 여러 축에 적용할 때가 많다. 예를 들어 2차원 이미지 I 를 입력으로 사용할 때는 다음과 같이 2차원 kernel K 를 적용하는 것이 바람직하다.

합성곱은 가환적, 교환법칙을 만족한다.

 

합성곱의 가환성은 입력을 기준으로 kernel 을 뒤집었기 때문에 생긴다는 것, 

m 이 증가함에 따라 입력에 대한 색인은 증가하지만 kernel 에 대한 색인을 감소하는 것을 말한다. 

 

가환성은 증명을 작성할 때는 유용하지만, 신경망 구현에서는 그리 중요한 성질이 아니다. 그래서 여러 신경망 라이브러리는 kernel 을 뒤집는 대신 상호상관 cross-correlation 이라고 부르는 관련 함수를 구현한다. 

 

이산 합성곱은 일부 성분들이 다른 성분들과 같아야 한다는 제약이 있는 행렬을 곱하는 연산에 해당한다.

예를 들어 단변량 이산 합성곱에서 행렬의 각 행은 반드시 그 위 행의 성분들을 한 자리 이동한 것과 같아야 한다. 그러한 조건을 만족하는 행렬을 퇴플리츠 행렬이라고 부른다.

2차원의 경우 이중 블록 순환 행렬 doubly block circulant matrix 이 합성곱에 해당한다. 

여러 성분이 서로 같아야 한다는 제약 외에, 일반적으로 합성곱은 아주 희소한 행렬에 해당한다. 이는 일반적으로 kernel 이 입력 이미지보다 훨씬 작기 때문이다.