请,你能帮我吗?我已经训练了Doc2Vec模型来将“关键字”输入转换为向量。我已经使用这些向量对TensorFlow模型进行了预测。有没有办法在Doc2Vec模型中保留唯一ID以使其适合TensorFlow模型中的预测?
这是我用于生成和训练Doc2Vec模型的代码:
from gensim.models import Doc2Vec
import gensim
from gensim.models.doc2vec import TaggedDocument
def label_sentences(corpus, label_type):
labeled = []
for i, v in enumerate(corpus):
label = label_type + '_' + str(i)
labeled.append(doc2vec.TaggedDocument(str(v.split()).split(';'), [label]))
return labeled
X_data = label_sentences(test.keywords, 'Data')
model_dbow = Doc2Vec(dm=0, vector_size=300, negative=5, min_count=1, alpha=0.065, min_alpha=0.065)
model_dbow.build_vocab([x for x in tqdm(X_data)])
%time
for epoch in range(30):
model_dbow.train(utils.shuffle([x for x in tqdm(X_data)]), total_examples=len(X_data), epochs=1)
model_dbow.alpha -= 0.002
model_dbow.min_alpha = model_dbow.alpha
这是我放入TensorFlow模型中的向量的代码:
all_data_vectors_dbow_test = get_vectors(model_dbow, len(X_data), 300, 'Data')
test = all_data_vectors_dbow_test
这是预测代码:
test_pred = sess.run(activation_OP, feed_dict={X: test})