풀링층은 보통 합성곱층의 바로 뒤에 배치된다. 풀링층을 구성하는 유닛은 복잡 세포를 모형화한 것으로, 합성곱층에서 추출한 자질의 위치 감도를 약간 저하시켜 대상이 되는 자질값의 이미지 내에서의 위치가 조금씩 변화하는 경우에도 풀링층의 출력이 변화하지 않도록 해준다.
시각 피질은 신경세포의 감수 영역 eeceptive field 의 국소성과 단순 세포 simple cell, 복잡 세포 complex cell 로 이뤄진다. 그리고 일반적으로는 감각기관으로부터 입력을 받는 신경세포에 대해서, 그 세포가 입력을 받는 감각기관상의 범위를 감수 영역이라고 부른다.
외부로부터 눈에 들어온 빛은 망막에서 전기적인 신호로 변환된 뒤, 뇌의 시각피질로 전달된다. 그곳에 있는 세포 중에는 망막의 특정 부분이 특정 패턴으로 입력되면 흥분하고, 그 외의 경우에는 흥분하지 않는 선택적인 행동을 보이는 세포가 있다.
특히, 망막으로부터 온 정보의 입구 역할을 하는 초기 시각 피질에 속한 신경세포에 이러한 선택적인 반응을 보이는 세포가 있다는 것이 알려져 있다. 예를 들면, 시야의 특정 위치에 특정한 방향이나 굵기의 선분이 제시되었을 때만 선택적으로 반응하게 된다.
이러한 세포에는 단순, 복잡 세포라 불리는 두 종류의 세포가 있다. 두 종류 모두 특정 입력 패턴에만 반응하지만, 입력의 위치 선택성이 서로 다르다. 단순 세포는 엄격한 위치 선택성을 갖지만, 복잡 세포는 입력 패턴을 조금 벗어나도 반응한다.
풀링층의 계산 내용은 다음과 같다. 크기 W*W*K 인 입력 이미지의 픽셀(i,j) 를 중심으로 하는 H*H 크기의 정사각형 영역을 잡아 그 영역에 포함되는 픽셀의 집합을 P로 나타낸다. 합성곱 연산과 마찬가지로, 적당히 패딩을 적용하면 입력 이미지의 가장자리를 포함하는 모든 점을 중심으로 하는 P를 만드는 것이 가능하다.
이 P 내의 픽셀에 대하여 채널 k 마다 독립적으로 H^2 개 있는 픽셀값을 사용하여 하나의 픽셀값 u_ijk 를 구한다. 이 값을 구하는 방법은 몇 가지가 있다.
이 중 최대 풀링은 H^2 개의 픽셀 중 최댓값을 고르는 방법이다.
풀링의 계산은 입력 이미지의 각 채널마다 병렬로 실행된다. 따라서 보통 풀링층의 출력 채널 수는 입력 이미지의 채널 수와 일치한다. 또한 이들 풀링을 포함하는 일반적인 표기로서 Lp 풀링이 있다.
P = 1 이면 평균 풀링, P가 무한대면 최대 풀링을 의미한다. 이미지 인식에는 최대 풀링이 가장 많이 쓰인다.
풀링층에는 통상적으로 2 이상의 스트라이드가 쓰인다.
풀링층의 유닛에 활성화 함수를 적용하는 것은 가능하지만 보통은 적용하지 않는다. 역전파법을 수행하라 때 풀링층에는 델타에 대한 역전파 계산만을 수행한다.
'implement_ml_models > CNN' 카테고리의 다른 글
implement_CNN(pooling) (0) | 2023.03.07 |
---|---|
implement_CNN(start) (0) | 2023.03.07 |
impelment_CNN(stride) (0) | 2022.12.06 |
implement_CNN(padding) (0) | 2022.12.06 |
implement_CNN(basic) (0) | 2022.12.06 |