Visualizar y comparar word embeddings
Los word embeddings tienen muchas dimensiones, por lo que no es fácil interpretarlos directamente. En este ejercicio, proyectarás varios vectores de palabras a 2D usando Análisis de Componentes Principales (PCA) y los visualizarás. Esto ayuda a revelar agrupaciones semánticas o similitudes entre palabras en el espacio de embedding. Después, compararás las representaciones de dos modelos: glove-wiki-gigaword-50, disponible en la variable model_glove_wiki, y glove-twitter-25, disponible en model_glove_twitter.
Este ejercicio forma parte del curso
Natural Language Processing (NLP) en Python
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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()