Moteur de recommandation basé sur le synopsis
Dans cet exercice, nous allons créer un moteur de recommandation qui suggère des films en fonction de la similarité de leurs synopsis. Une fonction get_recommendations() vous est fournie ; elle prend en arguments le titre d’un film, une matrice de similarité et une série indices, puis renvoie une liste des films les plus similaires. indices vous a déjà été fournie.
Vous disposez également d’une série movie_plots qui contient les résumés de plusieurs films. Votre tâche est de générer une matrice de similarité cosinus pour les vecteurs tf-idf de ces résumés.
Pour finir, nous évaluerons l’efficacité de notre moteur en générant des recommandations pour l’un de mes films préférés, The Dark Knight Rises.
Cet exercice fait partie du cours
Feature Engineering pour le NLP en Python
Instructions
- Initialisez un
TfidfVectorizeravec desstop_wordsen anglais. Nommez-letfidf. - Construisez
tfidf_matrixen ajustant et transformant les données de synopsis viafit_transform(). - Générez la matrice de similarité cosinus
cosine_simà partir detfidf_matrix. N’utilisez pascosine_similarity()! - Utilisez
get_recommendations()pour générer des recommandations pour'The Dark Knight Rises'.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Initialize the TfidfVectorizer
tfidf = ____(____='english')
# Construct the TF-IDF matrix
tfidf_matrix = tfidf.____(movie_plots)
# Generate the cosine similarity matrix
cosine_sim = ____(tfidf_matrix, tfidf_matrix)
# Generate recommendations
print(get_recommendations(____, cosine_sim, indices))