Visualización y comparación de incrustaciones de palabras
Las incrustaciones de palabras son de alta dimensión, lo que dificulta su interpretación directa. En este ejercicio, proyectarás algunos vectores de palabras en 2D utilizando el 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 incrustación. A continuación, compararás las representaciones de incrustación de dos modelos: glove-wiki-gigaword-50
disponible a través de la variable model_glove_wiki,
y glove-twitter-25
disponible a través de model_glove_twitter.
Este ejercicio forma parte del curso
Procesamiento del lenguaje natural (NLP) en Python
Ejercicio interactivo práctico
Prueba este ejercicio completando 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()