패딩을 이용해 입력데이터를 특정값으로 감쌀수있다 주로 0을 이용한다고 한다
패딩을 사용하는 이유는 세가지가 있다
첫번째는 출력크기의 감소를 막기위해서이다
예를들어 (4,4) 입력데이터에 (3,3) 필터를 적용하면 출력은 (2,2)가 되어 입력보다 2만큼 줄어든다
이는 합성곱 연산을 몇번이나 되풀이하는 심층 신경망에서는 문제가 될 수 있다
위 그림과 같이 패딩의 폭을 1로 설정하니 (4,4)입력에 대한 출력이 같은 크기인 (4,4)로 유지되어 입력 데이터의 공간적 크기를 고정한 채로 다음 계층에 전달할 수 있다
두번째는
외각을 0값으로 둘러싸는 특징으로부터 인공 신경망이 이미지의 외각을 인식하는 학습효과가 있다는 것이다
세번째는
가장자리로 갈수록 연산에 이용되는 횟수가 떨어지는 문제점을 어느정도 해결해준다는것이다
아래는 7*7입력이미지에서 3*3 커널을 사용할시 각 항목당 연산횟수를 나타낸것이다
물론 default값을 적용했을때 padding을 사용하지않는것을보면 무조건 padding을 썼을때 좋은것은 아닌것같다
출처
'공부 정리 > 딥러닝' 카테고리의 다른 글
[딥러닝2]신경망의 순전파 (0) | 2024.01.08 |
---|---|
[딥러닝1]퍼셉트론 (0) | 2023.12.26 |
Pooling 레이어의 이해 (0) | 2023.02.21 |
합성곱 연산(Convolution operation) 방법 (0) | 2023.02.21 |
합성곱 신경망의 필요성 (0) | 2023.02.21 |
댓글