Anda di halaman 1dari 21

SUPPORT VECTOR MACHINE (SVM)

PRESENTED BY
• DR. YESSI JUSMAN, S.T,. M.SC
Pokok Pembahasan 1. Support Vector Machine (SVM)
✓ Pengertian SVM
✓ Model SVM
✓ Visualisasi SVM
✓ Karakteristik SVM
2. Case Study
Support ■ Konsep Klasifikasi dengan Support Vector Machine (SVM) adalah
mencari hyperplane terbaik yang berfungsi sebagai pemisah dua kelas
data.
Vector ■ Ide sederhana dari SVM adalah memaksimalkan margin, yang

Machine ■
merupakan jarak pemisah antara kelas data.

SVM mampu bekerja pada dataset yang berdimensi tinggi dengan


menggunakan kernel trik.

■ SVM hanya menggunakan beberapa titik data terpilih yang


berkontribusi (Support Vector) untuk membentuk model yang akan
digunakan dalam proses klasifikasi.

■ Macam-Macam Training untuk SVM :


• Chunking (Quadratic Programming).
• Osuna (Dekomposisi).
• Sequential Minimum Optimation (SMO).
• Least Square (LS) dan lainnya.
Model SVM (Cont.)

No Nama Kernel Definisi Fungsi


■ Kernel Linier digunakan
1 Linier K(x,y) = x.y
ketika data yang akan
2 Polinomial of degree d K(x,y) = (x.y)d diklasifikasi dapat terpisah
3 Polinomial of degree up to d K(x,y) = (x.y + c)d dengan sebuah
garis/hyperplane.
4 Gaussian RBF
■ Kernel non-Linier digunakan
5 Sigmoid (Tangen Hiperbolik) ketika data hanya dapat
6 Invers Multi Kuadratik dipisahkan dengan garis
lengkung atau sebuah
7 Additive bidang pada ruang dimensi
tinggi (Kernel Trik, No.2
sampai 6).
Karakteristik ■ Karakteristik SVM :
– SVM memerlukan proses pelatihan dengan
SVM menyimpan hasil support vektor yang
didapatkan untuk digunakan kembali pada
saat proses prediksi/testing.
– SVM selalu memberikan model yang sama dan
solusi yang sama dengan margin maksimal.
– SVM dapat memisahkan data yang distribusi
kelasnya bersifat linier maupun non linier.
– SVM tidak dipengaruhi oleh dimensi data yang
tinggi, sehingga tidak ada proses reduksi
dimensi didalamnya.
– Memori yang digunakan dalam SVM
dipengaruhi oleh banyaknya data, bukan
besarnya dimensi data.
Model SVM
• Titik data : xi = {x1,x2,….,xn} ϵ Rn
• Kelas data : yi ϵ {-1,+1}
• Pasangan data dan kelas : xi , yi ( )iN=1
• Maksimalkan fungsi berikut :

Ld =   i −   i j yi y j K (xi , x j ) syarat : 0   i  C dan


N N N N

i =1 i =1 j =1
 y
i =1
i i =0
• Hitung nilai w dan b :
N
w =   i yi xi b=−
1
2
(
w.x + + w.x − )
i =1
• Fungsi keputusan klasifikasi sign(f(x)) :
m
f ( x) = w.x + b atau f ( x) =   i yi K ( x, xi ) + b
i =1
Keterangan :
N (banyaknya data), n (dimensi data atau banyaknya fitur), Ld (Dualitas
Lagrange Multipier), αi (nilai bobot setiap titik data), C (nilai konstanta), m
(jumlah support vector/titik data yang memiliki αi > 0), K(x,xi) (fungsi kernel).
Support Vector Machine
■ Konsep klasifikasi dengan Support Vector Machine (SVM) adalah mencari
hyperplane terbaik yang berfungsi sebagai pemisah dua kelas data.
■ Ide sederhana dari SVM adalah memaksimalkan margin, yang merupakan jarak
pemisah antara kelas data.
REPRESENTASI
SUPPORT VECTOR
MACHINE (SVM)
Contoh Studi Kasus
• Contoh SVM Linier pada dataset berikut :
Tentukan Hyperplanenya !
x1 x2 Kelas (y) Support Vector (SV)
1 1 1 1
1 -1 -1 1
-1 1 -1 1
-1 -1 -1 0

