Anda di halaman 1dari 9

TUGAS INDIVIDU

PEMODELAN DAN PEMBELAJARAN MESIN


SUPPORT VECTOR MACHINE (SVM) USING PHYTON
Diajukan untuk memenuhi tugas mata kuliah Pemodelan dan Pembelajaran Mesin
Dibimbing oleh Bapak Dr.Phil. Ir. Didik Hariyanto, S.Pd. T, M.T.

Disusun oleh:
KELAS H

Fadly Septian Haryono


(21538144022)

PROGRAM STUDI TEKNIK ELEKTRO


FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
2023
SUPPORT VECTOR MACHINE (SVM) USING PHYTON
“Caesarian Section Classification Dataset”
Sumber data: https://archive.ics.uci.edu/dataset/472/caesarian+section+classification+dataset
Keterangan Variabel:
1. Id = registrasi
2. Umur (age)= (Independent Variable)
3. Persalianan pertama= (Independent Variable)
4. Persalinan kedua= (Independent Variable)
5. Blood (BS)= (Independent Variable)
6. Detak Jantung (Heart Rate) = (Independent Variable)
7. Caesarian probability berdasarkan kategori sbeelumnya (Dependent Variable)

Gambar 1. SVM Using Phyton (inisialisai library dan class)


Keterangan:
1. Langkah pertama yaitu memulai penerjemahan phyton
2. Memasukkan library seperti:
1) pandas (pd): Pandas adalah library Python yang digunakan untuk manipulasi
dan analisis data. Ini menyediakan struktur data yang kuat, seperti
DataFrame, yang memungkinkan Anda untuk dengan mudah mengimpor,
membersihkan, dan memanipulasi data tabular.
2) seaborn (sn): Seaborn adalah library untuk visualisasi data statistik. Ini
memungkinkan Anda untuk membuat plot yang indah dan informatif dengan
cepat, dengan antarmuka yang sederhana.
3) matplotlib.pyplot (plt): Matplotlib adalah library yang digunakan untuk
membuat grafik dan plot. Dalam konteks Anda, ini digunakan untuk
menggambar visualisasi data.
4) pandas.read_csv(): Ini adalah metode dari library pandas yang digunakan
untuk membaca data dari file CSV ke dalam DataFrame, memudahkan
analisis data tabular.
5) pandas.plotting.scatter_matrix(): Ini adalah metode dari library pandas yang
digunakan untuk membuat matriks sebaran (scatter matrix) untuk
menganalisis hubungan antara variabel numerik dalam DataFrame.
6) sklearn.model_selection.train_test_split(): Dari library scikit-learn (sklearn),
ini digunakan untuk memisahkan data menjadi set pelatihan dan pengujian,
yang diperlukan dalam pembuatan model pembelajaran mesin.
7) sklearn.metrics.classification_report(): Ini adalah metode dari scikit-learn
yang digunakan untuk menghasilkan laporan yang berisi berbagai metrik
evaluasi untuk model klasifikasi, seperti presisi, akurasi, dan lainnya.
8) sklearn.metrics.confusion_matrix(): Ini adalah metode dari scikit-learn yang
digunakan untuk menghitung matriks kebingungan (confusion matrix) untuk
mengukur kinerja model klasifikasi.
9) sklearn.metrics.accuracy_score(): Ini adalah metode dari scikit-learn yang
digunakan untuk mengukur akurasi prediksi model klasifikasi.
10) sklearn.svm.SVC(): Dari scikit-learn, ini adalah library Support Vector
Machine (SVM) yang digunakan untuk membuat model pembelajaran mesin
dengan metode SVM, yang berguna untuk masalah klasifikasi dan regresi.

3. Memasukkan data dari url:


https://archive.ics.uci.edu/dataset/472/caesarian+section+classification+dataset
yang memiliki format CSV (comma separated value) yang terbagi terbagi menjadi
beberapa kaelas kategori untuk variabel yang termasuk nama-nama kelas
independent variable (X) dan dependent variable (Y) dan deklarasikan untuk bagian
variable x train dan y train dengan cara
url=("D:/download/csv_result-caesarian.csv")
names = ['id','Age','Delivery_1','Delivery_2','Blood','Heart', 'Caesarian']
dataset = pd.read_csv(url, names=names)

4. Setelah data dimasukkan, lakukan instrtuksi untuk mnampilkan header, 20 data


pertama, deskripsi data, dan klasifikasi variabel dependent yaitu “caesarian” yang
terbagi menjadi 2 kategori yaitu 1 (ya) da 0 (tidak) dengan cara:
# shape
print(dataset.shape)
# head
print(dataset.head(20))
# descriptions
print(dataset.describe())
# class distribution
print(dataset.groupby('Caesarian').size())

Gambar 2. SVM Using Phyton (head, print dataset, dan class distribution)

5. Setelah menampilkan data, lakukan visualisasi plot dalam bentuk box and whisker,
histrogram, dan scatter plot dengan isntruksi

# box and whisker plots


dataset.plot(kind='box', subplots=True, layout=(3,3), sharex=False, sharey=False)
pyplot.show()
# histograms
dataset.hist()
pyplot.show()
# scatter plot matrix
scatter_matrix(dataset)
pyplot.show()

Gambar 3. SVM Using Phyton (box and whisker)

Gambar 4. SVM Using Phyton (box and whisker)


Gambar 5. SVM Using Phyton (Histrogram)

Gambar 6. SVM Using Phyton (scatter)

6. Melakukan validasi dataset yaitu mebagi data menjadi 80% untuk data train dan 20%
untuk validation data dengan cara

# Split-out validation dataset


array = dataset.values
X = array[:,0:4]
y = array[:,4]
# print (X)
# print (y)
X_train, X_validation, Y_train, Y_validation = train_test_split(X, y, test_size=0.20,
random_state=1)
# print (X_train)
# print (X_validation)

Gambar 7. SVM Using Phyton (scatter)

7. Melakukan pengukuran model dan mebuat prediksi dengan SVC dengan cara

# Call SVC and fit the model


model = SVC(gamma='auto')
model.fit(X_train, Y_train)
# Make predictions on validation dataset
predictions = model.predict(X_validation)
# Evaluate predictions
print(accuracy_score(Y_validation, predictions))
print(confusion_matrix(Y_validation, predictions))
print(classification_report(Y_validation, predictions))

Gambar 8. SVM Using Phyton (fit the model and make prediction dan hasil prediksi
yang didapat yaitu 50%)
8. Membuat confusion matrix dengan cara

# create confusion matrix


confusion_matrix
=pd.crosstab(Y_validation,predictions,rownames=['Actual'],colnames=['Predicted'])
sn.heatmap(confusion_matrix, annot=True)
# show accuracy score and plot confusion matrix
plt.show()

Gambar 9. Confusion matrix

Keterangan gambar:
True (False) =8
True + false = 8 +8
𝟖
Accuracy= 𝟏𝟔 ≈ 0,50 atau 50%
9. Mencoba dengan data baru

# Test with new data

X_new=[[ 25,32,1,1]]

prediction=model.predict(X_new)

print(prediction)

Gambar 10. Prediski dengan data baru

Anda mungkin juga menyukai