boost-devs / peer-session

🚀 부스트캠프 AI Tech 1기 U-Stage 4조 피어 세션 자료/질문 모음 (archived)
8 stars 2 forks source link

[펭귄] LSTM과 GRU 비교 #56

Closed CoodingPenguin closed 3 years ago

CoodingPenguin commented 3 years ago

🙌 질문자


❓ 질문 내용


jjerry-k commented 3 years ago

참고자료!

CoodingPenguin commented 3 years ago

RNN의 문제점

우선 cell state가 왜 생겼는지 알기 위해서는 RNN의 문제점이 무엇인지 다시 한 번 짚어보아야 합니다. RNN의 가장 큰 문제점은 꽤 오래된 과거 시점의 정보를 기억하지 못한다는 것에 있습니다. 아래에서 4번 순환했을 때의 식을 보면, 이전 과거 정보였던 h_0은 활성화함수에 의해 거의 미미해지는 것을 볼 수 있습니다.

image

해결책: 장기기억장치 Cell State

그래서 LSTM에서 고안한 것인 cell state입니다. RNN은 단순히 hidden state만 넘겨줬다면 장기 기억을 위해서 cell state를 생성해서 넘겨주게 된 것입니다. 그 과정에서 forget gate와 input gate로 적절히 필터링하고 추가하여 넘겨주게 됩니다.

이제 GRU는 LSTM을 조금 더 효율적으로 만든 버전이라고 보면 됩니다. LSTM에 비해 파라미터 수가 적어 조금 더 효율적인 학습이 가능합니다. 이 때, hidden state가 LSTM의 hidden state와 cell state의 합쳐진 버전이라 볼 수 있습니다. 성능에서 봤을 때 LSTM이나 GRU나 좋은 성능을 낸다고 합니다.


참고자료

제리님 자료에 추가로 다음의 자료도 참고하였습니다.