Membandingkan metode rekomendasi
Dalam kursus ini, Anda telah memprediksi bagaimana seorang pengguna akan memberi rating pada film yang belum mereka tonton menggunakan beberapa metode berbeda (rata-rata dasar, KNN, matrix factorization). Pada latihan terakhir ini, Anda akan membandingkan rating rata-rata dan matrix factorization menggunakan mean_squared_error() sebagai ukuran kinerja.
Prediksi berbasis rata-rata telah dimuat sebagai avg_pred_ratings_df, sedangkan prediksi terhitung telah dimuat sebagai calc_pred_ratings_df.
Nilai ground truth telah dimuat sebagai act_ratings_df.
Terakhir, fungsi mean_squared_error() telah diimpor untuk Anda dari sklearn.metrics.
Latihan ini adalah bagian dari kursus
Membangun Recommendation Engine di Python
Petunjuk latihan
- Ekstrak baris 0–20 dan kolom 0–100 (area yang ingin Anda bandingkan) pada DataFrame
act_ratings_df,avg_pred_ratings_df, dancalc_pred_ratings_df. - Buat mask dari DataFrame
actual_valuesyang hanya menargetkan sel yang tidak kosong. - Temukan mean squared error antara dua prediksi dan nilai ground truth.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Extract the ground truth to compare your predictions against
actual_values = act_ratings_df.____[:20, :100].values
avg_values = avg_pred_ratings_df.____[:20, :100].values
predicted_values = calc_pred_ratings_df.____[:20, :100].values
# Create a mask of actual_values to only look at the non-missing values in the ground truth
mask = ~np.isnan(____)
# Print the performance of both predictions and compare
print(____(____[mask], avg_values[mask], squared=False))
print(____(____[mask], predicted_values[mask], squared=False))