Silnik rekomendacji na podstawie fabuły
W tym ćwiczeniu zbudujesz silnik rekomendacji, który sugeruje filmy na podstawie podobieństwa fabuły. Otrzymujesz funkcję get_recommendations(), która przyjmuje tytuł filmu, macierz podobieństwa oraz serię indices jako argumenty i zwraca listę najbardziej podobnych filmów. Seria indices jest już dostępna.
Otrzymujesz również serię movie_plots zawierającą opisy fabuły kilku filmów. Twoim zadaniem jest wygenerowanie macierzy podobieństwa cosinusowego dla wektorów tf-idf tych opisów.
Na koniec sprawdzimy skuteczność naszego silnika, generując rekomendacje dla jednego z moich ulubionych filmów – Mroczny Rycerz Powstaje.
To ćwiczenie jest częścią kursu
Inżynieria cech dla NLP w Pythonie
Instrukcje do ćwiczenia
- Zainicjalizuj
TfidfVectorizerz angielskimistop_words. Nadaj mu nazwętfidf. - Utwórz
tfidf_matrix, dopasowując i transformując dane z opisami fabuły filmów za pomocąfit_transform(). - Wygeneruj macierz podobieństwa cosinusowego
cosine_simna podstawietfidf_matrix. Nie używajcosine_similarity()! - Użyj
get_recommendations(), aby wygenerować rekomendacje dla'The Dark Knight Rises'.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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))