Menemukan film yang disukai secara serupa
Sama seperti Anda menghitung kesamaan antara dua film, Anda dapat menghitungnya lintas semua pengguna untuk menemukan film yang paling mirip dengan yang lain berdasarkan cara pengguna memberi rating.
Pendekatannya mirip dengan saat Anda menggunakan content-based filtering.
Anda akan menemukan skor kesamaan antar semua film, lalu menelusuri film yang diminati dengan mengisolasi dan mengurutkan kolom yang berisi skor kesamaannya.
movie_ratings_centered telah dimuat kembali, berisi setiap film sebagai baris, dan rating yang diselaraskan (centered) disimpan sebagai nilainya.
Latihan ini adalah bagian dari kursus
Membangun Recommendation Engine di Python
Petunjuk latihan
- Hitung matriks kesamaan antar semua film dalam
movie_ratings_centereddan simpan sebagai similarities. - Bungkus matriks
similaritieske dalam sebuah DataFrame, dengan indeksmovie_ratings_centeredsebagai kolom dan baris.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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)