Mất mát thông tin trong phân rã
Bạn có thể thắc mắc làm sao các nhân tố (factors) với ít cột hơn nhiều lại có thể tóm tắt một DataFrame lớn hơn mà không bị mất mát. Thực tế là không thể — các nhân tố chúng ta tạo thường chỉ là một xấp xỉ gần đúng của dữ liệu, vì việc mất đi một phần thông tin là khó tránh. Điều này có nghĩa là các giá trị dự đoán có thể không chính xác tuyệt đối, nhưng sẽ đủ gần để hữu ích.
Trong bài tập này, bạn sẽ kiểm tra lại cùng DataFrame gốc trước khi phân rã từ bài trước được nạp dưới tên original_df, và so sánh nó với tích của hai nhân tố của nó, user_matrix và item_matrix.
Bài tập này là một phần của khóa học
Xây dựng Recommendation Engine bằng Python
Hướng dẫn bài tập
- Tính tích vô hướng (dot product) của
user_matrixvàitem_matrixvà lưu vàopredictions_df.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
import numpy as np
# Multiply the user and item matrices
predictions_df = ____.____(____, ____)
# Inspect the recreated DataFrame
print(predictions_df)
# Inspect the original DataFrame and compare
print(original_df)