เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

คำนวณและพล็อตผลรวมของกำลังสองของข้อผิดพลาด

ในแบบฝึกหัดนี้ จะได้คำนวณค่าผลรวมของกำลังสองของข้อผิดพลาด (sum of squared errors) สำหรับจำนวนคลัสเตอร์ตั้งแต่ 1 ถึง 10

ใช้ข้อมูล RFMT ที่ผ่านการนอร์มัลไลซ์แล้วจากแบบฝึกหัดที่แล้ว ซึ่งเก็บไว้ในตัวแปร datamart_rfmt_normalized โดยได้นำเข้าโมดูล KMeans จาก scikit-learn ไว้แล้ว และกำหนด dictionary ว่างสำหรับเก็บค่าผลรวมนี้เป็น sse = {}

สามารถสำรวจข้อมูลเพิ่มเติมได้ใน console

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การแบ่งกลุ่มลูกค้าด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดค่า KMeans ด้วยจำนวน k คลัสเตอร์และ random state เป็น 1 จากนั้น fit KMeans กับชุดข้อมูลที่นอร์มัลไลซ์แล้ว
  • กำหนดค่าผลรวมของระยะทางกำลังสองให้กับ element k ใน dictionary sse
  • เพิ่มชื่อกราฟว่า "The Elbow Method" label แกน X ว่า "k" และ label แกน Y ว่า "SSE"
  • พล็อตค่า SSE สำหรับแต่ละ k ที่เก็บเป็น keys ใน dictionary

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Fit KMeans and calculate SSE for each k between 1 and 10
for k in range(1, 11):
  
    # Initialize KMeans with k clusters and fit it 
    kmeans = ____(____=____, ____=1 ).____(datamart_rfmt_normalized)
    
    # Assign sum of squared distances to k element of the sse dictionary
    ____[____] = kmeans.____   

# Add the plot title, x and y axis labels
plt.____('The Elbow Method')
plt.____('____')
plt.____('____')

# Plot SSE values for each k stored as keys in the dictionary
sns.____(x=list(sse.____()), y=list(sse.____()))
plt.show()
แก้ไขและรันโค้ด