Melangkah melalui K-nearest neighbors
Anda baru saja melihat bagaimana K-nearest neighbors dapat digunakan untuk menyimpulkan bagaimana seseorang mungkin menilai suatu item berdasarkan kebijaksanaan kerumunan (yang serupa). Pada latihan ini, Anda akan melangkah melalui proses tersebut sendiri untuk memastikan pemahaman yang baik tentang cara kerjanya.
Agar Anda bisa langsung mulai, karena Anda telah berkali-kali membuat matriks kemiripan, langkah tersebut telah dilakukan untuk Anda dengan matriks kemiripan pengguna yang dibungkus dalam DataFrame dan dimuat sebagai user_similarities.
Setiap pengguna menjadi baris dan kolom, dan titik pertemuannya adalah skor kemiripan yang sesuai.
Pada latihan ini, Anda akan bekerja dengan skor kemiripan user_001, menemukan tetangga terdekatnya, dan berdasarkan penilaian yang diberikan tetangga tersebut terhadap sebuah film, menyimpulkan rating yang mungkin diberikan user_001 jika mereka menontonnya.
Latihan ini adalah bagian dari kursus
Membangun Recommendation Engine di Python
Petunjuk latihan
- Temukan ID 10 tetangga terdekat
User_Adengan mengekstrak 10 pengguna teratas diordered_similaritiesdan simpan sebagainearest_neighbors. - Ekstrak rating yang diberikan pengguna dalam
nearest_neighborsdariuser_ratings_tablesebagaineighbor_ratings. - Hitung rata-rata rating yang diberikan pengguna-pengguna ini untuk film
Apollo 13 (1995)untuk menyimpulkan rating yang mungkin diberikanUser_Ajika mereka telah menontonnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Isolate the similarity scores for user_1 and sort
user_similarity_series = user_similarities.loc['user_001']
ordered_similarities = user_similarity_series.sort_values(ascending=False)
# Find the top 10 most similar users
nearest_neighbors = ordered_similarities[1:11].____
# Extract the ratings of the neighbors
neighbor_ratings = user_ratings_table.____(nearest_neighbors)
# Calculate the mean rating given by the users nearest neighbors
print(neighbor_ratings['Apollo 13 (1995)'].____())