NLP 기초 (6)

정원국·2022년 6월 2일
0

NLP 기초

목록 보기
6/7

RNN: Problem

  • RNN이 갖고 있는 한계점:

    - exploding gradient
    - vanishing gradient

  • RNN 구조에서 state xtx_t에는 WxxW_{xx}가 계속 곱해지게 된다.

    - 곱해지는 값이 1보다 크다면? 발산
    - 곱해지는 값이 1보다 작다면? 수렴


RNN: Exploding Gradient

  • 학습 도중 loss가 inf이 뜰 경우

    - 학습이 더이상 진행이 불가능 하다.

  • 해결책?

    - Gradient clipping

RNN: Vanishing Gradient

  • 학습 도중 파악이 어렵다.
  • 초기화를 간결하게 해주는 방법이 존재하지만...
    - 다른 네트워크 구조를 제안하는 것이 훨씬 편하다.
    - Gated RNNs: LSTM / GRU

LSTM: Long short-term memory

  • Gradient flow를 제어할 수 있는 "밸브" 역할을 한다고 생각하면 쉽다.
  • State space의 입력, 상태, 출력 구조는 동일
    - Gate 구조의 추가
    - 4개의 MLP 구조

LSTM: Four Regulations

  • Step 1: 새로운 입력과 이전 상태를 참조해서
    - 이 정보를 얼마의 비율로 사용할 것인지를 결정
    - (또는) 얼마나 잊어버릴 것인가?

  • Step 2: 새로운 입력과 이전 상태를 참조해서
    - 이 정보들을 얼마나 활용할 것인가를 결정
    - (+) 어떤 정보를 활용할 것인가도 결정

  • Step 3
    - Step 1에서는 얼마나 잊어버릴까?
    - Step 2에서는 어람나 이용할까?
    - 이 둘을 적절히 섞는다.

  • Step 4: 일련의 정보들을 모두 종합해서 다음 상태를 결정


GRU: Simplification of LSTM

  • 방금까지 본 LSTM 모델: 너무 복잡함
    - GRU는 LSTM의 간소화 버전
    - Cell state가 없음

  • LSTM보다 파라미터 수가 적으므로 training time이 절약된다.

  • LSTM보다 성능이 좋은가? Task에 따라 천차만별
    - But LSTM과 GRU가 RNN보다는 확실한 성능을 보장한다.
profile
Data scientist 지망생

0개의 댓글