Doc2vec公司:模型.docvecs长度只有10

2024-05-29 07:54:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试doc2vec处理600000行句子,我的代码如下:

model = gensim.models.doc2vec.Doc2Vec(size= 100, min_count = 5,window=4, iter = 50, workers=cores)
model.build_vocab(res) 
model.train(res, total_examples=model.corpus_count, epochs=model.iter)

#len(res) = 663406

#length of unique words 15581
print(len(model.wv.vocab))

#length of doc vectors is 10
len(model.docvecs)

# each of length 100
len(model.docvecs[1])

我如何解释这个结果?为什么向量的长度只有10,每个向量的大小是100?当'res'的长度为663406时,它没有意义。我知道这里出了点问题。在

Understanding the output of Doc2Vec from Gensim package中,他们提到docvec的长度是由不清楚的‘size’决定的。在


Tags: of代码sizemodellencountres向量
1条回答
网友
1楼 · 发布于 2024-05-29 07:54:15

TaggedDocumenttags应该是一个标记列表。如果您改为提供字符串,如tags='73215',那么它将被视为与字符列表相同:

tags=['7', '3', '2', '1', '5']

最后,你的整个训练集中只有10个标签,只有10个不同组合的数字。在

你的len(model.docvec[1])是100,这意味着你在构造你的TaggedDocument训练数据时并没有犯这个错误,但可能是类似的错误。在

查看res中的第一项,看看它的tags属性是否有意义,以及model.docvecs中的每一项,看看使用了什么而不是您想要的。在

相关问题 更多 >

    热门问题