1) RNN 첫걸음
- 시퀀스 데이터의 개념과 특징, 그리고 이를 처리하기 위한 RNN을 소개
- RNN에서의 역전파방법인 BPTT와 기울기 소실문제에 대해 설명
- 시퀀스 데이터만이 가지는 특징과 종류, 다루는 방법, 그리고 이를 위한 RNN(Recurrent Neural Network)의 구조를 앞선 배웠던 CNN이나 다른 MLP(Multi Layer Perceptron)와 비교하면서 공부하자
- RNN에서의 역전파 방법인 BPTT(Back Propagation Through Time)를 수식적으로 이해하고, 여기서 기울기 소실문제가 왜 발생할 수 있는지, 이에 대한 해결책은 어떤 것들이 있는지를 집중
가장 기본적인 RNN 모형은 MLP와 유사한 모양이다
RNN은 이전 순서의 잠재변수와 현재의 입력을 활용하여 모델링 한다
RNN의 역전파는 잠재변수의 연결그래프에 따라 순차적으로 계산한다
이를 Backpropagation Through Time (BPTT) 이라 하며 RNN의 역전파 방법이다
잠재 변수에 들어오는 gradient는 2가지이다
1) 다음 시점에서의 잠재변수에서 들어오게되는 gradient vector
2) 출력에서 들어오게되는 gradient vector
가장 주의해야할 점은 gradient 가 0으로 줄어드는 즉 gradient 가 vanishing (기울기 소실) 하는 현상이 굉장히 큰 문제가 된다
시퀀스 길이가 길어지는 경우 BPTT를 통한 역전파 알고리즘의 계산이 불안정 해지므로 길이를 끊는 것이 필요하다
이런 문제들 ㄸ문에 Vanilla(기본적인) RNN은 길이가 긴 시퀀스를 처리하는데 문제가 있다