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[]
dedf
pour sélectionner la ligne de'Cristiano Ronaldo'
. Affectez le résultat àarticle
. - Appliquez la méthode d'
.dot()
dedf
àarticle
pour calculer la similarité cosinus de chaque ligne avecarticle
. - Veuillez imprimer le résultat de la méthode d'
.nlargest()
desimilarities
pour 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())