4. Padding

2023. 9. 15. 11:10Google ML Bootcamp/4. Convolutional Neural Networks

Padding을 사용하지 않을 때 기존의 Convolution 연산의 문제점

1. Shrink output

- 즉 convolution 결과로 나오는 이미지의 크기는 (input size - filter size +1) 이다.

2. throw away information from edge.

- 모서리에 있는 pixel 은 convolution연산 시 한번밖에 사용되지 않기 때문.

- 이미지 가운데에 위치한 pixel은 convolution연산 시 여러번 사용된다.

 

따라서 padding기법을 사용.

- 기존 이미지의 크기를 키운 후 convolution을 적용하여 output image size를 변함없도록 조정.

filter 크기에 따라 padding 크기도 다르게 할 수 있다.

 

valid convolution : no padding

same convolution : pad so that output size is the same as the input size

- output shape : (n+2p-f+1) 

- n은 input, p는 padding, f는 filter.

- n+2p-f+1 = n 식을 계산해보면 p = (f-1) / 2

- f는 홀수여야 padding이 딱맞아떨어진다. 

'Google ML Bootcamp > 4. Convolutional Neural Networks' 카테고리의 다른 글

6. Convolutions Over Volume  (0) 2023.09.15
5. Strided Convolutions  (0) 2023.09.15
3. More Edge Detection  (0) 2023.09.15
2. Edge Detection Example  (0) 2023.09.15
1. Computer Vision  (0) 2023.09.15