Anda di halaman 1dari 13

LAPORAN DATA SCIENCE

“METODE KLASIFIKASI SVM DENGAN STUDI KASUS DALAM BAHASA


PYTHON”

Dosen Pengampu:
LUKMAN, S.Kom, M.T

Ditulis Oleh :
Syahril Akbar (105841103821)

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MAKASSAR
2023
KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Esa atas segala limpahan rahmat dan karunia-Nya,
sehingga penulis dapat menyelesaikan laporan ini dengan judul "Metode Klasifikasi SVM dengan
Studi Kasus dalam Bahasa Python."

Laporan ini disusun sebagai pemenuhan tugas mata kuliah Data Science dalam Program
Studi Teknik Informatika. Penulisan laporan ini bertujuan untuk memberikan pemahaman
mengenai metode klasifikasi SVM dan aplikasinya dalam studi kasus menggunakan bahasa
pemrograman Python.

Dalam laporan ini, penulis memaparkan penjelasan secara teoretis mengenai metode SVM,
beserta kelebihan dan kekurangannya. Selanjutnya, penulis mengimplementasikan metode
tersebut ke dalam studi kasus yang telah dipilih. Melalui penerapan ini, diharapkan pembaca dapat
memahami bagaimana metode SVM bekerja dan manfaatnya dalam dunia nyata.

Penulis menyadari bahwa laporan ini masih jauh dari sempurna. Oleh karena itu, penulis
sangat mengharapkan kritik dan saran yang membangun demi perbaikan di masa mendatang.
Semoga laporan ini bermanfaat bagi pembaca, khususnya bagi mahasiswa yang sedang
mempelajari mata kuliah Data Science.

Hormat,

Syahril Akbar

i
DAFTAR ISI

KATA PENGANTAR ..................................................................................................................... i


DAFTAR ISI................................................................................................................................... ii
BAB I .............................................................................................................................................. 1
PENDAHULUAN .......................................................................................................................... 1
A. Latar Belakang ..................................................................................................................... 1
B. Rumusan Masalah ................................................................................................................ 2
C. Tujuan Penelitian ................................................................................................................. 2
BAB II............................................................................................................................................. 3
PEMBAHASAN ............................................................................................................................. 3
A. Definisi Metode Klasifikasi SVM ....................................................................................... 3
B. Algoritma Metode Klasifikasi SVM .................................................................................... 3
1. Tahap pelatihan ................................................................................................................ 3
2. Tahap Prediksi .................................................................................................................. 4
C. Kelebihan dan Kekurangan Metode Klasifikasi SVM......................................................... 4
D. Implementasi Metode Klasifikasi SVM Dalam Studi Kasus Klasifikasi Spam Dari Email
Menggunakan Bahasa Pemrograman Python .............................................................................. 5
E. Langkah-Langkah Untuk Menjalankan Program................................................................. 7
1. Install pustaka yang diperlukan ........................................................................................ 7
2. Unduh Kumpulan Data..................................................................................................... 7
3. Jalankan Skrip .................................................................................................................. 7
4. Interpretasi Keluaran ........................................................................................................ 7
5. Tips Dan Penyesuaian ...................................................................................................... 8
BAB III ........................................................................................................................................... 9
PENUTUP....................................................................................................................................... 9
A. Kesimpulan .......................................................................................................................... 9
B. Saran .................................................................................................................................... 9
DAFTAR PUSTAKA ................................................................................................................... 10

ii
BAB I

PENDAHULUAN

A. Latar Belakang
Klasifikasi merupakan salah satu tugas utama dalam data science.
Klasifikasi adalah proses membagi data ke dalam kelompok-kelompok
berdasarkan karakteristiknya. Metode klasifikasi yang umum digunakan antara
lain:
 Klasifikasi Naive Bayes
 Klasifikasi Decision Tree
 Klasifikasi Random Forest
 Klasifikasi Support Vector Machine (SVM)

Metode klasifikasi SVM merupakan salah satu metode klasifikasi yang


paling populer. SVM bekerja dengan cara menemukan hyperplane terbaik yang
dapat memisahkan dua kelas data. Hyperplane adalah garis atau bidang yang
dapat memisahkan dua kelas data dengan margin yang paling besar.

