머신러닝&딥러닝

머신러닝 & 딥러닝 기초 32편 | 딥러닝 - CNN, RNN, Transformer

SecLogs YJ 2026. 3. 20. 23:59

1. 딥러닝 모델 구조 개요

앞선 글에서는 MLP(다층 퍼셉트론)를 이용해 이진 분류와 다중 분류 문제를 해결하는 방법을 살펴보았다.

하지만 실제 문제에서는 데이터의 형태에 따라 더 적합한 모델 구조를 사용하는 것이 중요하다.

 

MLP는 모든 데이터를 동일한 방식으로 처리하기 때문에, 이미지나 문장처럼 구조적인 정보를 가진 데이터에서는 한계가 존재한다.

딥러닝 모델은 기본적으로 입력 → (여러 층) → 출력으로 이어지는 하나의 함수(거대한 계산 그래프)이다.


이 과정에서 학습은 예측값과 실제값의 차이를 줄이도록 가중치를 자동으로 조정(역전파)하는 방식으로 이루어진다.

따라서 모델 구조(아키텍처)는 “어떤 패턴을 잘 학습하도록 설계되었는가”가 핵심이다.

 

대표적인 딥러닝 모델 구조는 다음과 같다.

  • CNN : 이미지 데이터 처리에 특화
  • RNN : 순서가 있는 데이터 처리에 특화
  • Transformer : 문장, 시계열 등 복잡한 관계를 처리

이 글에서는 각 모델의 특징과 차이를 중심으로 구조를 이해한다.

 

 

2. CNN (Convolutional Neural Network)

CNN은 이미지와 같은 공간적 구조를 가진 데이터를 처리하기 위한 모델이다.

MLP는 이미지를 1차원 벡터로 펼쳐서 사용하지만, 이 과정에서 픽셀 간의 위치 관계 정보가 사라지는 문제가 발생한다.

 

이미지의 핵심 특징은 다음과 같다.

  • 근처 픽셀끼리 의미가 강함 (지역성)
  • 같은 물체는 위치가 달라도 형태는 유사함

CNN은 이러한 특성을 반영하여 하나의 필터를 이미지 전체에 공유하며 특징을 학습한다.

 

 

핵심 아이디어

  • 중요한 특징만 추출한다 (Feature Extraction)
  • 필터(Filter)를 이용해 이미지의 패턴을 찾는다
  • 같은 필터를 전체 영역에 적용하여 효율적으로 학습한다

 

주요 구성 요소

  • Convolution Layer(합성곱) : 필터를 이용해 특징(엣지 → 질감 → 객체)을 추출
  • Pooling Layer : 크기를 줄이며 정보 요약 (연산량 감소, 위치 변화에 강해짐)
  • Feature Map(특징맵) : 특정 패턴이 어디에 존재하는지 표현
  • Fully Connected Layer : 최종 분류 수행

 

특징

  • 이미지의 위치 정보 유지
  • 파라미터 수 감소 (가중치 공유)
  • 특징을 자동으로 학습
  • 이미지 분류, 객체 탐지, 분할 등에 강함

 

CNN의 한계

  • 순서 데이터(문장 등) 처리에는 비효율적
  • 멀리 떨어진 픽셀 간 관계를 직접 학습하기 어려움

이를 보완하기 위해 다양한 확장 모델이 등장하였다.

 

CNN 확장 모델

1) ResNet (깊은 네트워크 문제 해결)

  • 문제 : 층이 깊어질수록 학습이 어려움 (기울기 소실)
  • 해결 : 입력을 그대로 더해주는 구조(Residual Connection)

→ “입력을 유지하면서 필요한 변화만 학습”

 

2) Inception / EfficientNet (효율 개선)

  • Inception
    • 여러 크기의 필터(1×1, 3×3, 5×5)를 동시에 적용
    • 다양한 크기의 특징을 한 번에 추출
  • EfficientNet
    • 깊이, 너비, 해상도를 균형 있게 확장
    • 성능 대비 효율 최적화

 

3) 특정 문제용 모델

  • U-Net : 이미지 분할 (픽셀 단위 분류)
  • YOLO / Faster R-CNN : 객체 탐지 (위치 + 클래스 예측)

 

