【发布时间】:2018-10-02 17:20:56
【问题描述】:
我正在尝试使用Doc2Vec 将句子转换为向量,然后使用这些向量来训练一个张量流分类器。
我对使用什么标签以及在完成训练后如何从Doc2Vec 中提取所有文档向量感到有些困惑。
到目前为止我的代码如下:
fake_data = pd.read_csv('./sentences/fake.txt', sep='\n')
real_data = pd.read_csv('./sentences/real.txt', sep='\n')
sentences = []
for i, row in fake_data.iterrows():
sentences.append(TaggedDocument(row['title'].lower().split(), ['fake', len(sentences)]))
for i, row in real_data.iterrows():
sentences.append(TaggedDocument(row['title'].lower().split(), ['real', len(sentences)]))
model = gensim.models.Doc2Vec(sentences)
当我做print(model.docvecs[1]) 等时,我得到了向量,但每次我重新制作模型时它们都不一样。
首先:我是否正确使用了Doc2Vec?
第二:有没有办法可以抓取所有标记为“真实”或“假”的文档,然后将它们转换为 numpy 数组并将其传递给 tensorflow?
【问题讨论】:
-
gensim包中的Doc2vec不是tensorflow,它是独立的。
标签: python tensorflow nlp word2vec doc2vec