합성곱 신경망 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)으로 생성
'Deep Learning' 카테고리의 다른 글
| JPG / PNG 같은 이미지 파일을, 학습 데이터로 만드는 방법 (0) | 2022.12.30 |
|---|---|
| Pooling (Downsampling) 이란? (0) | 2022.12.30 |
| Flatten 라이브러리 사용하는 이유 (0) | 2022.12.28 |
| EarlyStopping 라이브러리 / Callback 사용법 (0) | 2022.12.28 |
| validation 데이터란 무엇이고, 코드에서 사용하는 방법 (0) | 2022.12.28 |