Tính tối ưu của biên hỗ trợ–độ tin cậy
Bạn quay lại gặp nhà sáng lập với biểu đồ phân tán tạo ra ở bài tập trước và hỏi liệu cô ấy có muốn bạn dùng phương pháp cắt tỉa (pruning) để khôi phục biên hỗ trợ–độ tin cậy hay không. Bạn kể về kết quả Bayardo–Agrawal, nhưng cô ấy tỏ ra hoài nghi và hỏi liệu bạn có thể minh họa bằng một ví dụ.
Nhớ rằng biểu đồ phân tán có thể thay đổi kích thước điểm chấm theo một thước đo thứ ba, bạn quyết định dùng cách đó để chứng minh tính tối ưu của biên hỗ trợ–độ tin cậy. Bạn sẽ cho thấy điều này bằng cách tỉ lệ kích thước điểm chấm theo thước đo lift, một trong các thước đo mà Bayardo–Agrawal đã áp dụng. Dữ liệu one-hot đã được nhập sẵn cho bạn và có sẵn dưới tên onehot. Ngoài ra, apriori() và association_rules() đã được nhập, và pandas có sẵn với tên pd.
Bài tập này là một phần của khóa học
Phân tích giỏ hàng trong Python
Hướng dẫn bài tập
- Áp dụng thuật toán Apriori lên DataFrame
onehot. - Tính các luật kết hợp với thước đo
supportvà ngưỡng tối thiểu 0.0. - Hoàn thiện biểu thức vẽ biểu đồ phân tán sao cho kích thước điểm chấm được tỉ lệ theo
lift.
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 seaborn under its standard alias
import seaborn as sns
# Apply the Apriori algorithm with a support value of 0.0075
frequent_itemsets = ____(____, min_support = 0.0075,
use_colnames = True, max_len = 2)
# Generate association rules without performing additional pruning
rules = ____(frequent_itemsets, metric = "support",
min_threshold = ____)
# Generate scatterplot using support and confidence
sns.scatterplot(x = "support", y = "confidence",
size = "____", data = rules)
plt.show()