Deep Learning

Convolution Neural Network (CNN)

yugyeong 2022. 12. 30. 13:02

 

합성곱 신경망 Convolution Neural Network (CNN)

 

시각적인 영상을 분석하는데 사용되는 다층의 순전파(Feedforward)적인 인공신경망의 한 종류

필터링 기법을 인공신경망에 적용(Convolution 작업)하여 이미지를 효과적으로 처리 할 수 있는 심층신경망 기법

행렬로 표현된 필터의 각 요소가 데이터 처리에 적합하도록 자동으로 학습되는 과정을 통해 이미지를 분류하는 기법

 

 

CNN의 구성

 

Convolution Layer와 Pooling Layer를 반복적으로 수행하여 특징을 추출 (Feature Extraction)

Flatten 작업을 통해 Fully Connected Layer로 변환

-  Fully Connected Layer : 1차원 형태의 행렬, 모든 노드를 하나로 연결한 계층

Fully Connected Layer에서 Classifier를 통해 학습한 데이터를 기준으로 분류 작업 수행

-  Output Layer의 활성함수는 Softmax 사용

 

 

 

합성곱 (Convolution)

하나의 함수와 또 다른 함수를 반전 이동한 값을 곱한 다음, 구간에 대해 적분하여 새로운 함수를 구하는 연산

필터(Filter)를 이용해 특정 크기 별로 학습을 하고 피쳐 맵(Feature Map)을 만드는 과정

 

 

Filter ( = kernel = feature detector)

- 이미지의 특징을 찾아내기 위한 공용 파라미터, 필터로 특징을 학습

- 일반적으로 3x3, 4x4 정의

- 행렬 별로 합성곱 연산을 하고 연산의 합을 Feature Map(=Activation Map)으로 생성