카테고리 없음

[딥러닝] 간단한 CNN 설명

caramel-bottle 2024. 3. 24.

CNN(Convolutional Nueral Network)

Convoultuin이란?

 콘볼루션은 두 함수를 곱하고, 합한다는 뜻을 가지고 있는데요. 신호나 영상을 바탕으로 하는 함수를 통해, 과거, 현재, 그리고 미래의 값들을 생각해서 곱하고 합치는 연산이라고 할 수 있습니다. - 포스텍 2022 여름호

 

신호, 영상 등에서 자주 사용되는 연산입니다. 영상에서는 주변 픽셀들을 고려한 연산으로 사용됩니다.

https://wikidocs.net/64066


구조(Structure)

기본적인 과정 예시입니다.

 

  • Raw Image -> Convolution -> Subsampling -> Fully Connection

 

구체적인 과정 예시입니다.

 

  • Raw Image -> Convolution -> Bias-add -> ReLU -> Max Pooling -> Reshape -> FC

 

FC전까지를 Covolutional Layer라고 합니다. 이 과정에서 feature extraction을 하게 됩니다. 


특징

보통 FC의 파라미터 수가 전체 파라미터 수의 큰 비율을 차지합니다.

 

따라서 Convolution Layer를 늘리고 Fully Connected layer를 줄여야 총 Parameter 수가 줄게 됩니다.

 

그러기 위해 FC Layer를 없애는 방법도 있다고 합니다.


참고

https://aikorea.org/cs231n/convolutional-networks/

 

CS231n Convolutional Neural Networks for Visual Recognition

Table of Contents: 컨볼루션 신경망 (ConvNet) 컨볼루션 신경망 (Convolutional Neural Network, 이하 ConvNet)은 앞 장에서 다룬 일반 신경망과 매우 유사하다. ConvNet은 학습 가능한 가중치 (weight)와 바이어스(bias)

aikorea.org

 

댓글