IniziaInizia gratis

Visualizzare e confrontare i word embedding

I word embedding sono ad alta dimensionalità, quindi è difficile interpretarli direttamente. In questo esercizio proietterai alcuni vettori di parole in 2D usando la Principal Component Analysis (PCA) e li visualizzerai. Questo aiuta a rivelare raggruppamenti semantici o somiglianze tra parole nello spazio degli embedding. Poi confronterai le rappresentazioni di embedding di due modelli: glove-wiki-gigaword-50, disponibile tramite la variabile model_glove_wiki, e glove-twitter-25, disponibile tramite model_glove_twitter.

Questo esercizio fa parte del corso

Natural Language Processing (NLP) in Python

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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()
Modifica ed esegui il codice