在Doc2Vec模型中添加数据ID

时间:2018-12-13 11:21:36

标签: tensorflow neural-network vectorization doc2vec

请,你能帮我吗?我已经训练了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})

0 个答案:

没有答案