3. RNN (Recurrent Neural Network)

RNN은 텍스트, 음성, 시계열 데이터처럼 순서가 중요한 데이터를 처리하는 모델이다.

 

핵심 아이디어

  • 이전 정보가 다음 결과에 영향을 준다.
  • 즉, 현재 입력뿐 아니라 이전 상태(hidden state)를 함께 고려한다.

구조 특징

  • 입력 → 은닉 상태 → 출력
  • 이전 시점의 정보가 다음 시점으로 전달됨
  • 시간 흐름을 따라 정보가 누적됨

 

특징

  • 문장 처리, 번역, 음성 인식 등에 활용
  • 시간 흐름을 반영한 학습 가능

 

RNN의 한계

  • 긴 문장에서 앞 정보가 잘 전달되지 않음 (장기 의존성 문제)
  • 기울기 소실/폭주로 학습 불안정
  • 순차 처리 → 병렬화 어려움 (속도 느림)

 

RNN 확장 모델

1) LSTM / GRU

  • 핵심 : 게이트(Gate)로 기억을 제어
  • LSTM
    • 중요한 정보를 오래 저장 (셀 상태)
    • 입력/삭제/출력 게이트로 정보 조절
  • GRU
    • LSTM을 단순화한 구조
    •  더 가볍고 빠름

 

2) Seq2Seq + Attention

  • 구조 : 인코더 → 디코더
  • 역할
    • 인코더 : 입력 문장 요약
    • 디코더 : 출력 문장 생성

문제: 모든 정보를 하나의 벡터에 담기 어려움 → 해결: Attention

 

Attention이란

필요한 순간마다 입력 전체를 참고하여 중요한 부분에 집중하는 방식이다.

  • 긴 문장에서도 정보 손실 감소
  • 중요한 단어와 직접 연결 가능

 

4. Transformer

Transformer는 RNN의 한계를 개선하기 위해 등장한 모델이다.

RNN은 순차적으로 처리해야 해서 속도가 느리고 장기 의존성 문제(Long-term dependency)가 발생한다.

Transformer는 이를 해결하기 위해 Attention 메커니즘을 사용한다.

 

핵심 아이디어

  • 모든 단어 간의 관계를 한 번에 계산하여 중요한 정보에 더 집중한다.

 

주요 특징

  • 병렬 처리 가능 (속도 빠름)
  • 긴 문장에서도 관계 잘 학습
  • GPT, BERT 등의 기반 구조

 

핵심 구성 요소

  • Self-Attention : 단어 간 관계 계산
  • Multi-Head Attention : 다양한 관점으로 학습
  • Positional Encoding : 순서 정보 보완

 

활용 분야

  • NLP : 번역, 요약, 챗봇
  • 비전 : ViT (이미지 처리)
  • 멀티모달 : 텍스트 + 이미지 + 음성

 

5. 모델 비교 정리

모델 데이터 유형 특징 대표 활용
CNN 이미지 공간 정보 활용 이미지 분류
RNN 시퀀스 순서 정보 반영 번역, 음성
Transformer 시퀀스 Attention 기반 GPT, BERT

 

 


데이터 유형별 모델 선택 가이드

  • 이미지 분류 → ResNet / EfficientNet
  • 이미지 분할 → U-Net
  • 객체 탐지 → YOLO / Faster R-CNN
  • 텍스트 처리 → Transformer
  • 시계열 → LSTM / GRU / Transformer

 

정리

  • CNN은 공간 패턴(이미지)에 강하다
  • RNN은 순서와 기억을 반영하지만 긴 의존성과 속도 한계가 있다
  • LSTM/GRU는 게이트를 통해 RNN의 한계를 개선한다
  • Attention은 필요한 정보를 직접 참조하여 장기 의존 문제를 완화한다
  • Transformer는 Attention과 병렬 처리를 기반으로 현대 딥러닝의 핵심 구조이다

 👉머신러닝 & 딥러닝 기초 33편 | 모델 저장과 로드 (joblib, pickle, Keras)