MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

  • Temukan ID 10 tetangga terdekat User_A dengan mengekstrak 10 pengguna teratas di ordered_similarities dan simpan sebagai nearest_neighbors.
  • Ekstrak rating yang diberikan pengguna dalam nearest_neighbors dari user_ratings_table sebagai neighbor_ratings.
  • Hitung rata-rata rating yang diberikan pengguna-pengguna ini untuk film Apollo 13 (1995) untuk menyimpulkan rating yang mungkin diberikan User_A jika 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)'].____())
Edit dan Jalankan Kode