• Bentuk Visualisasi data :


2
1
0
-2 -1 0 1 2
-1
-2
Contoh Studi Kasus 1 (Cont.)
• Contoh SVM Linier :
2
x1 x2 Kelas (y)
1
1 1 1
1 -1 -1 0
-2 -1 0 1 2
-1 1 -1 -1
-1 -1 -1 -2

– Karena ada dua fitur (x1 dan x2), maka w juga akan memiliki 2 fitur (w1 dan w2).
– Formulasi yang digunakan adalah sebagai berikut :
• Meminimalkan nilai :

• Syarat :
Contoh Studi Kasus 1 (Cont.)
– Karena ada dua fitur (x1 dan x2), maka w juga akan memiliki 2 fitur (w1 dan w2).
– Formulasi yang digunakan adalah sebagai berikut :
• Meminimalkan nilai margin :

• Syarat :

Sehingga didapatkan beberapa persamaan berikut :


Contoh Studi Kasus 1 (Cont.)
Didapatkan beberapa persamaan berikut :
• Menjumlahkan persamaan (1) dan (3) :

• Menjumlahkan persamaan (1) dan (2) :


• Menjumlahkan persamaan (2) dan (3) :

Sehingga didapatkan persamaan hyperplane :


w1x1 + w2x2 + b = 0
x1 + x2 - 1 = 0
x2 = 1 - x1
Contoh Studi Kasus 1 (Cont.)
Visualisasi garis hyperplane (sebagai fungsi klasifikasi) :
w1x1 + w2x2 + b = 0
x2 = 1 - x1
x1 + x2 - 1 = 0
x2 = 1 - x1
1.5

x2
x1 x2 = 1 – x1
1
-2 3
0.5
-1 2 x1
Kelas -1
0
-1.5 -1 -0.5 0 0.5 1 1.5
0 1 Kelas +1
-0.5
1 0
-1
2 -1
-1.5
Training
■ Sebelum melakukan pengujian
SVM membutuhkan training
terlebih dahulu.
Masukkan nilai pixel distance
■ Training yaitu proses pelatihan dan level kuantisasi
yang bertujuan agar system
mengetahui jenis-jenis citra
yang akan diuji
■ Data yang diperlukan dalam
pelatihan (training) yaitu satu
folder yang berisikan beberapa
citra dari 2 jenis citra yang
akan diuji.
■ Pixel distance dan level
kuantisasi yang digunakan
pada saat pelatihan harus
sama dengan saat pengujian
Beri Label

Perlabelan
■ Setelah melakukan training maka system
secara otomatis akan membuat sebuah
excel yang berisikan data dari folder citra
yang di training
■ Perlabelan bertujuan untuk membedakan
jenis citra pada training
■ Perlabelan dilakukan pada kolom Q pada
excel.
Klasifikasi
■ Pengujian system dilakukan
dengan memilih citra yang
akan diuji pada tombol “Pilih
Data Test”
■ Sehingga citra yang dipilih
akan tampil pada axes
■ Input pixel distance dan level
kuantisasi yang sama
dengan saat proses training
■ Pilih tombol “klasifikasi”
sehingga akan muncul hasil
Ekstraksi dan hasil
klasifikasi dari citra yang
diuji.
Akurasi

■ Suatu system dapat dikatakan berfungsi dengan baik apabila akurasi sebuah
system pada saat pengujian mendekati nilai 100%.
■ untuk mengetahui nilai akurasi dapat dihitung bedasarkan rumus dibawah ini pada
setiap pengujian.
𝐽𝑢𝑚𝑙𝑎ℎ 𝐶𝑖𝑡𝑟𝑎 𝐷𝑎𝑡𝑎 𝑈𝑗𝑖 𝐵𝑒𝑛𝑎𝑟
■ 𝐻𝑎𝑠𝑖𝑙 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 𝑥 100%
𝐽𝑢𝑚𝑙𝑎ℎ 𝐾𝑒𝑠𝑒𝑙𝑢𝑟𝑢ℎ𝑎𝑛 𝐶𝑖𝑡𝑟𝑎 𝐷𝑎𝑡𝑎 𝑈𝑗𝑖
MATLAB

Anda mungkin juga menyukai