Hitta filmer med liknande betyg
Precis som du beräknade likheten mellan två filmer kan du beräkna den över alla användare för att hitta den mest lika filmen baserat på hur användarna har betygsatt dem.
Tillvägagångssättet liknar hur du arbetade med innehållsbaserad filtrering.
Du hittar likhetsvärden mellan alla filmer och fokuserar sedan på den film du är intresserad av genom att isolera och sortera kolumnen med dess likhetsvärden.
movie_ratings_centered har återigen laddats in och innehåller varje film som en rad, med deras centrerade betyg lagrade som värden.
Den här övningen är en del av kursen
Bygga rekommendationsmotorer i Python
Övningsinstruktioner
- Beräkna likhetsmatrisen mellan alla filmer i
movie_ratings_centeredoch spara den som similarities. - Omslut matrisen
similaritiesi en DataFrame, med indexen frånmovie_ratings_centeredsom kolumner och rader.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
from sklearn.metrics.pairwise import cosine_similarity
# Generate the similarity matrix
similarities = ____(____)
# Wrap the similarities in a DataFrame
cosine_similarity_df = ____.____(____, index=____.____, columns=____.____)
# Find the similarity values for a specific movie
cosine_similarity_series = cosine_similarity_df.loc['Star Wars: Episode IV - A New Hope (1977)']
# Sort these values highest to lowest
ordered_similarities = cosine_similarity_series.sort_values(ascending=False)
print(ordered_similarities)