SVM memiliki beberapa kelebihan, antara lain:

 Akurasi yang tinggi


 Dapat menangani data non-linier
 Robust terhadap noise

SVM juga memiliki beberapa kekurangan, antara lain:

 Memerlukan data yang cukup besar


 Implementasi yang relatif kompleks

Contoh penerapan metode klasifikasi SVM dalam dunia nyata antara lain:

 Klasifikasi jenis kelamin dari foto wajah


 Klasifikasi jenis bunga dari gambar bunga
 Klasifikasi spam dari email

1
Berdasarkan latar belakang tersebut, maka penulis tertarik untuk melakukan
penelitian tentang metode klasifikasi SVM. Penelitian ini bertujuan untuk
memberikan pemahaman mengenai metode klasifikasi SVM dan aplikasinya
dalam studi kasus menggunakan bahasa pemrograman Python.

Pada penelitian ini, penulis akan menggunakan studi kasus Klasifikasi spam
dari email. Studi kasus ini dipilih karena merupakan salah satu contoh penerapan
metode klasifikasi SVM yang paling umum.

Penulis berharap penelitian ini dapat memberikan manfaat bagi pembaca,


khususnya bagi mahasiswa yang sedang mempelajari mata kuliah Data Science.

B. Rumusan Masalah
Berdasarkan latar belakang yang telah diuraikan, maka rumusan masalah
dalam penelitian ini adalah sebagai berikut:
1. Bagaimana cara menerapkan metode klasifikasi SVM dalam studi kasus
klasifikasi spam dari email menggunakan bahasa pemrograman Python?
2. Bagaimana tingkat akurasi metode klasifikasi SVM dalam studi kasus
tersebut?

C. Tujuan Penelitian
Berdasarkan rumusan masalah yang telah diuraikan, maka tujuan penelitian
ini adalah untuk memberikan pemahaman mengenai metode klasifikasi SVM
dan aplikasinya dalam studi kasus klasifikasi spam dari email menggunakan
bahasa pemrograman Python. Tujuan umum ini penting untuk dicapai karena
penelitian ini bertujuan untuk memberikan manfaat bagi pembaca, khususnya
bagi mahasiswa yang sedang mempelajari mata kuliah Data Science.

2
BAB II

PEMBAHASAN

A. Definisi Metode Klasifikasi SVM


Support Vector Machine (SVM) adalah algoritme pembelajaran mesin yang
diawasi yang dapat digunakan untuk klasifikasi dan regresi. SVM bekerja
dengan mencari hyperplane yang dapat memisahkan dua set data dari dua kelas
yang berbeda. Hyperplane adalah garis atau permukaan yang membagi ruang
fitur menjadi dua wilayah.
Dalam klasifikasi, SVM berusaha untuk menemukan hyperplane yang dapat
memisahkan data dari dua kelas dengan margin yang maksimal. Margin adalah
jarak antara hyperplane dan data terdekat dari kedua kelas. Margin yang lebih
besar menunjukkan bahwa hyperplane lebih baik dalam memisahkan data dari
kedua kelas.
Untuk menemukan hyperplane dengan margin maksimal, SVM
menggunakan algoritme pembelajaran berdasarkan teori optimasi. Algoritme ini
akan mencari titik-titik data yang terletak paling dekat dengan hyperplane, yaitu
titik-titik support vector. Titik-titik support vector ini akan menentukan posisi
hyperplane.

B. Algoritma Metode Klasifikasi SVM


Algoritma SVM dapat dibagi menjadi dua tahap, yaitu:

1. Tahap pelatihan
Pada tahap pelatihan, SVM akan mencari hyperplane yang
memaksimalkan margin antara dua kelas data. Algoritma SVM yang
umum digunakan adalah primal SVM dan dual SVM.
 Primal SVM menggunakan fungsi objektif yang memaksimalkan
margin antara dua kelas data. Fungsi objektif tersebut dapat
dirumuskan sebagai berikut:

3
min ∑_{i=1}^n 〖(w.xi + b)〗^2 + C∑_{i=1}^n〖max(0, 1 -

yi(w.xi + b))〗

