Gensim Doc2vec 모델을 사용하여 문서 벡터를 학습합니다. 나는 '좋은'이라는 표현에 대한 표현을 인쇄했지만 모든 신기원을 발견했다. ID가 '3'인 문서에 대한 표현을 인쇄하는 동안 모든 다른시기는 다릅니다!Doc2vec Gensim : 각 에포크 중에 단어 삽입이 업데이트되지 않음
내 코드는 다음과 같습니다. 무슨 일이 일어나고 있는지 잘 모릅니다.
model = gensim.models.Doc2Vec(dm = 0, alpha=0.1, size= 20, min_alpha=0.025)
model.build_vocab(documents)
print ('Building model....',(time4-time3))
for epoch in range(10):
model.train(documents)
print('Now training epoch %s' % epoch)
print(model['good'])
print(model.docvecs[str(3)])
나는 당신이 암시하는 것을 얻지 못했습니다. (1) 모든 신기원에서, 단어 벡터는 무작위로 시작하지 않고 단어 벡터의 이전 값으로부터 시작합니다. 첫 번째 시대에서만 단어 벡터가 무작위로 시작됩니다. – kampta
"train"함수를 호출 할 때마다 단어 벡터는 단어 벡터의 임의 값을 가져옵니다. 달리 말하면 "train"function은 시작부터 훈련 모델을 시작하고 word 벡터는 무작위 값을 얻는다. –
맞습니다. 'train' 기능은 처음부터 훈련 모델을 시작합니다. 'train' 함수의'seed' 매개 변수의 기본값은 0으로 고정되어 있으므로 훈련을 시작할 때마다 단어 벡터가 동일한 임의 값으로 초기화되고'n epochs '후에 동일한 벡터를 얻을 수 있습니다 실험은 재현 가능합니다.) – kampta