LSTM

IT 위키
인공무능 (토론 | 기여)님의 2025년 9월 25일 (목) 07:32 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

Long Short Term Memory RNN의 장기 의존성(long-term dependency) 문제를 해결하기 위해 고안된 순환 신경망(RNN)의 변형 구조

RNN의 문제

RNN의 수식 표현 ht = fW(ht-1, xt)

  • 문장 구성 수만큼 Hidden Layer가 순차적으로 연결되어 매우 Deep한 구조 형성
    • Recurrent 구조 특성상 동일한 가중치 fW가 계속 곱해지므로 아래 문제 발생
  • fW < 1 인 경우 → Vanishing Gradient (기울기 소실)
  • fW > 1 인 경우 → Exploding Gradient (기울기 폭주)
  • 따라서 입력 시점과 출력 시점 간의 거리가 멀면, 학습 능력이 급격히 저하됨
    • 장기 기억을 반영하지 못하고 단기 기억만을 사용하는 한계
  • LSTM(Long Short Term Memory)는 이러한 문제를 해결하기 위해 제안되었다.

RNN vs LSTM Cell State 개념도.png

구조 및 구성 요소

LSTM은 정보를 장기적으로 보존할 수 있도록 셀 상태(cell state)를 도입하고, 이를 여러 게이트 구조로 제어한다. 셀 상태는 정보가 흐르는 통로 역할을 하며, 게이트들은 어떤 정보를 버리고, 추가하고, 출력할지를 조절한다.

LSTM 개념도.png

구성 요소 설명
Forget Gate Layer
  • 어떤 정보를 버릴지를 결정
  • sigmoid 활성화 함수를 통해 0~1 사이의 값을 출력하여, 유지할 정보와 버릴 정보를 조절
Input Gate Layer
  • 새로운 정보를 얼마나 반영할지 결정
  • sigmoid layer가 어떤 값들을 업데이트할지 결정하고, tanh layer가 새로운 후보 값들을 생성
Update Cell State
  • forget gate와 input gate의 출력을 결합해 셀 상태(cell state)를 업데이트
  • 장기 기억과 새로운 정보를 동시에 반영
Output Gate Layer
  • 다음 은닉 상태(hidden state, ht)를 결정
  • sigmoid layer가 어떤 부분을 출력할지 결정하고, tanh를 통해 활성화된 cell state를 출력값으로 변환

특징

  • 장기 의존성 문제 해결 : 기울기 소실/폭발 문제를 완화하여 장기적인 맥락을 학습 가능
  • 셀 상태(Cell state) : 시간에 따라 정보를 전달하는 메모리 흐름
  • 게이트 구조 : 정보의 선택적 보존과 삭제를 통해 효율적 학습 가능
  • RNN 대비 학습 속도는 느리지만, 긴 시퀀스 데이터 처리에 효과적임

변형

  • GRU(Gated Recurrent Unit)
    • LSTM의 단순화된 변형으로, forget gate와 input gate를 합쳐 update gate로 통합
    • 파라미터 수가 적고 계산량이 줄어들어 효율적
  • Peephole LSTM
    • 게이트들이 cell state에 직접 접근하도록 하여, 더 세밀한 제어 가능
  • Bidirectional LSTM
    • 순방향과 역방향 LSTM을 함께 사용하여, 과거와 미래 문맥을 동시에 활용

활용

같이 보기

참고 문헌

  • Sepp Hochreiter, Jürgen Schmidhuber. Long Short-Term Memory. Neural Computation, 1997.
  • Ian Goodfellow, Yoshua Bengio, Aaron Courville. Deep Learning. MIT Press, 2016.

각주