Sequential data : sequence를 갖고있는 data >> 이전 data가 이후 data에 영향을 미침

RNN(Recurrent Neural Network)
- 딥러닝 구조 중 하나
- 가변적 길이의 연속적인 시퀀스 input 데이터를 처리하기 위해 고안된 모델
- 이웃한 데이터간의 연관성을 표현
- '기억'을 뜻하는 'hidden state'를 가지고 있음
- 새로운 입력이 들어올 때마다 기억을 조금씩 수정
- RNN은 추가된 input(xt)과 과거의 정보(ht-1)을 조합해, 새로운 정보(ht)를 생성
- 원하는 시점에 생성된 정보(ht)를 통해 task를 수행 >> task에 따라서 yt가 필요한 / 필요하지 않은 경우가 달라짐
- input과 이전 state를 선형변환하여 결합한 후 activation으로 주로 tanh함수 적용
tanh : 같은 w의 중첩연산인 recurrent 구조로 인한 발산의 우려를 막아줌


RNN예시
test단계에서는 다음 단어를 추론하고 해당 단어가 다음의 입력으로 들어감

Bidirectional RNN -앞쪽에 들어온 입력의 내용흔 뒤로 인코딩 과정이 진행될수록 희석된다. >> 반대방향으로도 인코딩을 진행