Professional Documents
Culture Documents
Data Mining P9-SVM
Data Mining P9-SVM
Statistika
CART SVR
Association Rule K-Nearest Neighbor
Bayes
DATA Preprocessing Data
Clustering
MINING K-Means
K-Medoids
C45
Support Vector Machine
Outline
• Pengantar SVM
• Histori dan aplikasi SVM
• Ide SVM
• Formulasi matematis
• Metode kernel
• Algoritma SVM untuk Klasifikasi
• SVM dengan R
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Pengantar SVM
• Support vector machine (SVM) adalah suatu teknik
yang relatif baru (1995) untuk melakukan prediksi, baik
dalam kasus klasifikasi maupun regresi, yang sangat
populer belakangan ini.
• SVM termasuk supervised learning
• SVM berada dalam satu kelas dengan ANN dalam hal
fungsi dan kondisi permasalahan yang bisa
diselesaikan. Keduanya masuk dalam kelas supervised
learning, dimana dalam implementasinya perlu adanya
tahap training dan disusul tahap testing.
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Pengantar SVM
SVM NN
• Menemukan solusi yang • Menemukan solusi berupa
global Optimal local optimal
• Solusi sama di setiap running • Solusi beda di setiap training
• Deterministic algorithm • Nondeterministic algorithm
• Nice generalization properties • Generalizes well but doesn’t
• Hard to learn – learned in have strong mathematical
batch mode using quadratic foundation
programming techniques • Can easily be learned in
• Using kernels can learn very incremental fashion
complex functions • To learn complex functions—
use multilayer perceptron
(nontrivial)
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Pengantar SVM
• Advantages
– Prediction accuracy is generally high
• As compared to Bayesian methods – in general
– Robust, works when training examples contain errors
– Fast evaluation of the learned target function
• Bayesian networks are normally slow
• Criticism
– Long training time
– Difficult to understand the learned function (weights)
• Bayesian networks can be used easily for pattern
discovery
– Not easy to incorporate domain knowledge
• Easy in the form of priors on the data or distributions
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Ide SVM
• SVM berusaha untuk menemukan fungsi pemisah
(klasifier/hyperplane) yang optimal dari dua set data
• Jika fungsi pemisah adalah linier, didefinisikan:
𝑔 𝑥 = 𝑠𝑔𝑛 𝑓 𝑥 dengan 𝑓 𝑥 = 𝑤 𝑇 𝑥 + 𝑏
• Kita ingin menemukan parameter 𝑤, 𝑏 sehingga
𝑠𝑔𝑛 𝑓 𝑥𝑖 = 𝑠𝑔𝑛 < 𝑤, 𝑥 > +𝑏 = 𝑦𝑖 untuk semua 𝑖
• Fungsi 𝑠𝑔𝑛 digunakan untuk mengelompokkan semua
nilai diatas 0 menjadi +1 dan dibawah 0 menjadi −1
• Hyperplane terbaik adalah hyperplane yang teletak
ditengah-tengah antara dua set objek dari dua kelas
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Ide SVM
Hyperplane Hyperplane
pendukung pendukung margin
dari kelas -1 dari kelas +1
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Ide SVM
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Formulasi problem optimisasi SVM untuk kasus
klasifikasi linier di dalam primal space adalah
1 2 1
min 𝑤 atau max atau max 𝑤 𝑇 𝑤 8.2
𝑤,𝑏 2 𝑤,𝑏 𝑤
dengan batasan 𝑦𝑖 𝑤𝑥𝑖 + 𝑏 ≥ 1, 𝑖 = 1,2, . . , 𝑚
Dimana:
• 𝑥𝑖 adalah data input
• 𝑦𝑖 adalah output yang nilainya +1 atau −1
• 𝑤 dan 𝑏 adalah parameter yang kita cari nilainya
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Untuk kasus yang tidak feasible (infeasible) dimana
beberapa data mungkin tidak bisa dikelompokkan
secara benar, formulasi matematikanya menjadi:
𝑡
1 2
min 𝑤 + 𝐶 𝑡𝑖 8.3
𝑤,𝑏,𝑡 2
𝑖=1
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Penyelesaian transformasi ke dalam dual space
1. Persamaan 8.3 diubah menjadi fungsi Lagrangian
𝑁
1 𝑇
𝐽 𝑤, 𝑏, 𝛼 = 𝑤 𝑤 − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 + 𝑏 − 1 8.4
2
𝑖=1
Dimana variable non-negative 𝛼𝑖 dinamakan Lagrange
Multiplier. Solusinya dengan mencari saddle point dari
fungsi Lagranggian. Fungsi tsb diminimalkan terhadap
variable 𝑤 dan 𝑏 serta memaksimalkan variable 𝛼
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Penyelesaian transformasi ke dalam dual space (lanjtn)
2. Mencari turunan pertama dari fungsi 𝐽 𝑤, 𝑏, 𝛼 terhadap
variable 𝑤 dan 𝑏, kemudian disama dengankan 0 (nol)
𝜕𝐽 𝑤,𝑏,𝛼
Kondisi optimal 1: = 0 akan menghasilkan
𝜕𝑤
𝑁
𝑤 = 𝛼𝑖 𝑦𝑖 𝑥𝑖 8.5
𝑖=1
𝜕𝐽 𝑤,𝑏,𝛼
Kondisi optimal 2: = 0 akan menghasilkan
𝜕𝑏
𝑁
𝛼𝑖 𝑦𝑖 = 0 8.6
𝑖=1
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Penyelesaian transformasi ke dalam dual space (lanjtn)
3. Memasukkan kondisi optimal 1 dan 2 ke 𝐽 𝑤, 𝑏, 𝛼
Penjabaran persamaan 8.4:
𝑁
1 𝑇
𝐽 𝑤, 𝑏, 𝛼 = 𝑤 𝑤 − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 + 𝑏 − 1
2
𝑖=1
𝑁
1 𝑇
𝐽 𝑤, 𝑏, 𝛼 = 𝑤 𝑤 − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 + 𝑏 − 𝛼𝑖
2
𝑖=1
𝑁
1 𝑇
𝐽 𝑤, 𝑏, 𝛼 = 𝑤 𝑤 − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 + 𝛼𝑖 𝑦𝑖 𝑏 − 𝛼𝑖
2
𝑖=1
𝑁 𝑁 𝑁
1 𝑇
𝐽 𝑤, 𝑏, 𝛼 = 𝑤 𝑤 − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 − 𝑏 𝛼𝑖 𝑦𝑖 + 𝛼𝑖 8.7
2
𝑖=1 𝑖=1 𝑖=1
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Penyelesaian transformasi ke dalam dual space (lanjtn)
3. Memasukkan kondisi optimal 1 dan 2 ke 𝐽 𝑤, 𝑏, 𝛼
Kondisi optimal 1 digunakan untuk menghitung 𝑤 𝑇 𝑤:
𝑁 𝑁
𝑤 𝑇 𝑤 = 𝑤 𝑇 𝛼𝑖 𝑦𝑖 𝑥𝑖 = 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖
𝑖=1 𝑖=1
dan kondisi optimal 2 adalah σ𝑁
𝑖=1 𝛼𝑖 𝑦𝑖 = 0, maka
𝑁 𝑁 𝑁 𝑁
1
𝐽 𝑤, 𝑏, 𝛼 = 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 − 𝑏 𝛼𝑖 𝑦𝑖 𝑏 + 𝛼𝑖
2
𝑖=1 𝑖=1 𝑖=1 𝑖=1
𝑁 𝑁
1
𝐽 𝑤, 𝑏, 𝛼 = − 𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 − 𝑏 0 + 𝛼𝑖 8.7
2
𝑖=1 𝑖=1
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Penyelesaian transformasi ke dalam dual space (lanjtn)
3. Memasukkan kondisi optimal 1 dan 2 ke 𝐽 𝑤, 𝑏, 𝛼
Masukkan kondisi optimal 1 ke σ𝑁 𝑇
𝑖=1 𝛼𝑖 𝑦𝑖 𝑤 𝑥𝑖 sehingga
𝑁 𝑁 𝑁
𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 = 𝛼𝑖 𝑦𝑖 𝛼𝑗 𝑦𝑗 𝑥𝑗𝑇 𝑥𝑖
𝑖=1 𝑖=1 𝑗=1
𝑁 𝑁 𝑁 𝑁 𝑁
𝛼𝑖 𝑦𝑖 𝑤 𝑇 𝑥𝑖 = 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 𝑥𝑗𝑇 𝑥𝑖 = 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 𝑥𝑖𝑇 𝑥𝑗
𝑖=1 𝑖=1 𝑗=1 𝑖=1 𝑗=1
Sehingga
𝑁 𝑁 𝑁
1
𝐽 𝑤, 𝑏, 𝛼 = 𝑄 𝛼 = 𝛼𝑖 − 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 𝑥𝑖𝑇 𝑥𝑗 8.9
2
𝑖=1 𝑖=1 𝑗=1
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Formulasi Matematis
• Penyelesaian transformasi ke dalam dual space (lanjtn)
4. Memasukkan persamaan 8.9 ke 8.3 diperoleh
𝑁 𝑁 𝑁
1
max 𝑄 𝛼 = max 𝛼𝑖 − 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 𝑥𝑖𝑇 𝑥𝑗 8.10
2
𝑖=1 𝑖=1 𝑗=1
Dengan batasan σ𝑁
𝑖=1 𝛼𝑖 𝑦𝑖
= 0, 𝑖 = 1,2, … , 𝑚
Persamaan 8.10 merupakan quadrat programming
dengan batasan linier.
• Melatih SVM ekuivalen dengan menyelesaikan problem
convex optimization. Karena itu solusi SVM adalah unik
dan global optimal
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Metode kernel
• Metode kernel ialah salah
satu penyelesaian untuk
mengatasi permasalahan
ketidaklinieran
• Dengan metode kernel,
suatu data 𝑥 di input space
dimapping ke feature space
𝐹 dengan dimensi yang
lebih tinggi melalui map 𝜑
sebagai 𝜑: 𝑥 → 𝜑 𝑥
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Metode kernel
• Untuk bisa memakai metoda kernel, fungsi tujuan dan
pembatas (constraint) perlu diekspresikan dalam bentuk
dot product dari vektor data xi. Sebagai konsekuensi, fungsi
tujuan yang menjelaskan permasalahan dalam klasifikasi
harus diformulasikan kembali sehingga menjadi bentuk dot
product
• Dalam feature space ini dot product < . > menjadi < ϕ(x),
ϕ(x)′ >
• Suatu fungsi kernel, k(x, x′), bisa digunakan untuk
menggantikan dot product < ϕ(x), ϕ(x)′ >. Kemudian di
feature space, kita bisa menemukan suatu fungsi pemisah
yang linier yang mewakili fungsi nonlinear di input space.
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Metode kernel
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Metode kernel
• Dengan memetakan setiap data ke feature space, maka
persamaan 8.10 menjadi
𝑁 𝑁 𝑁 𝑁
1
max 𝛼𝑖 − 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 𝜑 𝑥𝑖𝑇 𝜑 𝑥𝑗 8.11
2
𝑖=1 𝑖=1 𝑖=1 𝑗=1
Dengan batasan σ𝑁𝑖=1 𝛼𝑖 𝑦𝑖 = 0, 𝑖 = 1,2, … , 𝑚
• Dot product 𝜑 𝑥𝑖𝑇 𝜑 𝑥𝑗 bisa diwakili oleh 𝑘 𝑥𝑖 , 𝑥𝑗 ,
dimana 𝑘 adalah fungsi kernel
• 𝛼𝑖∗ adalah solusi optimal. 𝛼𝑖∗ > 0 disebut support vektor
dan menyatakan data training yang diperlukan untuk
mewakili fungsi keputusan yang optimal
• 𝑏 ∗ adalah solusi optimal untuk 𝑏
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Metode kernel
• Sehingga Fungsi pemisah optimal adalah
𝑁
𝑔 𝑥 = 𝑠𝑖𝑔𝑛 𝛼𝑖∗ 𝑦𝑖 𝑘 𝑥𝑖 , 𝑥 + 𝑏 ∗
𝑖=1
• 𝛼𝑖∗ adalah solusi optimal. 𝛼𝑖∗ >
0 disebut support vektor dan
menyatakan data training yang diperlukan untuk mewakili fungsi
keputusan yang optimal
• Sedangkan 𝑏 ∗ dapat dihitung menggunakan
∗
1
𝑏 = 𝑦𝑠𝑣 − 𝑘 𝑥𝑠𝑖𝑔 , 𝑠𝑠𝑣 𝛼𝑠𝑣 𝑦𝑠𝑖𝑔
𝑛𝑠𝑣
𝑠𝑣
Dimana 𝑛𝑠𝑣 adalah banyaknya support vector, 𝑠𝑣 adalah indeks
untuk support vector, dan 𝑠𝑖𝑔 menunjukkan data yang berada
dalam margin
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Metode kernel
• Fungsi kernel yang dipakai dalam literatur SVM (Haykin,
1999):
1. Linier: 𝑥 𝑇 𝑥
2. Polynomial: 𝑥 𝑇 𝑥 + 1 𝑝
1
3. Radial basis function (RBF): exp 𝑥−𝑥 2 , − 2
2𝜎
dengan 𝜎 adalah bilangan riil positif
4. Tangent hyperbolic (sigmoid): tanh 𝛽0 𝑥 𝑇 𝑥𝑖 + 𝛽1
• Fungsi yang dapat digunakan sebagai fungsi kernel
legitimate yaitu fungsi yang memenuhi syarat kontinus dan
positif definite (oleh Teori Mercer pada Vapnik, 1995)
• Salah satu metode untuk pemilihan funsi kernel ialah cross
validation
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
1
𝑁 𝑁
1 2 −4 −6 𝛼1
𝑇
𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 𝑥𝑖 𝑥𝑗 = 𝛼1 𝛼2 𝛼3 −4 8 12 𝛼2
2 2
𝑖=1 𝑗=1 −6 12 18 𝛼3
Setelah dikalikan, didapatkan formulasi
min 𝑄 = 𝛼12 + 4𝛼22 + 9𝛼32 − 4𝛼1 𝛼2 − 6𝛼3 𝛼1 + 12𝛼3 𝛼2 − 𝛼1 − 𝛼2 − 𝛼3
Dengan batasan 𝛼1 − 𝛼2 − 𝛼3 = 0
Misalkan 𝐶 = 1 maka 0 ≤ 𝛼1 , 𝛼2 , 𝛼3 ≤ 1, dimasukkan ke fungsi Lagrange
menjadi:
𝐿 = 𝛼12 + 4𝛼22 + 9𝛼32 − 4𝛼1 𝛼2 − 6𝛼3 𝛼1 + 12𝛼3 𝛼2 − 𝛼1 − 𝛼2 − 𝛼3 +
𝑢 𝛼1 − 𝛼2 − 𝛼3
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.
Jurusan Statistika
SVM Menggunakan
Data Mining : Dr. Dra. Umu Sa`Adah, M.Si. ♦ Dr. Eni Sumarminingsih, S.Si, MM ♦ Dwi Ayu Lusia, S.Si., M.Si.