본문 바로가기
AI-driven Methodology/ANN

[ANN] 순환 신경망 (Recurrent Neural Network, RNN) (2)

by goatlab 2021. 12. 14.
728x90
반응형
SMALL

매개변수

 

순환 신경망의 매개변수 (가중치 집합)는 Θ = 𝐔𝐔,𝐖𝐖, 𝐕𝐕, 𝐛𝐛, 𝐜𝐜 이다.

 

  • 𝐔𝐔 : 입력층과 은닉층을 연결하는 p*d 행렬
  • 𝐖𝐖 : 은닉층과 은닉층을 연결하는 p*p 행렬
  • 𝐕𝐕 : 은닉층과 출력층을 연결하는 q*p 행렬
  • 𝐛𝐛, 𝐜𝐜 : 바이어스로서 각각 p*1과 q*1 행렬

 

RNN 학습이란 훈련 집합을 최적의 성능으로 예측하는 Θ 값을 찾는 일을 말한다.

 

가중치

 

𝐮𝐮𝑗𝑗 = 𝑢𝑢𝑗𝑗1, 𝑢𝑢𝑗𝑗2, ⋯ , 𝑢𝑢𝑗𝑗𝑑𝑑 는 𝐔𝐔 행렬의 j번째 행 (ℎ𝑗𝑗에 연결된 에지의 가중치들)

 

Vanishing Gradient Problem

 

https://www.kaggle.com/getting-started/118228

 

RNN 역시 경사하강법과 오류 역전파 (backpropagation)를 이용해 학습한다. 학습 데이터의 길이가 길어질수록 먼 과거의 정보를 현재에 전달하기 힘들기 때문에 역전파 도중 과거로 올라가면 올라갈수록 gradient 값이 소실 (0에 수렴)되는 문제가 발생한다 (Weight가 업데이트 되는 과정에서 gradient가 1보다 작은 값이 계속 곱해져, gradient가 사라지는 현상).

 

Gradient Exploding

 

 

1보다 큰 미분값을 100번 이상 곱하게 되면 Gradient exploding 현상이 발생한다. 새로운 weight 값이 기존의 weight 값과 크게 달라지며 (왔다갔다) 학습이 이루어지지 않는다.

 

장기 의존성 (Long-Term Dependency) 문제

 

https://velog.io/@nkw011/rnn

 

긴 순차 데이터에서 관련 요소가 멀리 떨어진 경우 영향이 감쇠하는 현상이 나타난다.

 

활성화 함수

 

 

RNN은 주로 tanh (하이퍼볼릭 탄젠트)를 활성화 함수로 사용한다. RNN의 Vanishing gradient 문제를 예방하기 위해서 gradient가 최대한 오래 유지될 수 있도록 해주는 역할로 tanh가 적합하기 때문이다.

728x90
반응형
LIST