1. CNN 이란
- 1980년도 제안된 네오컨그니트론의 발전 형태
- 인간의 시각 피질을 모방한 계층 구조
- 하위 층 뉴런이 인식 대상의 저수준 특징을 인지 → 다음 층은 이전 층의 특징을 이용해 고수준 특징을 인지
- 입력층, 은닉층, 출력층은 다른 신경망과 동일, 여기에 컨볼루션층과 풀링층을 추가한 구조
- 기존 영상 처리에서 특징 추출 알고리즘에 해당하는 일을 앞 단에서 자동으로 수행
- 앞 단의 구조에 따라 성능이 달라짐
2. 컨볼루션층
1) 컨볼루션층 이란
- 기존 이미지 처리에서 특징 추출을 위해 마스크를 원본 이미지에 적용함으로써 추출

- 컨볼루션 연산 = 마스크를 원본 이미지에 포갠 후 대응 되는 원소들끼리 곱해 이의 합을 구함 → 이를 마스크를 이동하며 이미지 전체에 동일한 작업
- 이와 비슷한 작업을 하는 CNN의 뉴런 층이 컨볼루션층
- 기존 처리의 마스크 → CNN의 필터 or 컨볼루션 커널(convolution kernel)
- 컨볼루션 연산의 결과 배열을 특징 맵이라 함
2) 특징 맵
- 컨볼루션층 컨볼루션 연산의 결과 배열
- 컨볼루션 연산의 결과이므로 원본 이미지에 비해 크기가 작아짐
- 크기 손실을 방지하고 싶을때는 원본의 행과 열에 (필터의 크기 - 1) 개의 0 픽셀을 추가 ( = Padding )
- 필터 당 하나의 특징 맵 생성, 보통 한 이미지에 여러 필터를 사용하기 때문에 여러 특징 맵이 생성 됨
- CNN에서 컨볼루션 층을 연속적으로 적용하는 형태로 생성하는 경우
- 저수준 특징 맵 → 컨볼루션 층 → 상위수준의 특징 맵 → 컨볼루션 층 → 더 상위수준의 특징 맵 → ...
- 필터 이동 거리가 2 이상이 되면 특징 맵의 크기는 이동거리의 배수만큼 줄어듬
3) 필터 학습