Language Model

RNN을 많이 쓰게 되는 계기는 Language Model 사용하기 위해서이다.

Language Model 이라는 것은 우리에게 주어진 문장이 얼마나 그럴 듯한지 아닌지 판단하는 모델이라고 한다.

⇒ 단어 간의 조합과 순서를 고려하면서, 그럴 듯한 문장이구나 아니구나 판단

우리가 $m$개의 단어들이 존재할 때, $(w_1,...w_m)$

RNN

image.png

RNN의 특징

image.png

  1. RNN으로 무한히 많은 길이의 Input이 들어와도 Cover가 가능하다.

    1. 문장 길이가 10개인 것이 들어오든, 100개가 들어오든 구축할 수 있다.
    2. Regardless of the sequence length, the learned model always has the same input size
      1. 시퀀스의 길이에 상관없이, 학습 모델은 항상 같은 입력사이즈를 가진다.
  2. 파라미터 ($U,W,V$)가 Sharing된다.

    지금 들어온 정보와 과거의 들어온 정보를 더해 다음에 올 단어를 예측

image.png

image.png

$h_1$

image.png

$h_2$