[python] 파이썬 gensim을 사용한 문서 임베딩 실전 예제

이 예제에서는 Gensim 라이브러리를 사용하여 문서 임베딩을 수행하는 방법을 알아보겠습니다.

Gensim이란?

Gensim은 토픽 모델링과 자연어 처리를 위한 파이썬 라이브러리입니다. 특히 토픽 모델링, 임베딩 및 유사성 검색 기능을 제공합니다.

Gensim은 다음과 같은 주요 기능을 제공합니다:

문서 임베딩

문서 임베딩은 텍스트 문서를 고정된 길이의 벡터 형태로 표현하는 방법으로, 주어진 문서의 의미를 보다 적은 차원의 공간에 효과적으로 나타내는 기술입니다. 문서 임베딩은 자연어 처리와 정보 검색 분야에서 널리 사용됩니다.

Gensim을 사용하여 간단한 문서 임베딩을 수행하는 과정을 살펴보겠습니다.

예제

다음은 Gensim을 사용하여 문서 임베딩을 수행하는 간단한 예제입니다:

from gensim.models.doc2vec import Doc2Vec, TaggedDocument
from nltk.tokenize import word_tokenize

# 예제 문서
documents = ["I love natural language processing",
             "Gensim is a great tool for document embedding",
             "Document embedding helps in information retrieval"]

# 토큰화 및 태그 지정
tagged_data = [TaggedDocument(words=word_tokenize(doc.lower()), tags=[str(idx)]) for idx, doc in enumerate(documents)]

# 임베딩 모델 학습
model = Doc2Vec(tagged_data, vector_size=20, window=2, min_count=1, workers=4, epochs=100)

# 문서 임베딩 추출
embedding = model.infer_vector(word_tokenize("I love using Gensim for document embedding"))

print(embedding)

위 예제는 Gensim의 Doc2Vec 모델을 사용하여 간단한 문서 임베딩을 수행하는 예시입니다.

이 예제에서는 세 개의 문서를 사용하여 모델을 학습하고, 마지막으로 새로운 문장에 대한 임베딩 벡터를 추출하는 과정을 보여줍니다.

Gensim을 사용하여 문서 임베딩을 좀 더 심층적으로 다루려면 공식 문서 및 실전 예제를 참고하는 것이 도움이 될 것입니다.

이상으로 Gensim을 이용한 문서 임베딩 실전 예제를 살펴보았습니다.

참고 자료