TIL(25.02.04)

채채·2025년 2월 4일

Today I Learned

목록 보기
68/75

RNN과 DNN의 차이점

1. DNN (Deep Neural Network, 기존 신경망)

입력값을 독립적으로 처리 → 과거 입력값과의 연관성이 없음.
정적 데이터(이미지, 텍스트 등) 처리 → 순서와 관계없이 개별 데이터로 분석.
시간적 순서 고려 불가능 → 같은 입력이라도 앞뒤 관계를 이해하지 못함.

2. RNN (Recurrent Neural Network, 순환 신경망)

이전 입력값을 기억하여 다음 값을 예측 → 순차적인 데이터에서 패턴을 학습.
연속적인 데이터 처리 가능 → 문장, 음성, 주식 데이터 등 시계열 데이터에 강함.
시간적 순서 고려 가능 → 앞의 정보가 뒤의 예측에 영향을 줌.

3. RNN의 활용 분야

음성 인식 (Speech Recognition)
기계 번역 (Machine Translation)
챗봇
음악 작곡, 시, 대본 작성
자동완성 (예: "동해물과 백두산이 마르고" → "닳도록")

RNN의 한계점

1. 장기 의존성 문제 (Long-term Dependency Issue)

RNN은 이전 상태를 기억하지만, 오래된 정보는 점점 약해짐.
h 값(은닉 상태)이 계속 누적되면서 정보가 손실될 가능성이 큼.
중요한 정보가 뒤에 있을 경우, 앞의 정보가 잊혀질 수 있음.
이전의 상태를 기억을 하는데, 이전의 상태 h값에는
h_1 동해물과
h_2 동해물과 백두산이
h_3 동해물과 백두산이 마르고
h_4 ......

2. 기울기 소실 (Vanishing Gradient)

역전파를 할 때, 시간이 길어질수록 기울기가 작아져서 학습이 어려워짐.
즉, 먼 과거의 정보가 현재의 예측에 반영되기 어려움.
→ 이 문제를 해결하기 위해 등장한 모델: LSTM, GRU

  • LSTM (Long Short-Term Memory): 장기 기억을 가능하게 만듦.
  • GRU (Gated Recurrent Unit): LSTM보다 구조가 간단하면서도 효과적임.
  • RNN을 배우는 이유?
    새로운 모델 (LSTM, GRU, Transformer, GPT 등)이 등장해도 기본 원리를 이해해야 응용 가능.
    AI 면접에서도 RNN의 한계와 극복법을 이해하고 있는지 확인하는 경우가 많음.
    LLM (Large Language Model)의 원조 개념이 RNN에서 시작되었기 때문.

요약 정리

✅ DNN은 독립적인 데이터를 처리하는 반면, RNN은 순차적인 데이터를 다룸.
✅ RNN은 과거 상태를 기억하지만, 시간이 길어질수록 정보 손실과 기울기 소실 문제가 발생.
✅ 이를 해결하기 위해 LSTM, GRU 같은 개선된 모델이 등장.
✅ RNN 자체는 잘 쓰이지 않지만, 딥러닝을 이해하는 데 중요한 개념.
✅ AI 면접에서도 RNN과 관련된 개념을 자주 물어봄.

profile
화이팅

0개의 댓글