Motore di raccomandazione basato sulla trama
In questo esercizio costruiremo un motore di raccomandazione che suggerisce film in base alla somiglianza delle trame. Ti è stata fornita una funzione get_recommendations() che prende in input il titolo di un film, una matrice di similarità e una serie indices come argomenti e restituisce un elenco dei film più simili. indices è già stata fornita.
Ti è stata anche fornita una Series movie_plots che contiene le trame di diversi film. Il tuo compito è generare una matrice di similarità coseno per i vettori tf-idf di queste trame.
Infine, verificheremo l'efficacia del nostro motore generando raccomandazioni per uno dei miei film preferiti, The Dark Knight Rises.
Questo esercizio fa parte del corso
Feature Engineering per NLP in Python
Istruzioni dell'esercizio
- Inizializza un
TfidfVectorizerconstop_wordsin inglese. Chiamalotfidf. - Costruisci
tfidf_matrixfacendo fit e transform dei dati delle trame dei film usandofit_transform(). - Genera la matrice di similarità coseno
cosine_simusandotfidf_matrix. Non usarecosine_similarity()! - Usa
get_recommendations()per generare raccomandazioni per'The Dark Knight Rises'.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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))