Vizualizace a porovnání word embeddings
Word embeddings mají vysokou dimenzi, což ztěžuje jejich přímou interpretaci. V tomto cvičení promítneš několik vektorů slov do 2D pomocí analýzy hlavních komponent (PCA) a vizualizuješ je. To ti pomůže odhalit sémantické skupiny nebo podobnosti mezi slovy v prostoru embeddings. Poté porovnáš reprezentace embeddings dvou modelů: glove-wiki-gigaword-50 dostupného přes proměnnou model_glove_wiki a glove-twitter-25 dostupného přes model_glove_twitter.
Toto cvičení je součástí kurzu
Zpracování přirozeného jazyka (NLP) v Pythonu
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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()