본문 바로가기
인공지능

n-gram과 n-gram 언어 모델

by judy@ 2023. 5. 31.

n-gram

주어진 텍스트 또는 음성 샘플에서 연속적으로 배열된 n개 항목을 말함. 항목은 음절, 문자, 단어 쌍이 될 수 있고, 일반적으로 코퍼스에서 수집됨. shingles이라고 불리기도 함.

 

n에 따라 다음과 같이 불리기도 함

  • n=1: unigram
  • n=2: bigram 또는 digram
  • n=3: trigram
  • four-gram, give-gram…

참고

계산 생물학에서는 k-mer라고 부름. 1-mer, 2-mer, 3-mer 또는 monomer, dimer, trimer, tetramer, pentamer, etc..

n-gram model

카운트에 기반한 통계적 접근을 사용하는 SLM(Statistic language model)의 일종. 모든 단어를 고려하는 것이 아니라, 일부 단어만 고려.

n-1개의 단어에 의존하여 그 다음 나올 단어를 예측. 만약 ABC가 1000번, ABD가 500번 등장하면, AB뒤에는 C가 올 것으로 예측하게 됨.

 

challenges

  • n-1개만 고려하기 때문에, 그보다 한참 앞, 또는 뒤의 문맥이 전혀 고려되지 않을 수 있고, 이에 따라 전체 문장을 고려한 모델에 비해 정확도가 떨어질 수 밖에 없음.
  • n을 크게 잡으면 희소 문제가 심각해지고, 작게 잡으면 문맥을 고려하지 못해 정확도가 떨어짐. n은 최대 5를 넘으면 안된다고 함.

 

참고

반응형