Aan de slagBegin gratis

Aanbevelingsengine voor plots

In deze oefening bouwen we een aanbevelingsengine die films voorstelt op basis van de overeenkomst tussen verhaallijnen. Je krijgt een functie get_recommendations() die de titel van een film, een similariteitsmatrix en een indices-reeks als argumenten neemt en een lijst met meest vergelijkbare films teruggeeft. indices is al voor je klaargezet.

Je krijgt ook een Series movie_plots met de verhaallijnen van verschillende films. Jouw taak is om een cosinus-similariteitsmatrix te genereren voor de tf-idf-vectoren van deze plots.

Vervolgens testen we de kracht van onze engine door aanbevelingen te genereren voor een van mijn favoriete films: The Dark Knight Rises.

Deze oefening maakt deel uit van de cursus

Feature Engineering voor NLP in Python

Bekijk cursus

Oefeninstructies

  • Initialiseer een TfidfVectorizer met Engelse stop_words. Noem hem tfidf.
  • Construeer tfidf_matrix door de filmplotgegevens te fitten en te transformeren met fit_transform().
  • Genereer de cosinus-similariteitsmatrix cosine_sim met tfidf_matrix. Gebruik geen cosine_similarity()!
  • Gebruik get_recommendations() om aanbevelingen te genereren voor 'The Dark Knight Rises'.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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))
Code bewerken en uitvoeren