언어모델(Language Model, LM)이란
언어모델(Language Model, LM)은 언어라는 현상을 모델링 하고자 단어 시퀀스(문장)에 확률을 할당하는 모델이다.
언어 모델을 만드는 방법은 크게 통계를 이용한 방법과 인공 신경망을 이용한 방법으로 구분할 수 있다. 인공 신경망을 이용한 언어모델의 성능이 통계를 이용한 언어모델보다 더 성능이 좋기 때문에 일반적으로는 인공 신경망을 사용한 언어모델을 더 많이 사용한다.
추가로 언어모델에 -ing를 붙힌 언어 모델링(Language Modeling)은 주어진 단어들로부터 아직 모르는 단어를 예측하는 작업을 말한다.
단어 시퀀스에 확률을 할당하는 이유?
단어 시퀀스에 확률이 할당된다면 언어 모델은 주어진 단어 시퀀스 중에서 가장 자연스러운(확률이 높은) 시퀀스를 선택할 수 있다.
기계번역에서의 예시
예시로 "I am going to the bank"라는 텍스트를 한국어로 번역한다고 가정하겠다.
텍스트에서 bank는 은행, 강둑을 의미하기에 아래 두 가지의 번역 가능성을 고려해볼 수 있다.
"나는 은행에 간다"
"나는 강둑에 간다"
이 때 각각의 번역에 대해 모델은 문맥이 얼마다 자연스러운지 단어 시퀀스의 확률을 기반으로 적절성을 평가할 것 이며, 만일 문맥이 금융과 관련된 내용이라면 "나는 은행에 간다"라는 번역이 적절하다고 평가받을 것 이다.
오타교정, 음성인식 등에서도 위와 같은 방식으로 적절성을 평가한다.
조건부 확률로 표현한 단어 시퀀스의 확률
단어 시퀀스에 확률을 할당하기 위해서 가장 일반적으로 사용하는 방법은 이전 단어들이 주어졌을 때 다음 단어를 예측하도록 하는 것 이다.
단어 시퀀스의 확률
하나의 단어를$w$, 단어 시퀀스를 $W$라고 한다면, $n$개의 단어가 등장하는 단어 시퀀스 $W$의 확률은 다음과 같다.
$$P(W)=P(w_{1},w_{2},w_{3},...,w_{n})$$
다음 단어의 등장 확률
$n-1$개의 단어가 나열된 상태에서 $n$번째 단어의 확률은 다음과 같다.
$$P(w_{n}|w_{1},w_{2},w_{3},...,w_{n-1})$$
'AI인공지능' 카테고리의 다른 글
| 텍스트 전처리(Text preprocessing) (0) | 2024.08.13 |
|---|---|
| NLP (자연어 처리) 소개 (0) | 2024.08.09 |