ความท้าทายของการจำแนกประเภท

Supervised Learning ด้วย scikit-learn

George Boorman

Core Curriculum Manager, DataCamp

การจำแนกป้ายกำกับของข้อมูลใหม่

  1. สร้างโมเดล
  2. โมเดลเรียนรู้จากข้อมูลที่มีป้ายกำกับที่เราส่งให้
  3. ส่งข้อมูลที่ไม่มีป้ายกำกับให้โมเดลเป็น input
  4. โมเดลทำนายป้ายกำกับของข้อมูลที่ยังไม่เคยเห็น

 

  • ข้อมูลที่มีป้ายกำกับ = ข้อมูลฝึก
Supervised Learning ด้วย scikit-learn

k-Nearest Neighbors

  • ทำนายป้ายกำกับของจุดข้อมูลโดย

    • ดูจากข้อมูลที่มีป้ายกำกับ k จุดที่ใกล้ที่สุด

    • ลงคะแนนเสียงข้างมาก

Supervised Learning ด้วย scikit-learn

k-Nearest Neighbors

scatter plot แสดงจุดข้อมูลสีน้ำเงินและสีแดง พร้อมจุดข้อมูลใหม่สีดำ

Supervised Learning ด้วย scikit-learn

k-Nearest Neighbors

วงรัศมีรอบ 3 จุดข้อมูลที่ใกล้ที่สุดกับจุดสีดำ

Supervised Learning ด้วย scikit-learn

k-Nearest Neighbors

วงรัศมีรอบ 5 จุดข้อมูลที่ใกล้ที่สุดกับจุดสีดำ

Supervised Learning ด้วย scikit-learn

แนวคิดเบื้องหลัง KNN

scatter plot ระหว่างค่าใช้จ่ายช่วงเย็นกับช่วงกลางวัน โดยจุดสีน้ำเงินคือลูกค้าที่เลิกใช้บริการ และสีแดงคือยังคงใช้บริการอยู่

Supervised Learning ด้วย scikit-learn

แนวคิดเบื้องหลัง KNN

scatter plot การเลิกใช้บริการพร้อม decision boundary ที่แบ่งจุดข้อมูลตามผลทำนายของ KNN

Supervised Learning ด้วย scikit-learn

ใช้ scikit-learn เพื่อ fit classifier

from sklearn.neighbors import KNeighborsClassifier

X = churn_df[["total_day_charge", "total_eve_charge"]].values y = churn_df["churn"].values
print(X.shape, y.shape)
(3333, 2), (3333,)
knn = KNeighborsClassifier(n_neighbors=15)

knn.fit(X, y)
Supervised Learning ด้วย scikit-learn

ทำนายข้อมูลที่ไม่มีป้ายกำกับ

X_new = np.array([[56.8, 17.5],
                  [24.4, 24.1],
                  [50.1, 10.9]])

print(X_new.shape)
(3, 2)
predictions = knn.predict(X_new)

print('Predictions: {}'.format(predictions))
Predictions: [1 0 0]
Supervised Learning ด้วย scikit-learn

มาฝึกกันเถอะ!

Supervised Learning ด้วย scikit-learn

Preparing Video For Download...