ttening.log
로그인
ttening.log
로그인
RNN 첫걸음
pseeej
·
2021년 8월 8일
팔로우
0
Boostcamp AI tech
Mathematics
0
AI_Mathematics
목록 보기
9/9
Sequence 데이터 이해하기
소리, 문자열, 주가등의 데이터를 시퀀스 데이터로 분류
시퀀스 데이터는 독립동등분포(i.i.d) 가정을 잘 위배하기 때문에,
순서를 바꾸거나 과거 정보에 손실이 발생하면 데이터의 확률분포도 바뀜
- 개가 사람을 물었다 / 사람이 개를 물었다
Sequence 데이터 다루기
이전 시퀀스의 정보를 가지고 앞으로 발생할 데이터의 확률분포를 다루기
위해
조건부확률
이용
- 조건부확률은 과거의 모든 정보를 사용하지만, 시퀀스 데이터를 분석할 때
모든 과거 정보들이 필요한 것은 아님
시퀀스 데이터를 다루기 위해서는
길이가 가변적인 데이터를 다룰 수 있는 모델이 필요
고정된 길이 τ만큼의 시퀀스만 사용하는 경우, AR(τ), 자가회귀모델 (Autoregressive Model)
바로 이전 정보를 제외한 나머지 정보들
을 H_t라는 잠재변수로 인코딩해서 활용하는
잠재 AR모델
이용
-
잠재변수 H_t를 신경망을 통해 반복해서 사용
하여
시퀀스 데이터의 패턴을 학습
하는 모델을
RNN
Recurrent Neural Network을 이해하기
가장 기본적인 RNN 모형은 MLP(Multi Level Perception)와 유사한 모양
RNN은
이전 순서의 잠재변수와 현재의 입력을 활용
하여 모델링
- 이 모델은
과거의 정보를 다룰 수 없음
. 현재 시점만 가지고 예측을 해야 하기 때문
-
잠재변수인 H_t 복제하여 다음 순서의 잠재변수 인코딩
하는데 사용
RNN의 역전파는 잠재변수의 연결그래프에 따라 순차적
으로 계산 (Backpropagation Through Time, BPTT)
BPTT (BackPropagation Throuth Time)
BPTT를 통해 RNN의 가중치행렬의 미분 계산
-
시퀀스 길이가 길어질수록
표시된 항
불안정
해짐
기울기 소실의 해결책?
시퀀스 길이가 길어지는 경우 BPTT를 통한 역전파 알고리즘의 계산이 불안정해지므로,
길이를 끊는 것
이 필요. 이것을
truncated BPTT
-미래의 정보들 중에서 몇 개는 끊고, 과거의 정보에 해당하는 block 나눠서 back propagation 수행
이런 문제들 때문에 Vanilla RNN은
길이가 긴 시퀀스 처리에 문제
- 해결 위해 등장한 RNN 네트워크가
LSTM과 GRU
pseeej
세진니의 눈물 가득 블로그
팔로우
이전 포스트
CNN 첫걸음
0개의 댓글
댓글 작성