Gensim을 이용한 Doc2Vec 훈련 치트시트¶
In [11]:
from gensim.models.doc2vec import Doc2Vec, TaggedDocument
import pandas as pd
데이터 로드 (텍스트는 토큰화 되어있다고 String Array라고 가정한다.)¶
In [2]:
raw = pd.read_csv("raw.txt",sep='\t', encoding='cp949')
토큰화되어있는 배열을 돌면서, document를 만든다.¶
In [3]:
documents = [TaggedDocument(doc, [i]) for i, doc in enumerate(raw['tokenized_sentence'])]
In [5]:
model = Doc2Vec(documents, vector_size = 10, epochs = 5, window = 7, min_count = 3, workers = 20)
모델을 로컬에 저장한다. (필수절차아님)¶
In [6]:
model.save('filename.d2v')
실제로 Doc2Vec을 다시 로딩한다. (필수절차아님)¶
In [13]:
reloaded_model = Doc2Vec.load('filename.d2v')
최종적으로 벡터를 추론한다.¶
In [ ]:
raw['tokenized_sentence'].apply(lambda _: reloaded_model.infer_vector(_).astype(float))