Sigmoid와 요소 단위 곱을 게이트로 사용하여 얼마나 많은 정보가 통과할지 제어한다.
Reset Gate 와 Update Gate 를 사용한다. 두 Gate는 공식이 같지만 가중치와 사용 용도가 다르다.
Reset Gate는 과거 메모리를 얼마나 잊을지 결정하며, 새로운 hidden state 를 계산할 때 사용한다.
Update Gate는 과거 메모리를 얼마나 미래로 유지할지 결정하며, 최종 hidden state 를 계산할 때 사용한다.
LSTM은 Gradient Vanishing을 해결하고 Long Term Dependency를 포착한다.
Gated RNN은 신경망이 오래된 상태를 잊도록 하면서 동시에 새로운 정보를 축적할 수 있게 한다. Gate는 어떤 정보를 읽을지/지울지/쓸지를 제어하고, 열림 (1), 닫힘 (0), 또는 그 사이 값이 될 수 있다.
입력 데이터는 Input Gate, Forget Gate, Output Gate를 거친다. 여기에 Memory Cell 가 추가된다. 모든 게이트는 시그모이드 함수이며, Candidate Cell 는 tanh 함수를 거친다. 모든 게이트와 셀은 각각 고유한 가중치를 가지며, 연산은 요소 단위로 이루어진다.
Forget Gate는 과거 상태 중 불필요한 history를 지우고, Input Gate는 새로운 정보를 저장한다. Cell은 이 두 가지를 결합하여 셀 상태 값을 업데이트한다. 이때 더하기 연산을 사용해 정보 추가가 용이하다. Output Gate는 셀 상태의 필터링된 버전을 생성해 다음 시점으로 전달한다. Sigmoid Layer는 어떤 값을 업데이트할지, Tanh Layer는 어떻게 업데이트할지를 결정한다. Forget Gate가 1로, Input Gate가 0으로 초기화되면, 셀 정보는 무한히 유지된다.

두 모델 모두 게이트를 사용한다.
그러나 GRU는 Hidden State를 사용하여 Long/Short Term Dependency를 모두 표현하고, LSTM은 Long-Term Memory를 담당하는 Cell State와 Short-Term Memory를 담당하는 Hidden State를 구분한다.
GRU는 파라미터 수가 적고 학습이 빠르다.
어떤 모델이 항상 낫다는 증거는 없으나, 이론적으로 LSTM이 더 긴 시퀀스를 기억할 수 있어 Long-Range Correlation 모델링에 더 유리하다.