728x90
언어 모델에 대해 이해하고, 통계 기반 언어모델의 한계점을 알아보자.
언어 모델(Language Model)이란?
- 문장과 같은 단어 *시퀀스에서 각 단어에 확률을 할당하여 컴퓨터가 처리를 할 수 있도록 하는 모델이다.
- 단어 시퀀스에 확률을 할당한다는 말의 의미를 이해하기 위해 예시를 들어보겠다.
어머니가 차려주신 저녁을
P(맛있게 먹었다.) | P(맛있게 하였다.)
위 예시에서 문맥에 맞는 문장은 왼쪽 문장이며 이에 왼쪽 문장에 높은 확률을 할당할 것이다
- 쉽게 말해 언어 모델은 기존의 데이터셋을 바탕으로 주어진 작업의 단어나 문장을 예측하는 작업을 의미한다.
*시퀀스(sequence): 연속적인 사건이나 순서
통계적 언어 모델(Statistical Language Model, SLM)이란?
- 통계적 언어 모델은 단어의 등장 횟수를 바탕으로 조건부 확률을 계산하는 언어 모델이다.
- 그렇기에 희소성 문제(sparsity problem)를 지니고 있는데 이는 아래 예시를 보고 이해해보자.
데이터셋에서 "1 times", "2 times", 등의 표현은 등장하지만 만약 7 times 라는 단어는 없다고 해보자
이 데이터 셋을 학습한 통계적 모델은 아래의 문장와 같은 만들어 내지 못한다.
"I studied this section 7 times"
7 이라는 숫자 뒤에 다음 times가 나올 확률을 학습하지 못했기 때문이다.
- 이러한 희소성 문제를 해결하기 위해 N-gram, back-off 와 같은 일반화 기법들이 고안되었다
N-gram 언어 모델(N-gram Language Model)이란?
- N-gram은 n개의 연속적인 단어 나열을 의미한다. 이미 가지고 있는 코퍼스에서 문장을 n개의 단어로 끊어 이를 하나의 토큰으로 간주하고 기존의 SLM의 한계를 극복한 모델이다.
- 하지만 이러한 N-gram도 어쩔수없이 희소성의 문제가 여전히 존재한다.
'AI > 딥러닝' 카테고리의 다른 글
장단기 기억망(Long-short Term Memory, LSTM)이란? (0) | 2022.05.14 |
---|---|
순환 신경망(Recurrent Neural Network)이란? (0) | 2022.05.13 |
Word2Vec(Word to Vector)란 무엇일까? (0) | 2022.05.11 |
원-핫 인코딩(One-Hot Encoding) 이란? (0) | 2022.05.06 |
자연어 처리(Natural Language Processing)와 토큰화(tokenization)란? (0) | 2022.05.04 |
댓글