【发布时间】:2020-12-26 00:16:10
【问题描述】:
我想比较不同句子中提到的同一个词之间的差异,例如“旅行”。 我想做的是:
- 将提及“旅行”一词的句子作为纯文本;
- 在每个句子中,将“travel”替换为 travel_sent_x。
- 在这些句子上训练一个 word2vec 模型。
- 计算 travel_sent1、travel_sent2 和其他重新标记的“旅行”提及之间的距离 所以每个句子的“旅行”都有自己的向量,用于比较。
我知道 word2vec 需要的不仅仅是几个句子来训练可靠的向量。官网推荐了几十亿字的数据集,但是我的数据集中没有这样的数字(我有几千字)。
我试图用以下几句话来测试模型:
Sentences
Hawaii makes a move to boost domestic travel and support local tourism
Honolulu makes a move to boost travel and support local tourism
Hawaii wants tourists to return so much it's offering to pay for half of their travel expenses
我构建向量的方法是:
from gensim.models import Word2Vec
vocab = df['Sentences']))
model = Word2Vec(sentences=vocab, size=100, window=10, min_count=3, workers=4, sg=0)
df['Sentences'].apply(model.vectorize)
但是我不知道如何可视化结果以查看它们的相似性并获得一些有用的见解。 欢迎任何帮助和建议。
更新:我会使用主成分分析算法来可视化 3 维空间中的嵌入。我知道如何处理每个单词,但我不知道如何处理句子。
【问题讨论】:
-
目前还不是很清楚你到底想实现什么,word2vec在其中的作用是什么。获取相似的句子或可视化相似的词?
-
嗨,伊格里尼斯。我想可视化类似的句子。相似度应该来自 word2vec(或其他工具)的使用,但最好基于文本语义
标签: python gensim word2vec embedding