首页 > 解决方案 > 如何从 gensim Word2Vec 嵌入向量中嵌入句子?

问题描述

我有一个pandas包含描述的数据框。我想根据含义对描述进行聚类 usign CBOW。我现在的挑战是将每一行嵌入到相等维度的向量中。起初,我正在使用以下方法训练词向量gensim

from gensim.models import Word2Vec

vocab = pd.concat((df['description'], df['more_description']))
model = Word2Vec(sentences=vocab, size=100, window=10, min_count=3, workers=4, sg=0)

然而,我现在对如何用df相同维度的文档向量替换我的完整句子有点困惑。

目前,我的解决方法是用一个向量重新排列每行中的每个单词,然后应用 PCA 维数缩减以使每个向量具有相似的维度。有没有更好的方法来做到这一点gensim,所以我可以这样说:

df['description'].apply(model.vectorize)

标签: python-3.xgensimword2vecword-embeddingdoc2vec

解决方案


我认为您正在寻找句子嵌入。有很多方法可以从词嵌入生成句子嵌入。您可能会发现这很有用:https ://stats.stackexchange.com/questions/286579/how-to-train-sentence-paragraph-document-embeddings


推荐阅读