Loading...
2022. 3. 16. 00:39

RNN을 개선한 LSTM과 GRU 구조 알아보기

1. LSTM 일반적인 RNN(Vanilla RNN)의 구조 LSTM(Long Short Term Memory)의 구조 조금 더 자세히 살펴보면 이상한 것이 여러가지 있다 LSTM의 핵심 idea는 cell state에 있다 공장에서 컨베이어벨트 박스가 흘러들어가는 모습을 상상해보자. 노동자들이 박스 하나 집어서 이상없는지 확인하고 다시 올려서 그대로 보내듯이 이전에 가공한 정보를 그대로 흘려보내는 컨베이어벨트가 cell state이다. 1. forget gate 이제 입력 $x_{t}$와 이전 hidden state($h_{t-1}$)에서 나온 조합된 잠재정보가 흘러들어가면서 forget gate에서는 어떤 정보를 버릴지 결정한다 버려야할 정보는 sigmoid에 의해 0과 1 사이 값으로 압축이 됨 2..

2022. 2. 16. 19:10

RNN의 기울기 소실(gradient vanishing) 문제

1. RNN의 역전파(Backpropagation through time) 빨간색은 그래디언트가 흘러들어가는 방향이다. Hidden layer에 대한 그래디언트 하나를 직접 계산해보면 빨간색 부분에 주목해보자. f의 미분값이 1보다 크면 곱해지면서 점점 커질 것이고 gradient exploding 현상이 일어난다. 즉 그래디언트가 매우 커져서 학습이 전혀 안된다는 것. 반대로 f의 미분값이 1보다 작으면 곱하면서 점점 작아질 것이고 gradient vanishing 현상이 일어난다. gradient가 0이 되어버리니 학습이 안된다는 소리임. 수식으로 더 써보면 그림과 같다. 잠재변수가 가중치행렬과 활성화함수의 반복적인 곱으로 이루어진다. 직관적으로 활성화함수가 시그모이드라면 정보를 압축하는 역할을 하는..