본문 바로가기
공부 정리/딥러닝

Pooling 레이어의 이해

by 블로그별명 2023. 2. 21.

풀링을 왜하는가

1. 풀링은 입력이 작게 이동해도 근사적으로 불변이 되게 하는데 도움을 준다

2. 데이터 차원의 감소

pooling의 커널사이즈를 2*2, stride 2로 설정했을때 최종적인 데이터 크기를 1/4로 줄일수있다

일정영역의 강한 피쳐만을 남길수있으며 신경망의 계산이 빨라진다

 

풀링의  기본설정

pooling시 대부분 maxpool을 이용한다

stride는 커널사이즈와 동일하게 설정하는것이 default값이다

 

pooling과 convolution레이어의 차이점

학습해야할 가중치가없다

풀링후 채널수가 변하지 않는다

 

pooling의 문제

maxpooling으로 일정 영역의 강한 feature만을 다음 레이어로 넘기면 처음에는 적은 계산량으로 좋은 성능을 유지할 수 있을지 몰라도 깊은 레이어로 갈수록 정보유실이 커져 성능에 문제가 된다 따라서 최근에는 maxpooling을 사용하지않는 쪽으로도 많이 시도하고있다고 한다

 

 

출처

http://taewan.kim/post/cnn/

https://m.blog.naver.com/khm159/221811601286

https://pytorch.org/docs/stable/generated/torch.nn.MaxPool2d.html

'공부 정리 > 딥러닝' 카테고리의 다른 글

[딥러닝2]신경망의 순전파  (0) 2024.01.08
[딥러닝1]퍼셉트론  (0) 2023.12.26
패딩(padding) 사용하는 이유  (0) 2023.02.21
합성곱 연산(Convolution operation) 방법  (0) 2023.02.21
합성곱 신경망의 필요성  (0) 2023.02.21

댓글