Quels sont les articles similaires à « Cristiano Ronaldo » ?
Dans cette vidéo, vous avez appris à utiliser les fonctionnalités NMF et la similarité cosinus pour trouver des articles similaires.
Appliquez cette méthode à votre modèle NMF pour les articles populaires de Wikipédia, en recherchant les articles les plus similaires à l'article sur le footballeur Cristiano Ronaldo. Les fonctionnalités NMF que vous avez obtenues précédemment sont disponibles à l'adresse nmf_features, tandis que titles contient la liste des titres des articles.
Cet exercice fait partie du cours
Apprentissage non supervisé en Python
Instructions
- Importez
normalizeà partir desklearn.preprocessing. - Veuillez appliquer la fonction «
normalize()» à l'adressenmf_features. Enregistrez le résultat en tant quenorm_features. - Créez un DataFrame «
df» à partir de «norm_features», en utilisant «titles» comme index. - Veuillez utiliser l'accesseur
.loc[]dedfpour sélectionner la ligne de'Cristiano Ronaldo'. Affectez le résultat àarticle. - Appliquez la méthode d'
.dot()dedfàarticlepour calculer la similarité cosinus de chaque ligne avecarticle. - Veuillez imprimer le résultat de la méthode d'
.nlargest()desimilaritiespour afficher les articles les plus similaires. Nous l’avons fait pour vous, alors cliquez sur « Soumettre la réponse » pour vérifier le résultat !
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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())