可视化并比较词嵌入向量
词嵌入向量通常是高维的,直接理解较为困难。本练习中,您将使用主成分分析(PCA)将若干词向量降到 2D 并进行可视化。这有助于在嵌入空间中揭示词语之间的语义分组或相似性。随后,您将比较两个模型的嵌入表示:通过变量 model_glove_wiki 提供的 glove-wiki-gigaword-50,以及通过 model_glove_twitter 提供的 glove-twitter-25。
本练习是课程的一部分
Python 中的自然语言处理(NLP)
交互式实操练习
通过完成这段示例代码来试试这个练习。
words = ["lion", "tiger", "leopard", "banana", "strawberry", "truck", "car", "bus"]
# Extract word embeddings
word_vectors = [____[____] for word in words]
# Reduce dimensions with PCA
pca = PCA(n_components=2)
word_vectors_2d = pca.____(____)
plt.scatter(word_vectors_2d[:, 0], word_vectors_2d[:, 1])
for word, (x, y) in zip(words, word_vectors_2d):
plt.annotate(word, (x, y))
plt.title("GloVe Wikipedia Word Embeddings (2D PCA)")
plt.show()