我有一个包含说明的pandas
数据框。我想根据含义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)
答案 0 :(得分:1)
我认为您正在寻找句子嵌入。从词嵌入生成句子嵌入的方法有很多。您可能会发现这很有用:https://stats.stackexchange.com/questions/286579/how-to-train-sentence-paragraph-document-embeddings