[논문 리뷰] Independently Recurrent Neural Network (IndRNN): Building A Longer and Deeper RNN
IndRNN는 층 내에서 독립 뉴런을 도입하여 재귀 가중치를 조절하고 ReLU 같은 비포화 활성화 사용으로 훨씬 더 길고 깊은 RNN 학습 가능. 전통 RNN과 LSTM 대비 긴 시퀀스 모델링 및 깊은 아키텍처에서 우수성 시연.
Recurrent neural networks (RNNs) have been widely used for processing sequential data. However, RNNs are commonly difficult to train due to the well-known gradient vanishing and exploding problems and hard to learn long-term patterns. Long short-term memory (LSTM) and gated recurrent unit (GRU) were developed to address these problems, but the use of hyperbolic tangent and the sigmoid action functions results in gradient decay over layers. Consequently, construction of an efficiently trainable deep network is challenging. In addition, all the neurons in an RNN layer are entangled together and their behaviour is hard to interpret. To address these problems, a new type of RNN, referred to as independently recurrent neural network (IndRNN), is proposed in this paper, where neurons in the same layer are independent of each other and they are connected across layers. We have shown that an IndRNN can be easily regulated to prevent the gradient exploding and vanishing problems while allowing the network to learn long-term dependencies. Moreover, an IndRNN can work with non-saturated activation functions such as relu (rectified linear unit) and be still trained robustly. Multiple IndRNNs can be stacked to construct a network that is deeper than the existing RNNs. Experimental results have shown that the proposed IndRNN is able to process very long sequences (over 5000 time steps), can be used to construct very deep networks (21 layers used in the experiment) and still be trained robustly. Better performances have been achieved on various tasks by using IndRNNs compared with the traditional RNN and LSTM. The code is available at https://github.com/Sunnydreamrain/IndRNN_Theano_Lasagne.
연구 동기 및 목표
- 전통 RNN이 gradient vanishing/exploding으로 인해 장기 의존성 학습에 제한이 있음을 동기화.
- 같은 층의 뉴런이 서로 독립적이고 층 간 연결이 있어 훈련 가능성과 해석성을 개선하는 IndRNN 제안.
- IndRNN은 비포화 활성화(ReLU 등)를 사용할 수 있고 깊은 잔차 아키텍처를 지원한다고 보여줌.
- 실험을 통해 IndRNN이 긴 시퀀스 및 깊은 모델이 필요한 작업에서 전통 RNN 및 LSTM보다 우수하다는 것을 입증.
제안 방법
- IndRNN 정의: h_t = sigma(W x_t + u ⊙ h_{t-1} + b), 여기서 u는 재귀 가중치 벡터이고 ⊙는 Hadamard 곱.
- IndRNN에 대한 시점역전파(backpropagation through time)는 u^{(T-t)} 및 sigma' 항을 포함하는 그래디언트를 산출하여 그래디언트 흐름의 명시적 규제를 가능하게 한다.
- 그래디언트 소실/폭주 방지를 위한 |u_n|를 적합한 범위로 제약하여 기억 보유 한계를 도출한다.
- Residual 연결을 포함한 여러 IndRNN 층을 쌓아 아주 깊은 네트워크를 구성하는 것을 입증.
- 변이 Convolutional 버전으로 확장하고 배치 정규화 및 잔차 블록을 통합하여 안정성과 성능을 높인다.
- 층 간 독립성으로 인한 뉴런 동작 해석에 대한 해석 제공.
실험 결과
연구 질문
- RQ1IndRNN이 전통 RNN 및 LSTM보다 긴 의존성을 유지할 수 있는가?
- RQ2같은 층에서 뉴런을 독립시키고 재귀 가중치를 규제하면 더 깊고 긴 네트워크의 학습이 가능해지는가?
- RQ3비포화 활성화(ReLU 등)가 그래디언트 흐름 및 학습 견고성에 어떤 영향을 미치는가?
- RQ4장시간 시퀀스, 깊은 아키텍처 및 다양한 도메인(언어 모델링, MNIST, 행동 인식)에 대해 IndRNN이 어떤 성능 향상을 보이는가?
주요 결과
- IndRNN은 매우 긴 시퀀스(5000 타임스텝 이상)를 처리할 수 있다.
- IndRNN은 매우 깊은 네트워크(언어 모델링에서 21층까지) 가능하게 한다.
- ReLU로 구성된 IndRNN은 안정적으로 학습하고 전통 RNN 및 LSTM보다 여러 작업에서 우수하다.
- 독립적인 뉴런을 가진 두 계층 IndRNN은 적절히 배치하면 전통 RNN 동작을 나타낼 수 있다.
- 잔차 IndRNN 아키텍처는 더 깊은 네트워크의 학습을 촉진하고 성능을 향상시킨다.
- IndRNN은 순차 MNIST, 문자 수준 및 단어 수준의 언어 모델링, NTU RGB+D의 스켈레톤 기반 동작 인식에서 강력한 결과를 달성한다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.