PYTHON/자연어

LSTM(Long Short-Term Memory)

죠으니 2022. 4. 12. 00:17

▶ 전통적인 RNN의 이러한 단점을 보완한 RNN의 일종

은닉층의 메모리 셀에 입력 게이트, 망각 게이트, 출력 게이트를 추가하여 불필요한 기억을 지우고, 기억해야할 것들을 정합니다.

LSTM은 은닉 상태(hidden state)를 계산하는 식이 전통적인 RNN보다 조금 더 복잡해졌으며 셀 상태(cell state)라는 값을 추가하였습니다.

긴 시퀀스(문장의 길이)의 입력을 처리하는데 탁월한 성능을 보입니다.

 각 게이트는 삭제 게이트, 입력 게이트, 출력 게이트라고 부르며 이 3개의 게이트에는 공통적으로 시그모이드 함수가 존재

시그모이드 함수를 지나면 0과 1사이의 값이 나오게 되는데 이 값들을 가지고 게이트를 조절

입력 게이트 : 현재 정보를 기억하기 위한 게이트

삭제 게이트 : 기억을 삭제하기 위한 게이트

   현재 시점 t의 x값과 이전 x시점 t-1의 은닉 상태가 시그모이드 함수를 지나게 됩니다. 시그모이드 함수를 지나면 0과     사이의 값이 나오게 되는데, 이 값이 곧 삭제 과정을 거친 정보의 양

   0에 가까울수록 정보가 많이 삭제된 것이고 1에 가까울수록 정보를 온전히 기억한 것

출력 게이트 : 현재 시점 t의 x값과 이전 시점 t-1의 은닉 상태가 시그모이드 함수를 지난 값