풀링연산이란?
CNN에서는 Stride, Padding을 통하여 정리된 데이터를 갖고 풀링연산을 실행한다.
풀링연산은 2*2 스트라이드와 2*2 윈도우 크기를 사용하여 특징맵 크기를 절반으로 줄이는 역할(down sampling)을 하는 연산방법이다.
풀링연산의 종류
1) 평균풀링(Average Pooling) : 평균값을 사용하는 연산
2) 최대풀링(Max Pooling) : 최대값을 사용하는 연산
1 2
6 7
Max Pooling --> 7
7 2
1 6
Max Pooling --> 7
풀링연산의 역할
1) 모델이 물체의 주요한 특징을 학습할 수 있도록 도와준다.
2) 컨볼루션 신경망이 이동불변성(translation or shift invariant) 특성을 갖도록 한다.
3) 모델의 파라미터 수를 줄여주어, 계산속도 향상 및 과대적합 문제에 노출될 위험을 줄여준다.
자주 사용하는 풀링방법
일반적으로 평균풀링보다는 최대풀링방법을 사용한다. 어떤 물체의 존재 여부를 알기 위해서는 가장 명확한 특징값을 사용하여 학습하는 것이 좋다고 알려져 있기 때문이다.
최대풀링층을 사용하는 것으 추천방안
최대풀링층이 강한 특징값을 뽑아냄과 동시에 특징맵의 크기를 줄여 다운샘플링을 해주기 때문에 컨볼루션층에서는 가급적이면 정보를 보존하는 것이 좋다. 따라서 이를 위해서는 1*1 스트라이드 사용하는 것이 좋다.
댓글 없음:
댓글 쓰기