본문 바로가기
머신러닝/딥러닝

딥러닝 하이퍼파라미터 2 - 풀링층, Pooling

by ADELA_J 2023. 8. 1.

- 1탄에 이어서 2탄,,, 여기서는 풀링층..!

https://dev-adela.tistory.com/196

 


<pool_size(풀링층)>

- 풀링층의 poolo_size 파라미터는 풀링의 거칠기를 지정하는 파라미터. 

- 크게하면 위치에 대한 견고성(강건성, robustness)이 상승(이미지내 개체의 위치가 변화해도 출력 안변하는것)

  > 기본적으로 pool_size는 2*2가 좋다고 알려져는 있음. 

- 2차원 데이터의 세로 및 가로 방향의 공간을 줄이는 연산

- 최대풀링(최대값 불러오는거) , 평균 풀링(평균값하는거) 있음. 

출처 : https://sonsnotation.blogspot.com/2020/11/7-convolutional-neural-networkcnn.html

 

 

<strides 풀링층>

- 합성곱의 strides 파라미터와 마찬가지로 특징 맵을 풀링하는 간격을 지정

▼ 위의 코드에서 풀링함수에 strides를 추가하고 층 add 할때 값을 추가해줌

<<<원본 이미지는 같고>>>>

◀ 합성곱한 이미지 ▲ (2,2) 풀링층으로 (1,1) 간격(strides)를 해준것  ▶ (3,3)풀링층으로 (2,2) 간격해준것

 

<padding 풀링층>

- 합성곱층과 마찬가지로 풀링층의 padding 파라미터는 패딩 방식을 지정한다. 

- Keras의 MaxPooling2D에서는 padding=vaild(패딩은 수행되지 않음), padding=same(출력되는 특정맵이 입력 크기와 일치하도록 입력에 패딩 수행) 이라는 파라미터가 있음.

 

▼ 위의 코드에서 풀링함수에 padding 추가하고 층 add할때 값을 추가해줌

<< 원본이미지 같음>>>

◀ 합성곱한거 ▲ 풀링층(2,2) 간격(1,1) 패딩(0,0) ▶ 풀링(2,2) 간격(2,2) 패딩(1,1)