반응형
GRU
이전 글에서 게이트가 추가된 RNN으로 LSTM에 대한 글을 썼었는데, GRU는 이 게이트를 쓴다는 개념은 유지하고, 매개변수를 줄여 계산 시간을 줄여줍니다.
LSTM과 비교해보면, 기억 셀을 사용하지 않고 은닉 상태만을 사용합니다. 게이트를 추가하기 전까진, 기본적인 RNN과 같은 모습입니다.
GRU에는 r과 z라는 두 개의 게이트를 사용하는데 r은 reset, z는 update게이트입니다. LSTM에 비해 게이트 수가 줄었고, 기억 셀을 사용하지 않는다는 점에서 파라미터 수와 연산량이 확실히 줄 것 같다는 생각입니다! 그리고 reset과 update라는 정말 필요한 게이트만을 설정해준 느낌입니다.
우선 reset게이트는 과거에서 흘러온 은닉 상태를 얼마나 무시할지 정합니다. 한편, update게이트는 은닉 상태를 갱신하는 게이트입니다. update게이트의 출력값인 z를 보면, 분기되어 LSTM의 forget과 input 게이트의 역할을 동시에 합니다.
최근 연구에서는 LSTM 또는 그 변종이 많이 사용됩니다. 반면 GRU는 파라미터가 적고 연산량이 적어 데이터셋이 작거나 반복 시도를 많이 해야 할 경우 더 적합할 수 있다고 합니다. GRU가 LSTM을 더 단순하게 만든 모델인 것을 생각해봤을 때, LSTM의 변종 모델들에 대해서 더 알아봐야할 것 같습니다!
반응형
'AI_basic > Deeplearning' 카테고리의 다른 글
[Deeplearning Part.8-5] 어텐션 (0) | 2022.01.27 |
---|---|
[Deeplearning Part.8-3] seq2seq (0) | 2022.01.25 |
[Deeplearning Part. 8-2] LSTM (0) | 2022.01.25 |
[Deeplearning Part.8-1] RNN 기본구조 (0) | 2022.01.24 |
[Deeplearning Part.7-1] 자연어 처리와 Word Embedding (0) | 2022.01.22 |