Які статті подібні до 'Cristiano Ronaldo'?
У відео ви дізналися, як використовувати ознаки NMF і косинусну подібність, щоб знаходити подібні статті.
Застосуйте це до вашої моделі NMF для популярних статей Вікіпедії: знайдіть статті, найбільш подібні до статті про футболіста Кріштіану Роналду. Отримані раніше ознаки NMF доступні як nmf_features, а titles — це список назв статей.
Ця вправа є частиною курсу
Наглядове навчання в Python
Інструкції до вправи
- Імпортуйте
normalizeзsklearn.preprocessing. - Застосуйте функцію
normalize()доnmf_features. Збережіть результат уnorm_features. - Створіть датафрейм
dfзnorm_features, використавшиtitlesяк індекс. - Скористайтеся доступом
.loc[]датафреймуdf, щоб вибрати рядок'Cristiano Ronaldo'. Присвойте результат зміннійarticle. - Застосуйте метод
.dot()датафреймуdfдоarticle, щоб обчислити косинусну подібність кожного рядка зarticle. - Виведіть результат методу
.nlargest()дляsimilarities, щоб показати найподібніші статті. Це вже зроблено для вас, тож натисніть "Submit Answer", щоб побачити результат!
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Perform the necessary imports
import pandas as pd
from ____ import ____
# Normalize the NMF features: norm_features
norm_features = ____
# Create a DataFrame: df
df = ____
# Select the row corresponding to 'Cristiano Ronaldo': article
article = df.loc[____]
# Compute the dot products: similarities
similarities = ____
# Display those with the largest cosine similarity
print(similarities.nlargest())