그럼 이제 Gensim을 이용한 예제를 살펴보겠습니다. 먼저 필요한 라이브러리를 호출하고 glove.6B.100d.txt 데이터셋3을 메모리로 로딩합니다.
코드 10-17 라이브러리 호출 및 데이터셋 로딩
import numpy as np
%matplotlib notebook
import matplotlib.pyplot as plt
plt.style.use('ggplot')
from sklearn.decomposition import PCA
from gensim.test.utils import datapath, get_tmpfile
from gensim.models import KeyedVectors
from gensim.scripts.glove2word2vec import glove2word2vec
# 아래 상대 경로에 오류가 발생한다면 절대 경로로 지정해 주세요.
glove_file = datapath('..\chap10\data\glove.6B.100d.txt') ------ ①
word2vec_glove_file = get_tmpfile("glove.6B.100d.word2vec.txt") ------ 글로브 데이터를 워드투벡터 형태로 변환
glove2word2vec(glove_file, word2vec_glove_file) ------ ②
① 내려받은 glove.6B.100d.txt 파일을 메모리로 로딩합니다. (인터넷에서 내려받아 ..\chap10\data 위치에 두고 실습을 진행합니다. txt 파일이 없다는 오류가 표시된다면 절대 경로로 지정해 주세요.) glove.6B.100d.txt는 수많은 단어에 대해 차원 100개를 가지는 임베딩 벡터를 제공합니다.
3 단어 표현을 위한 글로벌 벡터입니다. https://nlp.stanford.edu/projects/glove/에서 제공하는 데이터셋으로, 해당 URL에서 glove.6B.zip을 내려받아 압축을 해제해서 사용합니다. 또는 길벗출판사의 깃허브(https://github.com/gilbutITbook/080263) 첫 페이지의 URL을 클릭해도 내려받을 수 있습니다. 준비된 파일은 data 폴더에 넣어 주세요.