Proiecția vectorilor de cuvinte
Poți vizualiza vectorii de cuvinte într-un grafic scatter pentru a înțelege mai bine cum sunt grupate cuvintele din vocabular. Pentru a-i putea vizualiza, trebuie să îi proiectezi într-un spațiu bidimensional. Proiecția se realizează prin extragerea celor două componente principale cu ajutorul Analizei Componentelor Principale (PCA).
În acest exercițiu, vei exersa cum să extragi vectorii de cuvinte și să îi proiectezi în spațiu bidimensional folosind biblioteca PCA din sklearn.
Ai la dispoziție o listă scurtă de cuvinte stocată în lista words și modelul en_core_web_md, încărcat ca nlp. Toate bibliotecile și pachetele necesare sunt deja importate (PCA, numpy ca np).
Acest exercițiu face parte din cursul
Procesarea limbajului natural cu spaCy
Instrucțiuni pentru exercițiu
- Extrage ID-urile cuvintelor din lista dată și stochează-le în lista
word_ids. - Extrage primele cinci elemente ale vectorilor de cuvinte și combină-le pe verticală folosind
np.vstack()înword_vectors. - Pornind de la un obiect
pca, calculează vectorii de cuvinte transformați folosind funcția.fit_transform()a claseipca. - Afișează prima componentă a vectorilor de cuvinte transformați folosind indexarea
[:, 0].
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
words = ["tiger", "bird"]
# Extract word IDs of given words
word_ids = [nlp.____.____[w] for w in words]
# Extract word vectors and stack the first five elements vertically
word_vectors = np.vstack([nlp.____.____[i][:5] for i in word_ids])
# Calculate the transformed word vectors using the pca object
pca = PCA(n_components=2)
word_vectors_transformed = pca.____(____)
# Print the first component of the transformed word vectors
print(____[:, 0])