НачатьНачать бесплатно

Проекция векторов слов

Визуализация векторов слов на диаграмме рассеяния помогает понять, как группируются слова словаря. Чтобы визуализировать векторы слов, их необходимо спроецировать в двумерное пространство. Для этого можно выделить две главные компоненты с помощью метода главных компонент (PCA).

В этом упражнении вы потренируетесь извлекать векторы слов и проецировать их в двумерное пространство с помощью библиотеки PCA из sklearn.

Для работы доступны: короткий список слов, хранящихся в переменной words, и модель en_core_web_md, загруженная как nlp. Все необходимые библиотеки и пакеты уже импортированы (PCA, numpy как np).

Это упражнение является частью курса

Обработка естественного языка с помощью spaCy

Посмотреть курс

Инструкции к упражнению

  • Извлеките идентификаторы слов из списка words и сохраните их в список word_ids.
  • Извлеките первые пять элементов векторов слов, а затем объедините их по вертикали с помощью np.vstack() и сохраните результат в word_vectors.
  • Используя объект pca, вычислите преобразованные векторы слов с помощью метода .fit_transform() класса pca.
  • Выведите первую компоненту преобразованных векторов слов, используя индексацию [:, 0].

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

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])
Редактировать и запускать код