Lompat ke konten Lompat ke sidebar Lompat ke footer

Praktikum Modul 5: Klasifikasi Mengenal Pola dalam Data

 


Pada pembelajaran modul 5 kali ini, kita mempelajari tentang bagaimana klasifikasi bekerja sebagai salah satu teknik utama dalam machine learning dan AI. Klasifikasi merupakan metode yang memungkinkan sistem untuk mengelompokkan data ke dalam kategori tertentu berdasarkan contoh-contoh yang telah diberikan sebelumnya. Proses ini melibatkan pengolahan data mentah, ekstraksi fitur, serta penerapan algoritma untuk menemukan batas pemisah antar kelas. Melalui pendekatan ini, kita dapat membangun model yang mampu memprediksi apakah suatu data baru termasuk dalam kelas tertentu, misalnya membedakan pelanggan yang berpotensi churn atau loyal, mengidentifikasi email spam, hingga mengenali objek dalam gambar.

Selain itu, modul ini juga menekankan pentingnya mengenal pola dalam data, karena pola-pola inilah yang menjadi fondasi bagi model untuk belajar dan membuat keputusan. Sistem machine learning tidak bekerja berdasarkan aturan yang ditentukan secara eksplisit, tetapi menemukan sendiri struktur dan hubungan yang tersembunyi di dalam data. Dengan memahami bagaimana pola-pola tersebut terbentuk dan bagaimana algoritma menganalisisnya, kita dapat merancang model yang lebih akurat, efisien, serta mampu memberikan insight yang bermanfaat. Pembelajaran modul ini menjadi langkah penting untuk memperdalam pemahaman tentang bagaimana AI mengambil keputusan dan bagaimana data dapat digunakan untuk menghasilkan prediksi yang cerdas.

Lebih jauh lagi, pemahaman mengenai klasifikasi dan pola data ini juga memperkenalkan kita pada proses evaluasi performa model, seperti akurasi, presisi, recall, dan confusion matrix. Melalui evaluasi tersebut, kita dapat menilai seberapa baik model dalam mengenali pola yang benar dan menghindari kesalahan prediksi. Langkah ini penting agar model yang dihasilkan tidak hanya bekerja baik pada data pelatihan, tetapi juga dapat melakukan generalisasi dengan baik pada data baru. Dengan demikian, modul ini tidak hanya memberikan pemahaman konsep, tetapi juga membangun dasar keterampilan praktis dalam merancang dan menilai model machine learning yang efektif.

1. Persiapan Praktikum

Sebelum memulai praktikum kita harus mempersiapkan tools yang akan digunakan  yaitu google colab. Google colab dapat diakses melalui google colab. Cara menggunakan google colab sangatlah mudah anda tinggal masuk kesitus colab diatas, lalu login dengan akun google yang anda miliki, setelah itu opsi open notebook akan muncul, pilih pada pojok kiri yaitu opsi new notebook, maka anda telah selesai untuk membuat notebook baru yang akan anda gunakan. Oh yaaa, jika opsi open notebook tidak muncul otomatis, anda bisa pergi ke opsi file di pojok kiri atas dan pilih open notebook. Setelah anda membuat laman notebook baru anda bisa mengganti nama file/laman notebook anda dengan format .ipynb.

2. Memulai Praktikum

a. Membuat Dataset Dummy Pelanggan (Churn vs Loyal)

Pada tahap pertama praktikum, kita akan membuat dataset dummy yang berisi 30 data pelanggan menggunakan library NumPy dan Pandas. Dataset ini memuat beberapa fitur penting seperti lama berlangganan, frekuensi pembelian, total pengeluaran, serta respons terhadap promo, yang sering digunakan untuk menganalisis perilaku pelanggan. Proses pembuatan data juga menggunakan nilai seed tertentu agar hasilnya dapat direproduksi secara konsisten sesuai aturan praktikum. Setelah data selesai dibuat, dataset disimpan dalam format CSV dan dapat langsung diunduh melalui Google Colab. Tahap ini membantu mahasiswa memahami bagaimana data sintetis dibuat sebelum digunakan dalam model machine learning.

b. Melakukan Train/Test Split dan Standarisasi

Pada bagian ini, kita akan memisahkan fitur dan target menggunakan variabel x dan y, lalu membagi dataset menjadi data latih (80%) dan data uji (20%) menggunakan fungsi train_test_split. Pembagian ini memastikan model dapat dilatih dengan baik dan dievaluasi secara objektif menggunakan data yang tidak pernah dilihat sebelumnya. Pembagian juga menggunakan stratify berdasarkan label untuk menjaga proporsi kelas tetap seimbang. Setelah itu, mahasiswa melakukan standarisasi menggunakan StandardScaler, di mana fitur pada data latih di-fit dan di-transform, sementara data uji hanya di-transform agar konsisten. Standarisasi ini sangat penting terutama untuk algoritma seperti KNN yang sensitif terhadap skala fitur, sehingga proses pembelajaran menjadi lebih stabil dan hasil prediksi lebih akurat.

c. Menerapkan Model K-Nearest Neighbor (KNN)

