본문 바로가기
  • 콩's 코딩노트
TensorFlow

TensorFlow - CNN에 대해서 (Convoultion / stride / Zero-Padding / Pooling / Feature Map)

by Cong_S 2022. 6. 14.

CNN 이란? 

Convoultion Neural Network 으로 

 

이 때 Convoultion 계층은 이미지의 feature (특징)을 학습하는 아주 중요한 부분계층이다.

이미지 매트릭스의 컨볼루션의 필터 크기와 맞게 가져와 각 자리에 맞는 값을 모두 곱해 다 더한 후 feature map에 입력하고 한 칸 옮겨 다시 연산한다.

이 과정을 반복하며 Feature Map을 채워나가는 것이다.

 

stride

위 이미지는 stride (한 칸 옮김) 을 나타낸다.

위는 Padding에 대한 이야기다.  

feature map을 채우다 보면 이미지의 사이즈가 줄어드므로 가상의 이미지 영역을 잡아주는데

Zero-Padding이라 한다.

 

마지막으로 특징만을 살리고 효율을 높이는 Pooling 을 진행할 수 있다.

 

이 때, Convoultion 이나 Pooling 은 정해진 횟수나 순서는 없고

여러번 시도해보면서 최적의 횟수를 찾아내면 된다.

댓글