본문 바로가기

DeepLearning

Why Convolutions ?

Convolution Layer 를 사용해야했던 이유를 다른 관점에서 보려고 한다.

( 이 글은 Andrew Ng 교수님의 CNN 강의의 학습에 의한 글입니다.)

 

1. Parameter Sharing

 

입력값으로 받아왔던 이미지에 대한 Conv filter 를 적용하면, 결과적으로 또 다른 파트에도 영향을 끼칠 수 있다는 점이다.

말로는 어렵기에 figure 를 사용하여 보겠다.

해당 이미지를 참고하면 filter 가 shift 하며 연산을 하는 동안 결과적으로 중첩되는 부분이 발생한다. 이 부분을 parameter sharing 이라고 말할 수 있을 것이다. 특정 이미지의 공간에서 중첩되는 부분에 대한 정보를 공유하는 구조라고 생각하면 괜찮을 것 같다.

2. Sparsity of Connections

각 Layer 에서 발생한 결과값은 Input 에서의 작은 값에 의존적이라는 것. 

표현이 어설플 수 있지만, filter 가 적용되어 돌고 있는 부분이 아닌 그 외의 부분은 연산에서 0이라고 생각할 수 있다. 

(대개, 이러한 행렬의 구조를 Sparse matrix 라고 한다.)

'DeepLearning' 카테고리의 다른 글

VGGNet  (0) 2021.12.23
AlexNet  (0) 2021.12.23
LeNet-5 (Basic CNN)  (0) 2021.12.23
Convolutional Neural Networks  (0) 2021.12.23
Neural Network - DeepLearning  (0) 2021.08.29