본문 바로가기

Data/Data Science

[deeplearning.ai] Sequence Models

반응형

Recurrent Neural Network(RNN) Model

왜 RNN을 사용해야하는건지?

- Inputs, Outputs can be different lengths in different examples. (데이터의 고정적이지않은 길이에도 학습이 가능함)

- Doesn't share features learned across different positions of text. (특정위치에 특징점을 잡지않고 유동적이게 특징점을 잡아줌. 이건 CNN에도 동일하다)

 

Forward Propagation

forward propagation의 과정은 위와같고, 공식은 아래와같다. 기본적으로 제일처음의 activation함수값(a<0>)은 0으로 설정한다고한다.

그럼 들어있는 파라미터는 Wa,, ba, by인것같다.

a의 길이가 100이라면 Waa는 (100, 100) 크기가되고

x의 길이가 10000이라면 Wax는 (100, 10000) 크기가된다.

따라서 Wa는 두 Waa, Wax길이를 합친 (100, 10100)이 된다.

 

[Wax|Waa] = Wa 의 shape (100, 10100)

[a<t-1> , X<t>] 의 길이 (10100)

이렇게 해야지만 [Wax|Waa] * [a<t-1> , x<t>] 가 Waa * a<t-1> + Wax * x<t>와 동일하게된다

 

Backward Propagation

TBD

 

Summary of RNN types

Many to One => Sentiment Classification

One to many => Music Generation

Many to Many => Machine Translation - 앞부분은(출력이없는) encoder, 뒷부분(출력있는건) decoder

Vanishing gradients with RNNs

RNN은 모델의 깊이가 길어졌을때, back propagation에서 weight값이 너무작아지거나, 너무 커지는 현상이 생겨서 정확한 정보가 전달이 안되는(학습 능력이 저하되는) 한계점이있음. 따라서 GRU나 LSTM을 사용하게됨

 

Recurrent Neural Network(RNN), Gated Recurrent Unit(GRU), Long Short Term Memory(LSTM)

- RNN

- LSTM

- GRU

Word Embedding

문자를 표현하는 방법에는 one-hot encoding방법이외에, 해당단어가 주어진 데이터셋에서 얼마나 유의미하게 관계가있는지 변수로 나타내는 방법인 Word Embedding방법이있다

 

에를들어서

Man:Woman -> King:Queen 같이

Man과 King은 유사한 값을 갖게하고 Woman과 Queen은 유사한 값을 갖게하는것이다

 

반응형