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 merupakan bagian dari kursus
Membangun Recommendation Engine di Python
Instruksi 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 langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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))