크크루쿠쿠

[NLP] LSTM and GRU 본문

DeepLearning/부스트캠프 AI Tech

[NLP] LSTM and GRU

JH_KIM 2021. 9. 7. 14:36

Long Short-Term Memory (LSTM)

 

기존 Vanilla RNN 에서 가지는 문제를 해결하기 위해 나온 model

기존 RNN 식에서 Ct 라는 변수가 추가됨 -> cell state

- i : input gate

sigmoid를 거치고 나옴

- f : forget gate

sigmoid를 거치고 나옴

element wise로 곱해줌으로써 얼만큼만 넘겨줄지

- o: output gate

sigmoid를 거치고 나옴

hidden state 만들 때 사용

- g : gate gate

input gate와 gate gate 통과하는 모습

tanh를 거치고 나옴

input gate와 gate gate를 곱해 Ct를 구해줌

 

Gated Recurrent Unit (GRU)

What is GRU?

cell state vector와 hidden state vector를 일원화 하여서 hidden state vector만 존재한다.

input gate(z) 만 사용하고 forget gate는 1에서 뺀(1-z) 값 만을 사용한다.

 

Backpropagation in LSTM/GRU

덧셈 연산으로 인해 gradient의 큰 변환 없이 넘겨줄 수 있음.

 

Summary on RNN/LSTM/GRU

- RNNs 는 구도 디자인에서 매우 유연함

- Vanilla RNNs는 간단하지만 문제가 있음. -> gradient vanishing/exploding

-  그래서 LSTM이나 GRU 사용

Comments