Di tahap ini, selanjutnya kita membangun model klasifikasi menggunakan algoritma K-Nearest Neighbor (KNN) dengan jumlah tetangga terdekat (k) sebanyak lima. Model kemudian dilatih menggunakan data latih yang telah distandarisasi sehingga setiap fitur memiliki skala yang sebanding. Setelah model dilatih, mahasiswa menggunakan data uji yang juga sudah distandarisasi untuk menghasilkan prediksi kelas pelanggan apakah loyal atau churn. Selanjutnya, hasil prediksi dievaluasi menggunakan classification report yang menampilkan precision, recall, F1-score, serta akurasi model. Mahasiswa juga membuat confusion matrix untuk melihat detail kesalahan dan keberhasilan klasifikasi model, kemudian memvisualisasikannya menggunakan ConfusionMatrixDisplay. Tahap ini memberi gambaran lebih lengkap terkait proses pelatihan, prediksi, dan evaluasi model KNN secara menyeluruh.

d. Melatih Model Decision Tree & Evaluasi

Tahap ini model Decision Tree Classifier digunakan untuk memprediksi apakah pelanggan termasuk kategori churn atau loyal. Model diinisialisasi menggunakan criterion Gini untuk menilai kualitas pemisahan data, serta random_state agar hasil tetap konsisten. Setelah dilatih dengan data latih, model melakukan prediksi pada data uji untuk mengukur kemampuan generalisasi. Kinerja model kemudian dievaluasi melalui classification report yang menampilkan metrik precision, recall, f1-score, dan accuracy sehingga kita dapat menilai kekuatan model pada tiap kelas. Selanjutnya, hasil prediksi divisualisasikan melalui confusion matrix untuk melihat pola prediksi benar dan salah memberikan gambaran jelas mengenai kelas mana yang paling sering salah diklasifikasikan oleh model.

e. Melatih Model Random Forest & Evaluasi

Pada langkah ini digunakan algoritma Random Forest, yaitu model ensemble yang menggabungkan banyak decision tree untuk meningkatkan akurasi dan mengurangi overfitting. Model diinisialisasi dengan 100 pohon keputusan agar proses voting antar pohon lebih stabil, serta random_state untuk memastikan hasil eksperimen tetap sama ketika dijalankan ulang. Setelah dilatih pada data latih, model digunakan untuk memprediksi label pada data uji. Kinerja model kemudian dievaluasi melalui classification report yang memuat precision, recall, f1-score, dan accuracy sehingga kita dapat menilai performa model pada tiap kelas. Selanjutnya, confusion matrix divisualisasikan untuk melihat jumlah prediksi benar maupun salah, membantu kita memahami bagaimana model menangani masing-masing kelas dalam kasus churn vs loyal.

f. Merangkum Performa Semua Model dalam Satu Tabel Evaluasi

Pada tahap ini dibuat sebuah fungsi khusus untuk menghitung metrik evaluasi utama seperti akurasi, precision, recall, dan f1-score, dengan fokus pada kelas positif yaitu Churn. Fungsi ini memudahkan proses evaluasi karena dapat digunakan ulang untuk berbagai model. Selanjutnya, ketiga model yang telah dilatih sebelumnya KNN, Decision Tree, dan Random Forest—dievaluasi dengan menggunakan fungsi tersebut. Setiap hasil evaluasi disimpan dalam bentuk dictionary yang berisi nama model dan nilai metriknya, lalu seluruh hasil tersebut dikumpulkan ke dalam sebuah list. List ini kemudian diubah menjadi DataFrame agar tampilannya lebih rapi dan mudah dibandingkan. Dengan langkah ini, mahasiswa dapat melihat secara langsung model mana yang memiliki performa terbaik dalam mendeteksi pelanggan yang berpotensi churn berdasarkan nilai accuracy, precision, recall, dan f1-score.

3. Interpretasi

KNN: Model ini menghasilkan performa sempurna (seluruh metrik bernilai 1.00). Kinerja tinggi ini muncul karena karakteristik dataset yang kecil dan mudah dipisahkan, serta penggunaan proses standarisasi yang tepat sehingga jarak antar data menjadi lebih akurat untuk perhitungan KNN.

Decision Tree: Model menghasilkan akurasi 83% dengan precision sempurna, namun recall hanya 0.667. Hal ini menunjukkan bahwa model cukup baik dalam mengenali kelas loyal, tetapi gagal mendeteksi sebagian kasus churn. Kondisi ini mengindikasikan adanya potensi overfitting, terutama karena jumlah data yang terbatas.

Random Forest: Model ini juga memberikan hasil sempurna. Keunggulannya berasal dari proses ensemble yang menggabungkan banyak pohon keputusan, sehingga prediksi menjadi lebih konsisten, stabil, dan lebih tahan terhadap variasi data.

4. Kesimpulan

Secara keseluruhan, KNN dan Random Forest menjadi model dengan performa terbaik pada dataset ini karena mampu mencapai hasil evaluasi maksimal. Namun untuk penggunaan di situasi nyata, Random Forest lebih direkomendasikan sebab memiliki stabilitas lebih tinggi pada data yang kompleks. Sementara itu, KNN tetap menjadi pilihan yang baik untuk dataset kecil yang sudah melewati proses standarisasi dengan benar.


Link Praktikum & Latihan

1. Praktikum

2. Latihan





Referensi

Sumber utama:

Link Flipbook: Flipbook

Atau anda bisa mengakses langsung dari blog pribadi penulis: Adi Muhamad Muhsidi


Posting Komentar untuk "Praktikum Modul 5: Klasifikasi Mengenal Pola dalam Data"