RNN Basic

bolim·2022년 1월 21일
0

Math

목록 보기
8/9

RNN Basic

시퀀스 데이터

먼저 시퀀스 데이터란 소리, 문자열, 주가 등의 데이터처럼 나열된 데이터를 말한다.

  • 이벤트의 순서가 중요하다는 특징이 있다.
  • 독립동등분포가정을 잘 위배하기 때문에 순서를 바꾸거나 과거정보에 손실이 발생하면 데이터의 확률분포도 바뀐다.

조건부 확률을 이용해 앞으로 발생할 데이터의 확률분포 다룬다.

P(Xi,,Xt)=P(XtXi,,Xt1)P(Xi,,Xt1)=s=1tP(XsXs1,,X1)P(X_i,\cdots ,X_t) = P(X_t|X_i,\cdots ,X_{t-1})P(X_i,\cdots ,X_{t-1}) \\ = \prod_{s=1}^{t}P(X_s|X_{s-1},\cdots ,X_{1})

*** 과거의 모든 정보를 가지고 예측할 필요 없다.

AR(τ)AR(\tau) : 고정된 길이만큼의 시퀀스만 사용하는 경우를 표시한다.

W(2),WX(1),WH(1)W^{(2)}, W_X^{(1)}, W_H^{(1)}은 시간 t에 따라 변하지 않는다.

t에 따라 변하는 것은 잠재변수, 입력, 데이터이다.

BPTT

RNN의 역전파 방법이다.

잠재변수의 연결 그래프에 따라 순차적으로 계산한다. ( 현재에서 과거까지 )

\prod부분은 시퀀스 길이가 길어질수록 불안정해지기 쉽다. 값이 엄청 커지거나 작아질 수 있다.

Gradient Vanishing 해결책

위 처럼 역전파 알고리즘의 계산이 불안정해지면 기울기 소실 문제가 나온다.

이 경우 길이를 끊으면서 해결할 수 있다.

이것이 truncated BPTT이다.

추가로 LSTM, GPU같은 새로우 RNN 네트워크도 나왔다.

profile
나는야 호기심 많은 느림보🤖

0개의 댓글