brunch

You can make anything
by writing

C.S.Lewis

by 이유민 Aug 24. 2021

13. RNN

Recurrent Neural Networks


Sequential 데이터

- input이 가변길이로 주어진다면?

- Sequential 데이터 : 가변길이

 ex) 순차적 데이터, 음성, 주식, test, 화학식

- 데이터 특징이 순서에 크게 의존

- 입력과 출력 모두 순차적 데이터의 형태로 나타날 수 있음

- 각 sequential task에 적합한 모델링 필요

1) one to many (이미지 캡셔닝)

2) many to one (뉴스 분류 / 감성분류)

3) many to many (번역)


Recurrent Neural Networks

- sequential 데이터를 다루기 위한 뉴럴 네트워크

- feed forward neural net work (사이클 x)

- Folded form vs unfolded form

- parameter sharing

- 히든레이어가 이전 히든레이어에 영향을 받기도!

- Loss function : 모든 time step에서 loss들의 합


Output Recurrence

- 다음 time step의 hidden state 가 이전 state의 output과 연관

- teacher forcing : training은 답을 알고 있으니 전 타임 output을 입력값으로 해 hidden layer에!

- hidden layer의 전타임 값이랑 동시에 고려하기도 함


Rnn with Fixed Length Input

- one to many model (모든 timestamp 마다 같은 input!)


Bidirectional Rnn

- 순방향, 역방향 정보도모두 고려

ex) 문장 중간 단어가 뻥 뚤리면 양방향 습득 해야함


Encoder-Decoder Architecture

- many to mant

- sequence to sequence

- context


Deep RNN

1) input to hidden

2) hiden to hidden

3) hidden to out put


Vashing Gradients

- backpropagation -> gradient 값 중ㅇ첩ㅂ되어 반복, 될때

- 절댓값이 1보다 작은 겨우 수렴 ,, 큰 경우 발산

- parameter sharing -> 같은 값 반복해서 곱해짐

- 멀리 있는 것드를 찾을때 (long-term dependency)


해결법 1 : LSTM

- 3개의 gate (0~1)

- 일반 rnn대비 4개의 파라미터 학습 필요


해결법 2: GRU

- 2개의 gate

- 일반 rnn대비 3개의 파라미터 학습


응용 : RNN을 이용한 언어모델

- 다음 단어 예측, 문장생성, 비지도학습

- SQuAD

- 번역 !

: attention mechanism

 - CNN+RNN







매거진의 이전글 12. CNN
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari