# 컨볼루션 신경망(Convolutional Neural Network, CNN)
주로 이미지 처리와 패턴 인식에 사용되는 딥러닝 아키텍처 중 하나입니다. 이 아키텍처는 이미지 데이터에서 특징을 추출하고, 그것을 사용하여 분류, 객체 감지 및 다양한 컴퓨터 비전 작업을 수행하는 데 효과적입니다.
컨볼루션 신경망의 핵심 개념:
1. 합성곱 연산 (Convolution): 이미지와 필터(또는 커널) 간의 합성곱 연산을 사용하여 이미지에서 특징을 추출합니다. 필터는 작은 행렬로, 이미지의 작은 부분에 대한 가중치를 정의합니다. 합성곱은 이미지를 스캔하면서 필터를 적용하고, 그 결과를 출력 맵에 저장합니다. 이러한 연산은 이미지 내에서 특정 패턴이나 특징을 검출하는 역할을 합니다.
2. 활성화 함수 (Activation Function): 합성곱 결과에 비선형성을 도입하기 위해 활성화 함수를 사용합니다. 주로 ReLU(Rectified Linear Unit) 함수를 사용하며, 음수 입력을 0으로 만들고 양수 입력을 그대로 출력합니다.
3. 풀링 (Pooling): 풀링 층은 공간 차원을 줄이는 역할을 합니다. 일반적으로 최대 풀링 또는 평균 풀링을 사용하여 출력 맵을 다운샘플링합니다. 이는 계산량을 줄이고 특징을 불변성을 가지도록 만들어 네트워크가 더 안정적으로 학습하도록 도와줍니다.
4. 완전 연결층 (Fully Connected Layer): CNN의 마지막 부분에는 완전 연결층이 포함됩니다. 이 층은 이미지에서 추출한 특징을 사용하여 최종 분류 또는 회귀를 수행합니다. 여기서는 이미지와 관련된 작업을 수행하기 위한 최종 결정을 내립니다.
'Programming > 인공지능(AI) - 딥러닝, 머신러닝, OpenCV' 카테고리의 다른 글
딥러닝(deep learning)/ 모델 및 함수 용어 관련 (0) | 2023.08.17 |
---|---|
딥러닝(deep learning)/ 사용 라이브러리 관련 (0) | 2023.08.17 |
딥러닝(deep learning)/ 예제 1 (0) | 2023.06.13 |
딥러닝(deep learning)/ 모델 성능 향상(검증셋, 업데이트, 자동 중단) (0) | 2023.06.13 |
딥러닝(deep learning)/ 과적합 예방(학습셋, 테스트셋) (0) | 2023.06.13 |