더북(TheBook)

Note ≡ n-그램


n-그램(n-gram)은 n개의 어절/음절을 연쇄적으로 분류하여 그 빈도를 따집니다. n이 1일 때를 유니그램(unigram)이라 하고, n이 2일 때를 바이그램(bigram)이라 하고, n이 3일 때를 트라이그램(trigram)이라고 합니다.

예를 들어 다음 문장에 대한 바이그램을 살펴볼 수 있습니다.

“소파 위에 있는 고양이가 낮잠을 자고 있습니다.”
                ↓ 바이그램 적용 결과
[‘소파’, ‘위에’], [‘위에’, ‘있는’], [‘있는’, ‘고양이가’], [‘고양이가’, ‘낮잠을’], [‘낮잠을’, ‘자고’], [‘자고’, ‘있습니다.’]

 

이와 같이 n-그램은 문자열에서 n개의 연속된 요소를 추출할 때 유용합니다.

 

자주 사용되지 않는 단어에 학습 안정성을 확보하는 방법

워드투벡터는 단어의 출현 빈도가 적으면 임베딩의 정확도가 낮은 단점이 있었습니다. 참고할 수 있는 경우의 수가 적기 때문에 상대적으로 정확도가 낮아 임베딩되지 않습니다. 하지만 패스트텍스트는 등장 빈도수가 적더라도, n-그램으로 임베딩하기 때문에 참고할 수 있는 경우의 수가 많습니다. 따라서 상대적으로 자주 사용되지 않는 단어에서도 정확도가 높습니다.

이제 9장에서 배운 Gensim을 이용하여 패스트텍스트를 구현해 보겠습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.