[python] 파이썬 gensim을 이용한 문서 유사도 계산 시각화 방법 소개

본 포스트에서는 자연어 처리를 위한 파이썬 라이브러리인 Gensim을 사용하여 문서 간의 유사도를 계산하고 시각화하는 방법을 소개합니다.

목차

  1. Gensim 소개
  2. 문서 유사도 계산
  3. 시각화
  4. 참고 자료

Gensim 소개

Gensim은 토픽 모델링과 자연어 처리를 위한 파이썬 라이브러리로, 문서 간의 유사도 계산, 토픽 추출 및 단어 임베딩 등 다양한 기능을 제공합니다.

문서 유사도 계산

Gensim을 사용하여 문서 간의 유사도를 계산하는 방법은 다음과 같습니다.

from gensim import corpora, models, similarities
import numpy as np

# 문서 전처리 및 단어 사전 생성
documents = ["텍스트1", "텍스트2", ...]
texts = [[word for word in document.lower().split()] for document in documents]
dictionary = corpora.Dictionary(texts)

# TF-IDF 모델 생성
corpus = [dictionary.doc2bow(text) for text in texts]
tfidf = models.TfidfModel(corpus)
corpus_tfidf = tfidf[corpus]

# 유사도 매트릭스 생성
index = similarities.MatrixSimilarity(corpus_tfidf)
sims = index[corpus_tfidf]

시각화

문서 간의 유사도를 시각화하기 위해서는 matplotlib 라이브러리를 사용할 수 있습니다.

import matplotlib.pyplot as plt

# 유사도 히트맵 시각화
plt.imshow(sims, cmap='hot', interpolation='nearest')
plt.show()

참고 자료

위의 방법들을 활용하여 Gensim을 이용한 문서 유사도 계산 및 시각화를 손쉽게 수행할 수 있습니다. Gensim을 활용하여 다양한 자연어 처리 작업을 보다 간편하게 수행할 수 있습니다.