본문 바로가기
데이터 분석

CNN을 구성하는 레이어

by hidden-state 2026. 2. 13.

CNN(Convolutional Neural Network)은 이미지처럼

격자 형태의 데이터를 다룰 때 자주 사용되는 신경망 구조이다.

특징을 단계적으로 추출한 뒤 최종 예측을 수행하는 흐름을 가진다.

이 글에서는 CNN을 구성하는 대표 레이어들이 어떤 역할을 하는지 정리한다.


1. 입력(Input)

입력은 모델이 처리할 원본 데이터이다. 이미지의 경우 보통 (높이, 너비, 채널) 형태로 표현된다.

채널은 흑백이면 1, RGB 이미지면 3인 경우가 많다.

 

입력(Input) 이미지


2. 합성곱(Convolution) 레이어

합성곱 레이어는 CNN의 핵심이다. 작은 필터(커널)를 이미지 위로 이동시키며 연산해, 입력에서 의미 있는 패턴을 찾아낸다.

  • 초기 레이어: 가장자리, 방향성 같은 단순 패턴을 주로 잡는다.
  • 깊은 레이어: 질감, 부분 형태처럼 더 복잡한 특징을 잡을 수 있다.

합성곱을 통해 만들어지는 결과를 특징 맵(feature map)이라고 한다.

 

convolution 레이어 시각화


3. 활성화 함수(Activation) 레이어

활성화 함수는 모델에 비선형성을 추가한다.

이 단계가 없으면 여러 층을 쌓아도 단순한 선형 변환만 반복되기 때문에 표현력이 제한된다.

CNN에서는 보통 ReLU를 많이 사용한다. ReLU는 음수 값을 0으로 만들고 양수는 그대로 유지한다.

 

Activation (Relut)그래프


4. 풀링(Pooling) 레이어

풀링 레이어는 특징 맵의 크기를 줄이는 역할을 한다. 대표적으로 Max Pooling이 있으며

작은 영역에서 가장 큰 값을 남겨 중요한 특징을 보존하려는 의도가 있다.

  • 연산량을 줄여 학습/추론을 가볍게 만든다.
  • 작은 위치 변화에 덜 민감해지도록 돕는다.

풀링 레이어


5. 배치 정규화(Batch Normalization)

배치 정규화는 레이어 출력 분포를 안정적으로 만들기 위해 사용되는 경우가 많다.

학습 과정에서 값의 분포가 크게 흔들리지 않도록 보조하는 역할을 한다.

  • 학습을 안정적으로 만드는 데 도움을 줄 수 있다.
  • 학습 속도와 수렴 특성에 영향을 줄 수 있다.

항상 필수는 아니지만, CNN 구조에서 자주 함께 사용된다.


6. 드롭아웃(Dropout)

드롭아웃은 학습 중 일부 뉴런을 확률적으로 비활성화하여 모델이 특정 특징에만 지나치게 의존하지 않도록 돕는 방법이다.

주로 과적합을 줄이기 위한 목적으로 사용되며 학습할 때만 적용되고 예측 단계에서는 보통 적용되지 않는다.


7. 완전 연결(Fully Connected) 레이어

CNN의 마지막 부분에서는 추출된 특징을 바탕으로 최종 예측을 수행한다.

일반적으로 특징 맵을 1차원 벡터로 펼치는(Flatten) 과정 이후, 완전 연결 레이어가 이어진다.

분류 문제라면 마지막에 클래스 개수만큼 출력이 나오도록 구성하며

회귀 문제라면 필요한 출력 차원에 맞게 구성한다.

 

CNN 전체 구조 흐름


8. 출력(Output) 레이어

출력 레이어는 문제 유형에 따라 달라진다.

  • 이진 분류: 출력 1개(확률) + sigmoid를 사용하는 경우가 많다.
  • 다중 분류: 클래스 개수만큼 출력 + softmax를 사용하는 경우가 많다.
  • 회귀: 필요한 값의 개수만큼 출력하며 활성화 함수는 상황에 따라 다르다.

9. 한 번에 정리

레이어 역할
Convolution 입력에서 특징을 추출해 특징 맵을 만든다.
Activation (ReLU) 비선형성을 추가해 표현력을 높인다.
Pooling 특징 맵 크기를 줄여 계산량을 낮춘다.
BatchNorm 출력 분포를 안정화해 학습을 돕는다.
Dropout 일부 뉴런을 비활성화해 과적합을 줄이는 데 도움을 준다.
Fully Connected 추출된 특징을 바탕으로 최종 예측을 수행한다.

10. 정리

  • CNN은 합성곱을 통해 특징을 단계적으로 추출한다.
  • 활성화 함수는 모델이 복잡한 패턴을 표현하도록 돕는다.
  • 풀링은 크기를 줄이고 계산을 가볍게 만든다.
  • 마지막에는 완전 연결 레이어를 통해 예측으로 이어진다.

레이어의 역할을 알고 나면 CNN 구조를 읽고 수정하는 과정이 훨씬 수월해진다.