尝试在gensim中创建doc2vec模型时键入错误

时间:2019-11-12 10:38:53

标签: python gensim doc2vec

我正在尝试使用gensim训练Doc2Vec模型。

我正在使用的数据集是sklearn的数据集模块中包含的20个新闻组数据集[1]。

我已使用gensim文档中的示例来创建模型。

docs = newsgroups_train['data']
enumerated_docs = enumerate(docs)
documnets= [TaggedDocument(doc.split(),i) for i, doc in enumerated_docs]
model = Doc2Vec(documnets, vector_size=20, window=2, min_count=30, workers=4)

我检查了每一行代码,似乎都在完成初始化模型的那一行。

我收到类型错误: TypeError: 'int' object is not iterable

[1] https://scikit-learn.org/0.19/datasets/twenty_newsgroups.html

1 个答案:

答案 0 :(得分:1)

Enumerate返回一个整数计数器和列表中的值。因此,在您的第三行代码中,i是一个整数。但是,TaggedDocument函数的第二个参数应该是可迭代的。