Alvi Syahrini Utami
Pembuatan model untuk klasifikasi data kanker payudara. Model machine learning yang digunakan pada proyek ini adalah Support Vector Machine (SVM), Naive Bayes, dan salah satu model yang termasuk dalam ANN yaitu Multilayer Perceptron (MLP).
1. Memuat dataset dan Menampilkan Data
Data diambil dari https://www.kaggle.com/datasets/uciml/breast-cancer-wisconsin-data
import pandas as pd : mengimpor pandas untuk memanipulasi dan menganalisis data dan diberi alias sebagai pd.
df = pd.read_csv('/content/drive/My Drive/dataset/data.csv') : membaca file data kanker payudara ‘data.csv’ lalu disimpan pada variabel df.
df.head(5) : menampilkan 5 data teratas.
2. Mengubah data menjadi numerik
Atribut ‘diagnosis’ sebagai target klasifikasi perlu diubah menjadi numerik lalu 5 data teratas ditampilkan.
3. Memisahkan fitur (X) dan target (y)
Atribut ‘id’ tidak dipakai.
Atribut ‘diagnosis’ sebagai target (y).
Atribut lainnya sebagai fitur (X) untuk melakukan klasifikasi. Terdapat 30 fitur pada dataset tersebut, diantaranya adalah radius (mean of distances from center to points on the perimeter), texture (standard deviation of gray-scale values), perimeter, area, smoothness (local variation in radius lengths), compactness (perimeter^2 / area – 1.0), concavity (severity of concave portions of the contour), concave points (number of concave portions of the contour), symmetry, dan fractal dimension .
4. Membagi data latih dan data uji
Pada proyek ini, data latih sebanyak 70% dari total data dan data uji sebanyak 30% dari total data.
from sklearn.model_selection import train_test_split : mengimpor train_test_split untuk memisahkan data latih dan data uji.
5. Melatih, menguji dan evaluasi model Naive Bayes
Hasil akurasi : 92% menunjukkan bahwa model sudah dapat memprediksi dengan baik berdasarkan data uji.
Laporan klasifikasi :
untuk kelas 0
Precision = 0.85, recall = 0.95, f1-score = 0.90
untuk kelas 1
Precision = 0.97, recall = 0.91, f1-score = 0.94
6. Melatih, menguji dan evaluasi model Support Vector Machine (SVM)
Hasil akurasi : 89% menunjukkan bahwa model sudah dapat memprediksi dengan baik berdasarkan data uji.
Laporan klasifikasi :
untuk kelas 0
Precision = 0.79, recall = 0.91, f1-score = 0.85
untuk kelas 1
Precision = 0.95, recall = 0.88, f1-score = 0.91
7. Melatih, menguji dan evaluasi model Multi Layer Perceptron (MLP)
Hasil akurasi : 94% menunjukkan bahwa model sudah dapat memprediksi dengan baik berdasarkan data uji.
Laporan klasifikasi :
untuk kelas 0
Precision = 0.88, recall = 0.95, f1-score = 0.91
untuk kelas 1
Precision = 0.97, recall = 0.93, f1-score = 0.95
Kesimpulan
Naive Bayes : model dapat memprediksi data uji dengan baik dengan nilai akurasi 92%. Laporan klasifikasi menunjukkan bahwa model dapat melakukan klasifikasi dengan baik untuk kelas 0 maupun kelas 1.
Support Vector Machine : model dapat memprediksi data uji dengan baik dengan nilai akurasi 89%. Laporan klasifikasi menunjukkan bahwa model dapat melakukan klasifikasi dengan baik untuk kelas 0 maupun kelas 1.
Multi Layer Perceptron : model dapat memprediksi data uji dengan baik dengan nilai akurasi 94%. Laporan klasifikasi menunjukkan bahwa model dapat melakukan klasifikasi dengan baik untuk kelas 0 maupun kelas 1.
Ketiga model machine learning di atas dapat melakukan prediksi terhadap data uji dengan baik, nilai akurasi tertinggi didapatkan pada model Multi Layer Perceptron. Untuk kinerja klasifikasi menunjukkan bahwa tiga model tersebut memiliki kinerja yang hampir sama.