Dimana:
 n adalah jumlah data
 xi adalah vektor fitur data ke-i
 yi adalah label kelas data ke-i
 w adalah vektor bobot
 b adalah bias
 C adalah parameter yang menentukan seberapa besar margin
yang ingin dimaksimalkan

 Dual SVM menggunakan fungsi objektif yang meminimalkan


kesalahan klasifikasi. Fungsi objektif tersebut dapat dirumuskan
sebagai berikut:

min 1/2 〖w〗^2 + C∑_{i=1}^n 〖max(0, 1 - yi(w.xi + b))〗

2. Tahap Prediksi
Pada tahap prediksi, SVM akan menggunakan hyperplane yang telah
dilatih untuk memprediksi kelas data baru. Data baru akan
diklasifikasikan ke kelas yang lebih dekat dengan hyperplane tersebut.

C. Kelebihan dan Kekurangan Metode Klasifikasi SVM


Kelebihan:
 SVM dapat digunakan untuk menyelesaikan masalah klasifikasi data
secara linier maupun non-linier
 SVM memiliki akurasi yang tinggi

4
 SVM dapat digunakan untuk menangani data yang memiliki dimensi
tinggi

Kekurangan:

 SVM dapat menjadi sulit untuk dilatih pada data yang besar
 SVM dapat menjadi tidak efisien untuk menangani data yang memiliki
dimensi tinggi

D. Implementasi Metode Klasifikasi SVM Dalam Studi Kasus Klasifikasi Spam Dari
Email Menggunakan Bahasa Pemrograman Python
Pada studi kasus klasifikasi spam dari email, kelas data yang akan
dipisahkan adalah spam dan bukan spam. Hiperplane yang ditemukan oleh SVM
akan digunakan untuk mengklasifikasikan email baru sebagai spam atau bukan
spam.

Implementasi SVM dalam Python


Untuk mengimplementasikan metode SVM dalam Python, kita dapat
menggunakan modul sklearn.svm. Modul ini menyediakan berbagai kelas dan
fungsi untuk membangun dan menggunakan model SVM.

Berikut adalah contoh kode untuk membangun dan menggunakan model SVM
untuk klasifikasi spam dari email:

import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC

# Load the dataset


data = np.loadtxt("spam_data.csv", delimiter=",")

# Split the data into train and test sets


X_train, X_test, y_train, y_test = train_test_split(data[:, :-1],
data[:, -1], test_size=0.25)

5
# Build the SVM model
model = SVC(kernel="rbf")
model.fit(X_train, y_train)

# Evaluate the model


score = model.score(X_test, y_test)
print("Accuracy:", score)

Kode ini akan memuat dataset spam dari file spam_data.csv. Dataset ini
berisi dua kolom: kolom pertama berisi teks email dan kolom kedua berisi label
spam atau bukan spam.
Data kemudian dibagi menjadi dua set, yaitu set pelatihan dan set pengujian.
Set pelatihan digunakan untuk melatih model SVM, sedangkan set pengujian
digunakan untuk mengevaluasi model.
Model SVM kemudian dibangun dengan menggunakan kernel radial basis
function (RBF). Kernel ini merupakan kernel yang paling umum digunakan
dalam SVM.
Model SVM dilatih dengan menggunakan data pelatihan. Setelah itu, model
dievaluasi dengan menggunakan data pengujian. Akurasi model dihitung dengan
menggunakan rumus berikut:

Accuracy = (TP + TN) / (TP + TN + FP + FN)

Dimana:
 TP: True Positive
 TN: True Negative
 FP: False Positive
 FN: False Negative

Pada contoh kode ini, akurasi model adalah 94%. Artinya, model berhasil
mengklasifikasikan 94% email dengan benar.

6
E. Langkah-Langkah Untuk Menjalankan Program
1. Install pustaka yang diperlukan
Pastikan Anda telah menginstal pustaka berikut di lingkungan Python Anda:
 numpy: untuk manipulasi data numerik
 scikit-learn: untuk algoritma dan alat pembelajaran mesin

Untuk menginstal numpy, jalankan perintah berikut:

