【问题标题】:Word shows up more than once in TSNE plotWord 在 TSNE 图中出现了不止一次
【发布时间】:2019-12-12 12:41:38
【问题描述】:

在绘制词嵌入 TSNE 结果时,词会出现不止一次。

我正在减少 Word2Vec 词嵌入的维数,但是当我绘制最相似词的子集的结果时(手动输入几个我想要最相似的词),相同的词会出现不止一次:

from sklearn.manifold import TSNE

words = sum([[k] + v for k, v in similar_words.items()], [])
wvs = model.wv[words]

tsne = TSNE(n_components=3, random_state=0, n_iter=10000, perplexity=29)
np.set_printoptions(suppress=True)
T = tsne.fit_transform(wvs)
labels = words

plt.figure(figsize=(16, 12))
plt.scatter(T[:, 0], T[:, 1], c='purple', edgecolors='purple')
for label, x, y in zip(labels, T[:, 0], T[:, 1]):
    plt.annotate(label, xy=(x+1, y+1), xytext=(0, 0), textcoords='offset points')

这是 PCA 和 TSNE 单词相似性降维的正常行为,还是我的代码有问题?情节是否有可能将每个相似的单词子集视为彼此独立?

【问题讨论】:

    标签: matplotlib scikit-learn nlp word2vec word-embedding


    【解决方案1】:

    每个词都有两个向量:作为中心词和作为上下文词。 Stanford University word2vec lecture 41:37 开始。

    【讨论】:

      猜你喜欢
      • 2011-08-10
      • 2022-10-09
      • 2023-02-08
      • 1970-01-01
      • 1970-01-01
      • 2018-11-03
      • 2019-02-09
      • 2018-10-19
      • 1970-01-01
      相关资源
      最近更新 更多