[파이썬] `gensim` 설치 및 설정

gensim-logo

gensim은 Python에서 자연어 처리를 위한 오픈소스 라이브러리입니다. 토픽 모델링, 문서 유사도 계산, 단어 임베딩 등 다양한 NLP(Natural Language Processing) 작업을 쉽게 수행할 수 있게 해주는 강력한 도구입니다.

이번 블로그 포스트에서는 gensim을 설치하고 설정하는 방법에 대해 알아보겠습니다.

gensim 설치하기

gensim은 pip를 통해 간단하게 설치할 수 있습니다. 다음 명령어를 사용하여 설치합니다:

pip install gensim

gensim 설정하기

gensim의 기본 설정은 대부분의 경우 잘 작동하지만, 필요에 따라 설정을 조정할 수도 있습니다. gensim 설정은 logging 패키지를 통해 수행됩니다.

import logging

# 로깅 설정하기
logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)

이렇게 설정하면 gensim의 로그 메시지가 시간, 로그 레벨 및 메시지 형식으로 출력됩니다. 로그 레벨은 INFO로 설정되어 있으며, 필요에 따라 변경할 수 있습니다.

gensim 사용 예제

이제 gensim을 사용하여 간단한 예제를 살펴보겠습니다. 예를 들어, 텍스트 데이터에서 단어의 유사도를 계산해볼 수 있습니다. 다음은 간단한 코드 예제입니다:

from gensim.similarities import WmdSimilarity
from gensim.models import Word2Vec

# 텍스트 데이터 준비
documents = [
    "Apple is a fruit",
    "Banana is a fruit",
    "Orange is a fruit",
    "Carrot is a vegetable"
]

# Word2Vec 모델 학습
model = Word2Vec([doc.split() for doc in documents], min_count=1)

# WMD 유사도 계산
similarity_index = WmdSimilarity([doc.split() for doc in documents], model, num_best=3)
query = "Apple is a fruit"
query = query.split()
similar_documents = similarity_index[query]

# 유사한 문서 출력
for i, (doc_index, similarity) in enumerate(similar_documents):
    print(f"Similar document {i+1}: {documents[doc_index]}, Similarity score: {similarity}")

위의 코드 예제는 Word2Vec 모델을 사용하여 문서 유사도를 계산하는 간단한 예제입니다. 주어진 쿼리(“Apple is a fruit”)와 가장 유사한 문서를 찾아 출력합니다.

이처럼 gensim은 강력하고 다양한 자연어 처리 작업을 수행하는 데 사용할 수 있는 유용한 라이브러리입니다. gensim의 다양한 기능과 설정에 대해 더 알아보고 싶다면 공식 문서를 참조하세요.