Language Model

단어의 시퀀스(문장)에 대해서, 얼마나 자연스러운 문자인지를 확률을 예측하는 모델

주어진 단어의 시퀀스에 대해, 다음에 나타날 단어가 어떤 것인지를 예측하는 작업을 Language Modeling이라고 한다.

image.png

해당 식을 위의 예시에 적용시켜 보면, $𝑥_1,𝑥_2,𝑥_3,𝑥_4$는 각각 the, students, opened, their에 해당하게 되고, 빈칸에 오는 단어는 𝑥5에 해당하게 된다. LM에서는 $𝑥_1 \cdot \cdot \cdot 𝑥_𝑡$까지 주어졌을 때, 다음에 오는 단어인 $𝑥_{𝑡+1}$이 나타날 확률을 구하게 된다.

image.png

우리가 예측하려는 단어 x_{t+1}는 현재 존재하는 vocabulary 리스트 중에서 선택하게 되므로, classification task라고도 볼 수 있다. LM을 이용해서 전체 text에 대한 probability를 계산할 수 있는데, 식은 다음과 같다.

image.png

전체 텍스트를 구성하는 $𝑥_1 \cdot \cdot \cdot 𝑥_t$가 나타날 확률은 각각 $𝑥_1$만 나타날 확률, $x_1$이 주어졌을 때 $x_2$가 나타날 확률 ,... , $x_1 \cdot \cdot \cdot x_{t−1}$이 주어졌을 때 $x_t$가 나타날 확률의 전체 곱으로 나타낼 수 있고, 해당 값들은 LM을 통해서 구할 수 있다.

우리는 기계번역, 음성인식, 자동완성 기능, 인터넷 검색 등의 Language Model을 매일 사용한다.

image.png

N-gram Language Model

Neural Network 이전에 사용된 Language Model

예측에 사용할 앞 단어들의 개수를 정하여 모델링하는 방법