LSTM

2024. 11. 18. 12:07LLM/Pre-Process

**LSTM (Long Short-Term Memory)**는 **순환 신경망(Recurrent Neural Network, RNN)**의 한 종류로, **시간 순서가 중요한 데이터(시계열 데이터)**를 처리하고 학습하는 데 사용됩니다. LSTM은 기존 RNN의 장기 의존성(Long-term dependency) 문제를 해결하기 위해 설계되었습니다.


1. RNN과 LSTM의 차이

RNN의 문제: 장기 의존성 문제

  • RNN은 순차적인 데이터를 처리하기 위해 설계되었지만, 이전 입력에서 중요한 정보가 멀리 떨어져 있을 경우 해당 정보를 효과적으로 학습하기 어렵습니다.
  • 예를 들어, 긴 문장에서 초반에 나온 주어 정보를 끝부분에서 활용해야 하는 경우, RNN은 정보가 점차적으로 사라지는 기울기 소실(Vanishing Gradient) 문제로 인해 학습이 어려워집니다.

 

LSTM의 해결책: 기억 셀과 게이트 구조

  • LSTM은 **기억 셀(Cell)**과 이를 조작하는 게이트(Gate) 구조를 도입하여, 중요한 정보를 장기적으로 유지하거나 필요에 따라 삭제할 수 있도록 설계되었습니다.


2. LSTM의 구성 요소

LSTM은 기본적으로 **셀 상태(Cell State)**와 **게이트(Gates)**라는 두 가지 주요 아이디어를 활용합니다.

(a) 셀 상태 (Ct):

  • LSTM의 핵심으로, 장기적인 정보를 저장하는 역할을 합니다.
  • 이전 시간 단계에서 전달된 정보가 다음 단계로 전달되며, 게이트를 통해 필요한 정보만 추가하거나 삭제할 수 있습니다.

(b) 게이트(Gates):

게이트는 정보를 추가하거나 삭제하는 정도를 조절하는 역할을 합니다. 각 게이트는 시그모이드(sigmoid) 함수를 사용하여 출력값을 0~1 사이로 조절합니다:

  • 0: 정보를 완전히 삭제
  • 1: 정보를 완전히 유지
    예를 들면 1이면 게이트로 copy하여 파라미터 전달하여 output에서 다시 concat됩니다. 
  1. Forget Gate (ft):
    • 셀 상태에서 불필요한 정보를 삭제.
    • 계산식: ft 여기서:
      • ht−1: 이전 시간 단계의 은닉 상태
      • xt: 현재 입력
      • Wf: Forget Gate의 가중치와 편향
  2. Input Gate (i):
    • 새로운 정보를 얼마나 추가할지 결정.
  3. Cell Update (Ct):
    • 새로운 정보를 계산하여 셀 상태에 추가.
  4. Output Gate (o):
    • 현재 셀 상태에서 얼마나 많은 정보를 출력으로 보낼지 결정.

 


3. LSTM의 동작

  1. Forget Gate (ft): 이전 셀 상태에서 삭제할 정보를 결정.
  2. Input Gate (it)와 : 현재 입력 정보를 통해 추가할 정보를 계산.
  3. 셀 상태 업데이트 (Ct):
    • 이전 상태(Ct−1C_{t-1})에서 유지할 정보와 새로 추가할 정보를 결합.
  4. Output Gate (ot)와 출력 (ht):
    • 현재 셀 상태의 정보를 기반으로 출력 생성.

 


4. LSTM의 주요 특징

  1. 장기 의존성 처리:
    • Forget Gate와 Input Gate를 통해, 장기적으로 중요한 정보를 셀 상태에 저장하고 필요할 때 활용합니다.
  2. 기울기 소실 문제 해결:
    • 셀 상태를 통해 정보가 직접 전달되므로, 중요한 정보가 멀리 있는 경우에도 손실되지 않습니다.
  3. 양방향 LSTM:
    • **Bidirectional LSTM (biLSTM)**은 순방향과 역방향의 정보를 결합하여 문맥을 더욱 풍부하게 이해합니다.

5. 요약

  • LSTM은 기존 RNN의 기억 상실 문제를 해결하기 위해 설계된 모델로, Forget Gate, Input Gate, Output Gate를 사용하여 정보를 선택적으로 기억하거나 삭제합니다.
  • 이를 통해 장기 의존성을 효과적으로 처리하며, 긴 문맥이 중요한 태스크에서 매우 유용합니다.

'LLM > Pre-Process' 카테고리의 다른 글

LLM 인퍼런스 최적화  (2) 2025.05.21