RNN 2

[자연어처리, CS224N] #6 - LSTM

🔹 시작하며, 흐름 정리 Lecture 5에서는 RNN-LM에 대해 배웠다! RNN은 input 길이에 제한이 없었고, 매 step마다 같은 Weight를 적용했다. 각 step에서 ouput을 만드는 건 선택이었다. RNN을 이용하니 기존 LM의 문제들을 많이 극복했지만, Vanishing gradient problem이라는 심각한 문제가 있었다. 그래서 등장한 것이 이번 글에서 알아볼 LSTM이다. LSTM은 RNN에서 메모리를 분리해보면 어떨까?라는 질문으로부터 등장했다. RNN이 가지고 있는 메모리는 장기기억을 할 수 없기 때문이다. 🔹 LSTM이란? LSTM이란 장단기 메모리(Long Short-Term Memory RNNs)이다. time step마다 hidden state $h^{(t)}$ ..

자연어처리 2024.03.29

[자연어처리 CS224N] #5-2 Neural Language Model, Perplexity

🔷 시작하며, 흐름 정리 지난 포스팅에서 우리는 n-gram Language Model에 대해서 알아보았다. 이번 글에서 알아볼 것은 n-gram Language Model이 가지고 있는 치명적인 단점을 극복시켜줄 Neural Language Model이다. n-gram Language Model의 문제점부터 복습해보자. n-gram Language Model은 앞의 n-1개의 단어만을 보고 n번째 단어를 예측한다. 예를 들어 "students opened their"이 1000번 나왔고, "students opened their exams"가 100번 나왔다면, "students opened their" 다음에 "exams"가 나올 확률은 0.1(100/1000)이다. 따라서 n이 커질 수록 그 특정 ..

자연어처리 2024.03.26