인하대학교 공학대학원(인공지능융합전공)/심층신경망

심층신경망_CNN부터 RNN까지: 시계열 데이터와 순환신경망 완전 정리

복리 엔지니어 2026. 4. 17. 10:59

1. CNN 복습: 왜 합성곱(Convolution)을 쓰는가?

CNN의 핵심은 **“전체를 한 번에 보지 않고, 작은 영역을 훑는다”**는 점이다.

  • 이미지 전체를 보는 대신
  • **작은 필터(커널)**를 정의해서
  • 이미지 위를 슬라이딩하며 계산 수행

✔ 핵심 특징

  • 기존 MLP: 모든 픽셀마다 가중치 필요 → 파라미터 많음
  • CNN: 작은 커널만 학습 → 파라미터 감소

👉 예시

  • 5×5 이미지 → MLP: 25개 weight
  • 3×3 커널 → CNN: 9개 weight만 학습

✔ 장점

  • 위치에 상관없이 패턴 탐지 가능
  • 필터 여러 개 사용 → 다양한 특징 추출

예:

  • 가로선
  • 세로선
  • 대각선 등

✔ 구조 변화

  • 가로 × 세로: 점점 작아짐
  • 채널 수: 점점 증가

👉 마지막에는 flatten → MLP → 분류


2. 시계열 데이터(Time Series)의 특징

RNN으로 넘어가기 전에 반드시 이해해야 하는 개념이다.

✔ (1) 시간 의존성 (Temporal Dependency)

  • 이전 시점이 이후 시점에 영향을 줌
  • 데이터가 독립적이지 않음

👉 예:

  • 1월 1일 → 1월 2일 → 1월 3일 (연결됨)

✔ (2) 추세 (Trend)

  • 장기적인 방향성

👉 예:

  • 주식: 장기적으로 상승 or 하락

✔ (3) 계절성 (Seasonality)

  • 일정 주기로 반복되는 패턴

👉 예:

  • 여름 → 에어컨 사용 증가
  • 낮 → 전력 사용 증가

✔ (4) 시계열 분해

시계열 데이터는 보통 이렇게 구성됨:

관측값 = Trend + Seasonality + Noise
 

✔ (5) 자기상관 (Auto-correlation)

  • 시간 차이에 따른 데이터 간 유사성

👉 특정 패턴이 반복되면 자기상관 존재


3. RNN(Recurrent Neural Network)이란?

✔ 정의

  • 순서(Sequence)가 있는 데이터를 처리하기 위한 신경망

👉 사용 분야:

  • 자연어 처리
  • 음성 인식
  • 시계열 예측
  • 의료 데이터 (심전도 등)

4. RNN 핵심 구조

✔ 핵심 아이디어

현재 입력 + 이전 상태 → 현재 상태 생성


✔ 수식 개념

현재 은닉 상태:

h_t = tanh(Wx * x_t + Wh * h_(t-1) + b)
 

✔ 중요한 특징

  • 동일한 가중치(Wx, Wh)를 모든 시점에서 공유
  • 과거 정보가 누적됨

👉 즉,

h_t는 t 이전 모든 정보를 포함
 

5. RNN의 장점

✔ 1. 시간 의존성 학습 가능

  • 순서를 반영해서 학습

✔ 2. 입력 길이 자유

  • 길이가 달라도 처리 가능

👉 10개든 100개든 동일 구조 사용


✔ 3. 파라미터 수 적음

  • 동일 weight 반복 사용

6. RNN의 치명적인 한계

여기서부터가 핵심이다.


❌ (1) Gradient Vanishing / Exploding

✔ 원인

  • 같은 weight를 여러 번 곱함

👉 예:

  • 0.9 × 0.9 × ... → 0으로 수렴 (소실)
  • 1.1 × 1.1 × ... → 무한 증가 (폭발)

✔ 결과

  • 오래된 정보 학습 불가능
  • 학습 불안정

❌ (2) Long-Term Dependency 문제

멀리 있는 정보는 거의 반영되지 않음

👉 예:

  • 문장 처음 단어가 중요한데
  • 뒤로 갈수록 영향력 거의 0

❌ (3) 병렬 처리 불가능

  • 순차 계산 필수

👉 GPU 활용 어려움 → 느림


7. 해결 방법 1: Gradient Clipping

✔ 아이디어

  • 기울기가 너무 크면 잘라버림

👉 예:

  • 100 → 10으로 제한

✔ 효과

  • 폭발 문제 해결

❗ 하지만
→ Vanishing 문제는 해결 못함


8. LSTM (Long Short-Term Memory)

RNN의 가장 중요한 개선 모델


✔ 핵심 아이디어

중요한 정보만 기억하고 나머지는 버리자


✔ 구조

  • Memory Cell (장기 기억)
  • 3가지 Gate

✔ Gate 종류

1️⃣ Forget Gate

  • 무엇을 잊을지 결정

2️⃣ Input Gate

  • 무엇을 저장할지 결정

3️⃣ Output Gate

  • 무엇을 출력할지 결정

✔ 핵심 효과

  • 오래된 정보도 유지 가능
  • Long-term dependency 해결

9. GRU (Gated Recurrent Unit)

LSTM을 단순화한 모델


✔ 특징

  • Memory Cell 없음
  • Gate 2개만 사용

✔ Gate

  • Reset Gate
  • Update Gate

✔ 비교

 

모델 Gate 수 특징
LSTM 3개 성능 안정적
GRU 2개 구조 단순, 빠름

👉 실무에서는 LSTM이 더 많이 사용됨


10. RNN의 활용 방식

✔ 1. Many-to-One

  • 전체 시퀀스 → 하나의 결과

👉 예:

  • 감정 분석

✔ 2. Many-to-Many

  • 각 시점마다 출력

👉 예:

  • 품사 태깅
  • 시계열 예측

11. CNN + RNN 결합

✔ 왜 필요?

  • CNN: 공간 정보
  • RNN: 시간 정보

✔ 예시

  • 비디오 처리
  • 교통 데이터

👉 흐름:

이미지 → CNN → 특징 추출 → RNN → 시간 분석
 

12. 꼭 알아야 할 핵심 정리

✔ CNN

  • 지역 패턴 학습
  • 위치 불변성

✔ RNN

  • 순서 기반 데이터 처리
  • 과거 정보 반영

✔ 문제점

  • Gradient Vanishing
  • Long-term dependency
  • 병렬 처리 불가

✔ 해결

  • LSTM
  • GRU