clear_uncertainty

네이버 부스트캠프 모각공 캠페인 8일차 - RNN첫걸음 본문

네이버 부스트캠프 - AI Tech 3rd/핵심만 담은 AI 수학 지식

네이버 부스트캠프 모각공 캠페인 8일차 - RNN첫걸음

SOidentitiy 2021. 11. 17. 22:42
728x90

모든 설명 및 자료의 출처는 네이버 부스트코스의 <[부스트캠프  AI Tech 3기] Pre-Course>입니다.

(https://www.boostcourse.org/onlyboostcampaitech3/joinLectures/329424)

 

<핵심만 담은 AI 수학지식>

RNN 첫걸음

 

지금까지 배웠던 CNN과 다르게 시퀀스 데이터에 적용됩니다.

 

시퀀스 데이터

 

소리, 문자열, 주가 등의 데이터를 시퀀스(sequence) 데이터로 분류합니다.

시퀀스 데이터는 데이터동등분포(i.i.d.) 가정을 잘 위배하기 때문에 순서를 바꾸거나
과거정보에 손실이 발생하면 데이터의 확률분포도 바뀌게 됩니다.

이전 시퀀스 정보를 가지고 앞으로 발생할 데이터의 확률분포를 다루기위해 조건부확률을 이용할 수 있습니다.

시퀀스 데이터를 다루기 위해선 길이가 가변적인 데이터를 다룰 수 있는 모델이 필요합니다.

 

Recurrent Neural Network 이해하기

 

가장 기본적인 RNN 모형은 MLP와 유사한 모양입니다.

위와 같은 모델은 현재의 데이터로만 예측하기 때문에 과거의 정보를 다룰 수 없습니다.

 

RNN은 이전 순서의 잠재변수와 현재의 입력을 활용하여 모델링합니다.

 

RNN의 역전파는 잠재변수의 연결그래프에 따라 순차적으로 계산합니다.

 

BPTT

 

BPTT(Backpropagation Through Time) 를 통해 RNN의 가중치행렬의 미분을 계산해보면 아래와 같이 미분의 곱으로 이뤄진 항이 계산됩니다.

 

시퀀스 길이가 길어지는 경우 BPTT를 통한 역전파 알고리즘의 계산이 불안정(=기울기 소실)해지므로 길이를 끊는 것이 필요합니다.

 

이를 truncated BPTT라 부릅니다.

 

이런 문제들 때문에 Vanilla RNN은 길이가 긴 시퀀스를 처리하는데 문제가 있습니다.

 


출처

 

[부스트캠프 AI Tech 3기] Pre-Course

 

728x90