Motor de recomandare bazat pe rezumate
În acest exercițiu, vom construi un motor de recomandare care sugerează filme pe baza similarității rezumatelor. Ai la dispoziție o funcție get_recommendations() care primește titlul unui film, o matrice de similaritate și o serie indices ca argumente, și returnează o listă cu cele mai similare filme. Seria indices îți este deja furnizată.
Ai, de asemenea, o serie movie_plots care conține rezumatele mai multor filme. Sarcina ta este să generezi o matrice de similaritate cosinus pentru vectorii tf-idf ai acestor rezumate.
În final, vom testa puterea motorului nostru generând recomandări pentru unul dintre filmele mele preferate: The Dark Knight Rises.
Acest exercițiu face parte din cursul
Ingineria caracteristicilor pentru NLP în Python
Instrucțiuni pentru exercițiu
- Inițializează un
TfidfVectorizercustop_wordspentru limba engleză. Numește-ltfidf. - Construiește
tfidf_matrixprin ajustarea și transformarea datelor cu rezumatele filmelor, folosindfit_transform(). - Generează matricea de similaritate cosinus
cosine_simfolosindtfidf_matrix. Nu folosicosine_similarity()! - Folosește
get_recommendations()pentru a genera recomandări pentru'The Dark Knight Rises'.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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))