0Pricing
Python Academy · บทเรียน

โครงงานการจัดกลุ่มแบบ K-Means

นำไปใช้กับชุดข้อมูลจริง

โครงงานการจัดกลุ่มแบบ K-Means เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 5 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 5 บทเรียน

โครงงานการจัดกลุ่มแบบเค-มีนส์

โครงงานการจัดกลุ่มแบบเค-มีนส์

ในโครงงานนี้ เราจะนำการจัดกลุ่มแบบเค-มีนส์ไปใช้กับชุดข้อมูลจากโลกจริง นั่นคือการแบ่งกลุ่มลูกค้า เป้าหมายคือการจัดกลุ่มลูกค้าตามรูปแบบการใช้จ่าย

โครงงานการจัดกลุ่มแบบ K-Means — ภาพประกอบ 1

ภาพรวมชุดข้อมูล

ภาพรวมชุดข้อมูล

ชุดข้อมูลประกอบด้วยคอลัมน์ต่อไปนี้:

  • รหัสลูกค้า ID: ตัวระบุที่ไม่ซ้ำกันสำหรับลูกค้าแต่ละราย
  • อายุ: อายุของลูกค้า
  • รายได้ต่อปี: รายได้ต่อปีในหน่วยพันดอลลาร์
  • คะแนนการใช้จ่าย: คะแนนที่กำหนดจากพฤติกรรมและรูปแบบการใช้จ่ายของลูกค้า (1–100)

ขั้นตอนที่ 1: การนำเข้าชุดข้อมูลและไลบรารี

ขั้นตอนที่ 1: การนำเข้าชุดข้อมูลและไลบรารี

เราจะเริ่มด้วยการนำเข้าไลบรารีที่จำเป็นและโหลดชุดข้อมูล:

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans

# Load dataset
data = pd.read_csv('Mall_Customers.csv')
print(data.head())

ขั้นตอนที่ 2: การเตรียมข้อมูลล่วงหน้า

ขั้นตอนที่ 2: การเตรียมข้อมูลล่วงหน้า

เราจะเลือกคุณลักษณะที่เกี่ยวข้องสำหรับการจัดกลุ่ม และปรับข้อมูลให้อยู่ในมาตรฐานเดียวกันหากจำเป็น สำหรับโครงงานนี้ เราจะใช้ รายได้ต่อปี และ คะแนนการใช้จ่าย:

# Select relevant features
X = data[['Annual Income (k$)', 'Spending Score (1-100)']].values
print(X[:5])

ขั้นตอนที่ 3: การกำหนดจำนวนกลุ่มที่เหมาะสมที่สุด

ขั้นตอนที่ 3: การกำหนดจำนวนกลุ่มที่เหมาะสมที่สุด

เราใช้วิธีข้อศอกเพื่อค้นหาจำนวนกลุ่มที่เหมาะสมที่สุด โดยสร้างกราฟผลรวมกำลังสองภายในกลุ่ม (WCSS) สำหรับค่า K ต่าง ๆ:

wcss = []
for i in range(1, 11):
    kmeans = KMeans(n_clusters=i, init='k-means++', random_state=42)
    kmeans.fit(X)
    wcss.append(kmeans.inertia_)

plt.plot(range(1, 11), wcss)
plt.title('Elbow Method')
plt.xlabel('Number of Clusters')
plt.ylabel('WCSS')
plt.show()

ขั้นตอนที่ 4: การใช้การจัดกลุ่มแบบเค-มีนส์

ขั้นตอนที่ 4: การใช้การจัดกลุ่มแบบเค-มีนส์

จากวิธีข้อศอก เราเลือกจำนวนกลุ่มที่เหมาะสมที่สุด (เช่น K=5) แล้วใช้ fit กับแบบจำลองเค-มีนส์:

kmeans = KMeans(n_clusters=5, init='k-means++', random_state=42)
kmeans.fit(X)

# Add cluster labels to the dataset
data['Cluster'] = kmeans.labels_
print(data.head())

ขั้นตอนที่ 5: การแสดงภาพกลุ่ม

ขั้นตอนที่ 5: การแสดงภาพกลุ่ม

เราสามารถ plot กลุ่มต่าง ๆ ในปริภูมิ 2 มิติ เพื่อสังเกตการแยกออกจากกัน:

plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='viridis')
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=200, c='red', marker='X')
plt.title('Customer Segmentation')
plt.xlabel('Annual Income (k$)')
plt.ylabel('Spending Score (1-100)')
plt.show()

ขั้นตอนที่ 6: การตีความกลุ่ม

ขั้นตอนที่ 6: การตีความกลุ่ม

แต่ละกลุ่มเป็นตัวแทนของลูกค้าที่มีรูปแบบการใช้จ่ายคล้ายกัน ตัวอย่างเช่น:

  • กลุ่มที่ 1: รายได้สูง การใช้จ่ายสูง
  • กลุ่มที่ 2: รายได้ต่ำ การใช้จ่ายต่ำ
  • กลุ่มที่ 3: รายได้ปานกลาง การใช้จ่ายสูง

ความท้าทายในการจัดกลุ่มจากโลกจริง

ความท้าทายในการจัดกลุ่มจากโลกจริง

แม้การจัดกลุ่มจะมีประสิทธิภาพ แต่การนำไปใช้ในโลกจริงก็ต้องเผชิญกับความท้าทาย เช่น:

  • ชุดข้อมูลที่มีหลายมิติ
  • ข้อมูลที่มีสัญญาณรบกวนหรือไม่ครบถ้วน
  • การตีความผลลัพธ์ของกลุ่มให้มีความหมาย

สรุปและขั้นตอนถัดไป

สรุปและขั้นตอนถัดไป

ในโครงงานนี้ เราได้:

  • สำรวจชุดข้อมูลจากโลกจริง
  • ใช้การจัดกลุ่มแบบเค-มีนส์และแสดงผลลัพธ์เป็นภาพ
  • ตีความกลุ่มต่าง ๆ เพื่อทำความเข้าใจพฤติกรรมของลูกค้า

ต่อไป เราจะเรียนรู้เทคนิคการลดมิติ เช่น PCA และ t-SNE

โครงงานการจัดกลุ่มแบบ K-Means — ภาพประกอบ 10

คำถามที่พบบ่อย

บทเรียน “โครงงานการจัดกลุ่มแบบ K-Means” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “โครงงานการจัดกลุ่มแบบ K-Means” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 5 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “โครงงานการจัดกลุ่มแบบ K-Means”

นำไปใช้กับชุดข้อมูลจริง คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 5 บทเรียน

บทเรียน “โครงงานการจัดกลุ่มแบบ K-Means” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. แนะนำอัลกอริทึมการจัดกลุ่ม
  2. การจัดกลุ่มแบบ K-Means
  3. โครงงานการจัดกลุ่มแบบ K-Means
  4. พื้นฐานการลดมิติข้อมูล
  5. การประยุกต์ใช้การลดมิติข้อมูล
← กลับไปที่ Python Academy