Membandingkan model berbasis item dan berbasis pengguna
Anda kini telah melihat dua pendekatan KNN yang berbeda. Pertama adalah KNN item-item, di mana Anda menggunakan rata-rata dari \(k\) film yang paling mirip yang telah diberi rating oleh seorang pengguna untuk menyarankan rating bagi film yang belum ia tonton. Pendekatan lainnya adalah KNN pengguna-pengguna, di mana Anda menggunakan rata-rata rating yang diberikan pada film oleh \(k\) pengguna yang paling mirip untuk menyarankan rating yang mungkin diberikan oleh pengguna target.
Sekarang, Anda akan membandingkan keduanya dan menghitung rating yang akan diberikan user_002 untuk Forrest Gump.
Kode untuk model user_rating_predictor (yang memprediksi berdasarkan rating yang diberikan pengguna serupa terhadap film), dan movie_rating_predictor (yang memprediksi berdasarkan rating yang diberikan pengguna ini untuk film-film yang mirip) telah disiapkan untuk Anda.
KNeighborsRegressor telah diimpor untuk Anda.
Latihan ini adalah bagian dari kursus
Membangun Recommendation Engine di Python
Petunjuk latihan
- Buat model K-nearest neighbors pengguna-pengguna bernama
user_knn. - Fit model
user_knnlalu lakukan prediksi padatarget_user_x. - Demikian pula, fit model K-nearest neighbors item-item bernama
movie_knn, lalu lakukan prediksi padatarget_movie_x.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Instantiate the user KNN model
user_knn = ____()
# Fit the model and predict the target user
user_knn.____(other_users_x, other_users_y)
user_user_pred = user_knn.____(target_user_x)
print("The user-user model predicts {}".format(user_user_pred))
# Instantiate the user KNN model
movie_knn = KNeighborsRegressor()
# Fit the model on the movie data and predict
movie_knn.____(other_movies_x, other_movies_y)
item_item_pred = movie_knn.____(target_movie_x)
print("The item-item model predicts {}".format(item_item_pred))