시퀀스

순서가 존재하는 데이터

시계열

순서가 존재하지만 특별히 시간에 따른 의미가 존재하는 데이터

순환신경망(Recurrent neural network)

은닉층의 노드들은 어떠한 초깃값을 가지고 계산이 시작되고 첫 번째 입력값이 들어온 t=0 시점에서 입력값과 초깃값을 조합으로 은닉층의 값들이 계산되게 된다.

이 시점에서 결괏값이 도출되면, t=1 시점에서는 새로 들어온 입력값t=0시점에서 계산된 은닉층의 값과의 조합으로 t=1일때 은닉층의 값과 결괏값이 다시 계산되게 된다.

이러한 과정이 지정한 시간만큼 반복된다.

시간에 따른 역전파(backpropagation through time)

시간을 역으로 거슬러 올라가는 방식으로 각 가중치들을 업데이트

일정 시간 동안 모든 값이 계산되면, 모델을 학습하기 위해 결괏값과 목푯값의 차이를 손실함수를 통해 계산하고 역전파 해야 하는데, 기존의 역전파와 다르게 RNN은 계산에 사용된 시점의 수에 영향을 받는다.

t = 2 시점에서 발생한 손실은 t = 2,1,0 시점에 모두 영향을 준다.

t = 1 시점에서 발생한 손실은 t = 1,0 시점에 모두영향을 준다.

t = 0에 서 t=2까지 계산에 사용됐다면 그 시간 전체에 대해 역전파를 해야 하는 것이다.

시점 입력값 출력값
t=0 p y=target_0
t=1 y t=target_1
t=2 t o=target_2

15..PNG