Tác động của đặc trưng lên chất lượng phân cụm
Khám phá cách từng đặc trưng ảnh hưởng đến hiệu năng phân cụm của mô hình KMeans. Tập dữ liệu X được dùng để phân khúc khách hàng dựa trên ba đặc trưng: thu nhập, số trẻ em, và số thiếu niên trong gia đình.
Hàm silhouette_score và biến column_names đã được nạp sẵn cho bạn.
Bài tập này là một phần của khóa học
Explainable AI trong Python
Hướng dẫn bài tập
- Tính silhouette score gốc (
original_score). - Trong vòng lặp for, loại bỏ lần lượt từng đặc trưng và lưu kết quả vào
X_reduced. - Tính silhouette score mới (
new_score). - Tính
impactcủa đặc trưng.
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.
kmeans = KMeans(n_clusters=5, random_state=10, n_init=10).fit(X)
# Derive the original silhouette score
original_score = ____
for i in range(X.shape[1]):
# Remove feature at index i
X_reduced = ____
kmeans.fit(X_reduced)
# Compute the new silhouette score
new_score = ____
# Compute the feature's impact
impact = ____
print(f'Feature {column_names[i]}: Impact = {impact}')