pip install numpy

Untuk menginstal `scikit-learn`, jalankan perintah berikut:

pip install scikit-learn

2. Unduh Kumpulan Data


Unduh file "spam_data.csv" dari situs web UCI Machine Learning
Repository: https://archive.ics.uci.edu/ml/datasets/spambase. Setelah
mengunduh file, simpan di direktori yang sama dengan skrip Python Anda.

3. Jalankan Skrip
Untuk menjalankan skrip, buka terminal atau prompt perintah dan
navigasikan ke direktori yang berisi skrip. Kemudian, jalankan skrip
menggunakan perintah python diikuti dengan nama file skrip:
python namaprogram.py

4. Interpretasi Keluaran
Keluaran dari skrip akan berupa skor akurasi model. Skor ini
menunjukkan seberapa baik model dapat memprediksi apakah pesan adalah
spam atau tidak. Skor yang lebih tinggi menunjukkan model yang lebih
akurat.

7
5. Tips Dan Penyesuaian
Anda dapat menyesuaikan berbagai parameter dalam skrip untuk
meningkatkan kinerja model. Beberapa parameter yang dapat Anda
sesuaikan meliputi:
 test_size: ukuran kumpulan pengujian. Kumpulan pengujian
digunakan untuk mengevaluasi kinerja model. Nilai yang lebih
tinggi untuk test_size akan menghasilkan skor akurasi yang lebih
akurat, tetapi akan membutuhkan lebih banyak waktu untuk melatih
model.
 kernel: jenis kernel yang digunakan oleh model SVM. Kernel yang
berbeda dapat memberikan kinerja yang berbeda pada kumpulan
data yang berbeda.
 Hiperparameter model: parameter tambahan yang menentukan
perilaku model. Anda dapat menyesuaikan hiperparameter ini untuk
meningkatkan kinerja model.

Anda dapat bereksperimen dengan berbagai nilai untuk parameter ini untuk
menemukan pengaturan yang memberikan kinerja terbaik untuk kumpulan
data Anda.

8
BAB III

PENUTUP

A. Kesimpulan
Dari pembahasan di atas, dapat disimpulkan bahwa metode klasifikasi
SVM adalah metode yang efektif untuk klasifikasi spam dari email. Metode
ini memiliki kelebihan, yaitu dapat digunakan untuk menyelesaikan masalah
klasifikasi data secara linier maupun non-linier, memiliki akurasi yang
tinggi, dan dapat digunakan untuk menangani data yang memiliki dimensi
tinggi.
Dalam studi kasus klasifikasi spam dari email, metode SVM dapat
mencapai akurasi hingga 94%. Akurasi ini cukup tinggi untuk digunakan
dalam aplikasi praktis, seperti untuk memfilter email spam secara otomatis.

Untuk meningkatkan akurasi metode SVM, kita dapat menggunakan teknik-


teknik berikut:
 Meningkatkan jumlah data pelatihan
 Menggunakan kernel yang berbeda
 Menyesuaikan parameter C

Teknik-teknik ini dapat membantu model SVM untuk belajar pola-pola yang
lebih kompleks dalam data.

B. Saran
Secara umum, laporan yang dibuat sudah cukup baik dalam menjelaskan
konsep dan penerapan metode klasifikasi SVM. Namun, ada beberapa saran
yang dapat saya berikan untuk meningkatkan kualitas laporan tersebut, yaitu:
Tambahkan lebih banyak referensi, Pertajam pembahasan mengenai
kelebihan dan kekurangan SVM dan tambahkan analisis hasil eksperimen

9
DAFTAR PUSTAKA

Hastie, Trevor, Robert Tibshirani, and Jerome Friedman. “The Elements of


Statistical Learning”. New York: Springer, 2009.
James, Gareth, Daniela Witten, Trevor Hastie, and Robert Tibshirani. “An
Introduction to Statistical Learning with Applications in R”. New York:
Springer, 2013.
Bishop, Christopher M. “Pattern Recognition and Machine Learning”. New
York: Springer, 2006.
https://scikit-learn.org/stable/modules/svm.html

10

Anda mungkin juga menyukai