딥러닝 CNN + 개념정리
<합성곱층이나 풀링층에서 구체적으로 어떤 처리가 이루어지는지 보기>
합성곱 > 이미지의 특징을 추출하는 역할 (필요없는 부분 날려버리고 특징이 되는 부분만 추출)
- convolution operation / 층을 layer
- 커널(kernel) 또는 필터 filter 필터라는 n*m
- 원본이미지가 행렬로 표시되고 그보다 작은 행렬을 곱(커널/필터)을 계속 진행해가면서 합산시키는것
- kernel은 일반적으로 3*3 / 5*5를 사용함.
- 저렇게 output나온게 특성맵(feature map) > 입력값보다 작아진다는 특징이 있음
-> 이것을 동일하게 유지하고 싶으면 패딩padding을 사용하면됨. ( 0으로 입혀줌, 곱으로 해도 0이나올수있게)
- 이동범위를 스트라이드 stride라고 함.
> original 이미지는 그대로 받은게 아니라 행렬로 받아서 변환한것
> 2번째는 그림에대한 특징을 잡아놓은거고
> 그 특징을 토대로 3번째 이미지를 추출한것.
<풀링층>
맵의 부분 구간을 다니며 max풀링, 최댓값을 구하게되는. 옆으로 한칸씩 옮기면서
그래서 단순화가 되는 과정이다.
= > 그래서 이미지 손실이 있을 수 있다.
블러효과처럼 > 이미지를 작게 했다가 다시 키우면 이미지 손실이 나는것처럼.
<한번 더 읽어볼만한 포스팅>
https://huangdi.tistory.com/12
https://sonsnotation.blogspot.com/2020/11/7-convolutional-neural-networkcnn.html