Pelatihan K-means
Sekarang RDD sudah siap untuk pelatihan, pada bagian ke-2 ini, Anda akan mengujinya dengan k dari 13 hingga 16 (agar waktu komputasi lebih hemat) dan menggunakan metode elbow untuk memilih k yang tepat. Gagasan metode elbow adalah menjalankan pengelompokan K-means pada himpunan data untuk berbagai nilai k, menghitung Within Set Sum of Squared Error (WSSSE), dan memilih k terbaik berdasarkan penurunan mendadak pada WSSSE, yaitu titik terjadinya “siku” (elbow). Selanjutnya, Anda akan melatih ulang model dengan k terbaik dan akhirnya mendapatkan centroid (pusat klaster).
Ingat, Anda sudah memiliki SparkContext sc dan RDD rdd_split_int yang tersedia di ruang kerja Anda.
Latihan ini adalah bagian dari kursus
Fundamental Big Data dengan PySpark
Petunjuk latihan
- Latih model KMeans dengan jumlah klaster dari 13 hingga 16 dan cetak WSSSE untuk setiap klaster.
- Latih kembali model KMeans dengan k terbaik.
- Dapatkan Pusat Klaster (centroid) dari model KMeans yang dilatih dengan k terbaik.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Train the model with clusters from 13 to 16 and compute WSSSE
for clst in range(13, 17):
model = KMeans.____(rdd_split_int, clst, seed=1)
WSSSE = rdd_split_int.____(lambda point: error(point)).reduce(lambda x, y: x + y)
print("The cluster {} has Within Set Sum of Squared Error {}".format(clst, ____))
# Train the model again with the best k
model = KMeans.train(rdd_split_int, k=____, seed=1)
# Get cluster centers
cluster_centers = model.____