gensim - word2vec:属性错误:"Word2Vec"对象没有属性"most_common"


PAD = 0
UNK = 1
START = 2
END = 3
def make_vocab(wc, vocab_size):
word2id, id2word = {}, {}
word2id['<pad>'] = PAD
word2id['<unk>'] = UNK
word2id['<start>'] = START
word2id['<end>'] = END
for i, (w, _) in enumerate(wc.most_common(vocab_size), 4):
word2id[w] = i
return word2id

我得到这个错误"AttributeError: 'Word2Vec'对象没有属性'most_common'"调用此函数时。我尝试了不同版本的gensim。你能给我一些提示来解决这个问题吗?

Gensim的Word2Vec不包含most_common方法。

如果,无论出于何种原因,您必须从模型中提取word,frequency对,您可以使用

[(word, wc.w2v.vocab[word]) for word in wc.wv.vocab]

并对结果列表进行排序。然而,这显然是一个奇怪的用例。

最新更新