본문 바로가기

Paper Review

Paper Review #2 - Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling

Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling (2014.12.11)
https://arxiv.org/abs/1412.3555

 

Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling

In this paper we compare different types of recurrent units in recurrent neural networks (RNNs). Especially, we focus on more sophisticated units that implement a gating mechanism, such as a long short-term memory (LSTM) unit and a recently proposed gated

arxiv.org

 

Research direction & Motivation


Main Purpose

Comparison between LSTM vs GRU in empirical usage and evaluation

 전통적인 RNN은 정보의 장기적인 보존이 어려우며, sequence가 길어질수록 gradient vanishing 문제가 자주 발생한다. 이를 보완하기 위해 gate unit을 사용한 새로운 형태의 activation function을 사용한 LSTM, GRU가 도입되었다. Bahdanau et al. [Neural Machine Translation by Jointly Learning to Align and Translate 2014] 에서 두가지 unit은 machine translatation 분야에서 상등한 성과를 거두었으나, 다른 분야에서도 그와 같은 효과를 거두는지는 아직 알려진바가 명확하지 않다. 따라서 본 논문은 신경망을 적용할 수있는 여러 분야 중 Music과 Speech signal에서도 해당 방법들이 효과적인지 검토하는 동시에 LSTM과 GRU의 empirical한 측면에서의 비교를 제안했다.

 

Comparision


LSTM

 

 LSTM은 RNN의 hidden state에 cell-state를 추가한 구조로 총 3개의 gate를 갖고있으며 이 gate들을 통해 저장될 정보를 적절히 조절한다.

 

- Forget gate -

 ‘과거 정보를 잊기’를 판단하기 위한 gate이다. 이전 상태의 정보와 새로 입력된 정보들을 받아 sigmoid를 취해준 값이 바로 Forget gate가 내보내는 값이 된다. Sigmoid 함수의 출력 범위는 0에서 1 사이이므로 값이 0이라면 이전 상태의 정보는 잊고, 1이라면 이전 상태의 정보를 온전히 기억하게 된다.

 

- Input gate -

‘현재 정보를 기억하기’ 위한 gate이다. 마찬가지로 이전상태의 정보와 새로 입력된 정보들을 받아 sigmoid를 취하고, 또 같은 입력으로 tanh를 취해준 다음 Hadamard product 연산을 한 값이 바로 Input gate가 내보내는 값이 된다. 이에 따라 현재 정보를 반영할지를 결정하게된다.

 

- Output gate -

최종적으로 해당 gate를 통해 값이 산출된다. 즉, 과거의 정보에 대한 기여도를 Forget gate를 통해서 결정하고, 현재의 Input값 반영여부는 Input gate에서 결정되고, 최종적으로 더해져서, 다음 cell state의 입력값으로 들어가게된다. 이에 따라 과거로부터 오는 정보들을 더 오래 보존할 수 있었으며 RNN이 가지는 고질적인 한계를 피할 수 있다는 장점이 있다.

 

 

GRU

 

 GRU는 LSTM을 재구성한 architecture로 총 2개의 gate를 갖고있다. 따라서 연산 속도가 LSTM에 빠르며 가볍다.

 

- Update gate - 

새로운 정보의 구성비를 결정하는 gate이다. 현재 timestep에 input 된 정보와 과거 hidden state를 고려해 새로운 정보를 얼마나 현재 hidden state에 반영할지를 결정한다. 해당 gate는 LSTM에서의 Forget gate와 Input gate를 합쳐놓은 형태라고 할 수 있으며 Update gate를 통해 위 두개의 gate를 모두 제어하게된다. 이에따라 이전 정보에 대한 망각과 새로운 정보에 대한 수용이 동시에 처리된다. zt가 1을 출력하게되면 Forget gate가 열리고 Input gate가 닫히며, 0일때는 그 반대 작용이 일어난다

 

- Reset gate - 

 과거의 정보를 삭제하지는 않으며 현재 timestep에 생성되는 정보에 얼만큼 반영할지를 결정한다. 현재 timestep의 정보와 과거의 정보를 고려해 과거의 정보에 대한 망각비율을 결정하며 LSTM의 Forget gate와 다르게 새로운 정보의 구성에만 영향을 미친다는 점에서 차이가 있다.

 

 

LSTM vs GRU

 

1. 정보량의 조절

  • LSTM : Output gate를 통해 현재 갖고있는 정보를 다음 timestep에 반영하는 양을 조절
  • GRU : 현재 갖고있는 모든 정보를 다음 timestep에 반영

2. 정보의 망각과 갱신

  • LSTM : 과거 정보를 얼마나 잊을지를 Forget gate가, 새로운 정보를 얼마나 수용할지를 Input gate가 결정하며 둘은 독립적으로 분리
  • GRU : 정보의 망각과 갱신이 Update gate를 통해 일괄적으로 처리. 과거의 정보에 대한 망각과 새로운 정보에 대한 갱신이 독립적이 아닌 동시에 발생

 

Contribution


Experiments setting

 

 실험에서 데이터는 두 종류를 사용했는데, 각각 polyphonic music modeling을 위한 데이터와 speech signal 데이터를 사용했다. 전자로는 [Boulanger-Lewandowski et al., 2012 - Modeling Temporal Dependencies in High-Dimensional Sequences: Application to Polyphonic Music Generation and Transcription] 에서 사용된 Nottingham, JSB Chorales, MuseData, Piano-midi 라는 aduio 데이터를 선정했다. 후자로는 Ubisoft 데이터를 선정했다.

 

 Audio 데이터는 각각 93, 96, 195, 108개의 dimension을 가진 binary vector형식이며 output layer의 activation function으로 sigmoid를 사용했다.

 Speech 데이터는 각 sequence가 1차원으로 정의된 audio signal이며 20개의 samples를 이후 10개를 예측하도록 모델을 구성했다. 그리고 output layer에서는 20개에 대해서 Gaussians 혼합분포를 사용했다.

 

 각 데이터에 대해 tanh-RNN, GRU, LSTM 을 사용한 모델들의 성능을 비교했다. 모델 설계시 unit수를 조절해 최대한 유사한 parameter 수를 갖도록 설계했다. Overfitting을 방지하기 위해 충분히 작은 규모의 모델을 구축했고 negative log-probabilities 를 평가지표로 선정해 성능을 평가했다.

 

 

Result

 

 

 제시된 성능 평가표에 따르면 Music Datasets에서는 GRU가 가장 뛰어난 성능을 보였고 tanh-RNN과 LSTM은 비등한 성능을 보였다. 반면 Speech에서는 LSTM과 GRU 모두 tanh-RNN보다 월등히 높은 성능을 보인 것을 알 수 있다. 학습 속도 측면에서도 epoch와 clock time을 기준으로 비교했는데, LSTM과 GRU 모두 학습시 수렴하는 속도가 빠르며 안정적인 learning curve를 형성하는 것을 보여주어 gate unit의 장점을 명확하게 보여준다. 이로써 본 논문에서는 gate unit을 사용한 모델이 music과 speech 분야에서 전통적인 RNN 모델보다 우수성을 가지는 것을 명백하게 증명했다.

 

 논문에서는 기존의 문제를 위해 새롭게 제시한 방법은 없으나, 단순히 stochastic gradient descent보다 더 좋은 학습 알고리즘을 개발하는 것 초점을 맞추기보다는 LSTM과 GRU와 같이 gate unit을 활용한 sophisticated한 activation function의 구축을 제안했다.