รูปแบบคลัสเตอร์ที่สม่ำเสมอ
เมื่อทำความเข้าใจผลกระทบของ seed แล้ว มาดูความโน้มเอียงของ k-means clustering ในการสร้างคลัสเตอร์ที่มีขนาดสม่ำเสมอกัน
ในแบบฝึกหัดนี้ เราจะใช้ชุดข้อมูลรูปหนู (mouse-like dataset) ซึ่งเป็นกลุ่มจุดข้อมูลที่มีลักษณะคล้ายหัวหนู โดยประกอบด้วย 3 คลัสเตอร์ที่จัดเรียงเป็นวงกลม ได้แก่ หน้า และหู 2 ข้าง
นี่คือตัวอย่างของชุดข้อมูลรูปหนู (ที่มา)
ข้อมูลถูกเก็บอยู่ใน pandas DataFrame ชื่อ mouse โดย x_scaled และ y_scaled คือชื่อคอลัมน์ของพิกัด X และ Y ที่ผ่านการทำ standardization แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์กลุ่มข้อมูลใน Python
คำแนะนำการฝึกหัด
- นำเข้าฟังก์ชัน
kmeansและvqจาก SciPy - สร้าง cluster centers โดยใช้ฟังก์ชัน
kmeans()กำหนดจำนวนคลัสเตอร์เป็น 3 - สร้าง cluster labels ด้วยฟังก์ชัน
vq()โดยใช้ cluster centers ที่ได้จากขั้นตอนก่อนหน้า
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import the kmeans and vq functions
____
# Generate cluster centers
cluster_centers, distortion = ____
# Assign cluster labels
mouse['cluster_labels'], distortion_list = ____
# Plot clusters
sns.scatterplot(x='x_scaled', y='y_scaled',
hue='cluster_labels', data = mouse)
plt.show()