Budi Santosa Tutorial Support Vector Machine Teknik Industri Its

Transcription

Tutorial Support Vector MachinesBudi SantosaProfesor di Teknik Pabrik, ITSKampus ITS, Sukolilo SurabayaE-mails: kepribadian [email protected] Ide Sumber akar Support Vector MachineSupport vector machine (SVM) adalah satu teknik yang relatif baru (1995) untukmelakukan prediksi, baik n domestik kasus klasifikasi maupun regresi, yang sangatpopuler belakangan ini. SVM mewah t lokal satu kelas dengan ANN kerumahtanggaan peristiwa fungsidan kondisi permasalahan yang boleh diselesaikan. Keduanya timbrung privat kelassupervised learning, dimana intern implementasinya perlu adanya tahap trainingdan disusul tahap testing.Baik para jauhari maupun pegiat telah banyak menerapkan teknik ini dalammenyelesaikan problem-masalah kasatmata privat hidup sehari-hari. Penerapannyaantara bukan dalam komplikasi gene expression analysis, runding finansial, sinar hinggabidang medis. Manjur dalam banyak implementasi, SVM memberi hasil yanglebih baik berpunca ANN, terutama n domestik hal solusi yang dicapai. ANN menemukan solusiberupa local optimal, padahal SVM menemukan solusi yang global optimal. Tidakheran bila kita menjalankan ANN, solusi dari setiap training dekat pelalah berlainan.Kejadian ini disebabkan solusi local optimal nan dicapai enggak cak acap sekufu. SVM selalumencapi solusi yang sepadan cak bagi setiap running. Internal teknik ini, kita berusahauntuk menemukan kemujaraban pemisah (klasifier) nan optimal nan bisa memisahkandua set data berbunga dua papan bawah yang berlainan Vapnik (1995).Teknik ini menjajarkan orang dalam meres data mining atau machine learningkarena performansinya yang meyakinkan dalam memprediksi papan radiks suatu data baru.Kita akan memulai pembahasan dengan kasus klasifikasi yang secara linier bisadipisahkan. Dalam peristiwa ini kemustajaban pemisah yang kita cari merupakan fungsi linier. Fungsiini bisa didefinisikan sebagaig(x) : sgn(f(x))dengan f(x) wT x b,(8.1)

x, w Rn and b R. Ki kesulitan klasifikasi ini boleh dirumuskan laksana berikut: kita inginmenemukan set parameter (w, b) sehingga sgn(f(xi)) sgn( w,x b) yi untuksemua i. Kemustajaban sgn digunakan kerjakan memilah semua ponten di atas 0 menjadi 1 dan dibawah 0 menjadi -1. Intern teknik ini kita berusaha menemukan fungsipemisah (klasifier/hyperplane) terbaik diantara kepentingan yang enggak tekor jumlahnyauntuk merujukkan dua jenis obyek. Hyperplane terbaik ialah hyperplane yangterletak di perdua-tengah antara dua set obyek terbit dua kelas bawah. Berburu hyperplaneterbaik ekuivalen dengan menumbuhkan margin atau jarak antara dua set obyekdari kelas nan berlainan. Kalau wx1 b 1 adalah hyperplane-pendukung(supporting hyperplane) terbit kelas 1, dan wx2 b -1 yaitu hyperplanependukung berpangkal inferior -1, margin antara dua kelas bisa dihitung dengan mencarijarak antara kedua hyperplane-pendukung semenjak kedua kelas bawah. Secara singularis, margindihitung dengan mandu berikutwx1 b 1wx2 b -1——————- w(x1 – x2) 2 w( x1 x2 )2. w w .Bagan 8.1 menunjuk-nunjukkan bagaimana SVM bekerja buat menemukan suatufungsi pemisah dengan margin yang maksimal. Untuk membuktikan bahwamemaksimalkan margin antara dua set obyek akan meningkatkan probabilitaspengelompokkan secara bermartabat pecah data tentamen.Lega dasarnya jumlah fungsi pemisah ini tidak terbatas banyaknya. Misalkan darijumlah yang tidak invalid ini kita rebut dua semata-mata, merupakan f1(x) and f2(x) (tatap gambar8.2). Kemujaraban f1 mempunyai margin yang bertambah lautan bermula puas guna f2. Setelahmenemukan dua kebaikan ini, satu data yunior ikut dengan jebolan 1. Kita harusmengelompokkan apakah data ini ada internal kelas 1 maupun 1 menggunakan fungsipemisah yang sudah kita temukan.

1wwxi b 1wxi b -1wxi b 1xwxi b 0wxi b -1Gambar 8.1: Berburu fungsi pemisah yang optimal bakal obyek yang bisa dipisahkansecara linierDengan menggunakan f1, kita akan kelompokkan data baru ini di kelas 1 yangberarti kita sopan mengelompokkannya. Kini kita coba gunakan f2, kita akanmenempatkannya di inferior 1 yang berarti salah. Berpokok sempurna tertinggal ini kita lihatbahwa memperbesar margin bisa meningkatkan probabilitas pengelompokkansuatu data secara bermartabat.

Rancangan 8.2: Memperbesar margin dapat meningkatkan probabilitaspengelompokkan suatu data secara bersusila.2. Formulasi MatematisSecara matematika, perumusan komplikasi optimisasi SVM lakukan kasus klasifikasi linierdi internal primal space adalah1 w 2w ,b2subject toy i ( wxi b) 1 ,min(8.2)i 1,.mdimana xi merupakan data input, yi yaitu output yang nilainya 1 ataupun -1, w dan b adalahparameter nan kita cari nilainya. N domestik perumusan di atas, kita ingin meminimalkanfungsi pamrih (obyektif function),11atau w 2 , atau mengintensifkan kuantitas2 w wTw dengan mengecap pewatas yi(wxi b) 1. Bila output data yi 1, makapembatas menjadi (wxi b) 1.

Sebaliknya bila yi 1, pewatas menjadi (wxi b ) 1. Di n domestik kasus yang tidakfeasible (infeasible) dimana beberapa data mungkin bukan bisa dikelompokkansecara ter-hormat, perumusan matematikanya menjadi berikutminm1 w 2 C n iw ,b ,t 2i 1subject tominy i ( wxi b) cakrawala i 1(8.3)cakrawala i 0 i 1,.mdimana ti adalah variabel slack (Haykin, 1999). Intern formulasi ini kita berusahameminimalkan kesalahan klasifikasi (misclassification error) yang dinyatakandengan adanya variabel slack ti, darurat internal waktu yang sederajat kitamemaksimalkan margin. Penggunaan lentur slack ti yaitu lakukan mengatasi kasusketidaklayakan (infeasibility) dari pembatas (constraints) yi(wxi b) 1 dengan caramemberi pinalti bakal data nan bukan menunaikan janji pembatas tersebut. Untukmeminimalkan kredit ti ini, kita berikan pinalti dengan menerapkan konstanta ongkosC. Vektor w mengalir perlahan-lahan verbatim terhadap kekuatan pemisah: wx b 0. Konstanta b menentukanlokasi kelebihan pemisah nisbi terhadap titik asal (origin). Penyakit (8.3) adalahprograma nonlinear. Ini boleh dilihat dari maslahat tujuan (objective function) yangberbentuk kuadrat. Buat menyelesaikannya, secara komputasi sangkil pelik dan perluwaktu lebih tahapan. Kerjakan membentuk kelainan ini kian mudah dan efisien untukdiselesaikan, masalah ini bisa kita transformasikan ke dalam dual space. Lakukan itu,pertama kita ganti komplikasi (8.3) menjadi fungsi Lagrangian :J ( w, b, ) N1 Tw w i [ yi ( wT xi b) 1]2i 1(8.4)dimana elastis non-negatif αi, dinamakan Lagrange multiplier. Solusi semenjak problemoptimisasi dengan pewatas seperti di atas ditentukan dengan mencari saddle pointdari fungsi Lagrangian J(w, b, α). Arti ini harus diminimalkan terhadap fleksibel wdan b dan harus dimaksimalkan terhadap plastis α. Kemudian kita cari turunanpertama semenjak fungsi J(w, b, α) terhadap variabel w dan b dan kita samakan dengan 0.Dengan melakukan proses ini, kita akan mendapatkan dua kondisi optimalitasberikut:1. Kondisi 1:

J ( w, b, ) 0 w2. Kondisi 2: J ( w, b, ) 0 bPenerapan kondisi optimalitas 1 puas maslahat Lagrangian (8.4) akan menghasilkanNw i y i xi(8.5)i 1Penerapan kondisi optimalitas 2 pada fungsi Lagrangian (8.4) akan menghasilkanN yi 1ii 0(8.6)Menurut duality theorem (Bertsekas, 1995):1. Jika problem primal memiliki solusi optimal, maka kebobrokan dual lagi akanmempunyai solusi optimal yang nilainya sama2. Bila wo adalah solusi optimal lakukan ki kesulitan primal dan αo kerjakan ki aib dual,maka terbiasa dan patut bahwa wo solusi patut untuk kebobrokan primal dan (w0 ) J (w0 , b0 , 0 ) min J (w, b, )wUntuk mendapatkan keburukan dual berpunca keburukan kita, kita jabarkan paralelisme (8.4)sebagai berikut:J ( w, b, ) mmm1 Tw w i y i wT xi b i y i i2i 1i 1i 1(8.7)Menurut kondisi optimalitas ke dua kerumahtanggaan (8.6), term ketiga sisi sisi kanan dalampersamaan di atas begitu juga 0. Dengan mengaryakan biji-angka w di (8.5), kitadapatkanmmmi 1i 1 j 1wT w i yi wT xi i j yi y j xi x jT(8.8)maka persamaan 8.7 menjadimQ( ) i i 11 m m i j y i y j xi Falak x j 2 i 1 j 1Selanjutnya kita dapatkan perumusan dual dari problem (8.3):(8.9)

Nmax i i 11 m m i j y i y j xi T x j 2 i 1 j 1Subject toN yi 1ii(8.10) 0 , i 1, .mFormulasi (8.10) yaitu quadratic programming (QP) dengan pembatas (constraint)linier. Melatih SVM sekufu dengan menguasai problem convex optimization.Karena itu solusi dari SVM yakni unik dan mendunia optimal. Hal ini berbeda dengansolusi neural networks (Haykin, 1999) nan sederajat dengan masalah nonconvexoptimization dengan akibat solusi yang ditemukan ialah local optima.3. Metoda KernelBanyak teknik data mining atau machine learning yang dikembangkan denganasumsi kelinieran. Sehingga algorithma yang dihasilkan sedikit bakal kasus-kasusyang linier. Karena itu, bila satu kasus klasifikasi ogok ketidaklinieran,algorithma sebagaimana perceptron tidak bisa mengatasinya. Secara umum, kasus-kasusdi bumi kasatmata adalah kasus yang tidak linier. Sebagai eksemplar, perhatikan Gambar8.3, data ini jarang dipisahkan secara linier. Metoda kernel (Scholkopf and Smola,2002) adalah salah satu kerjakan mengatasinya. Dengan metoda kernel, suatu data x diinput space dimapping ke feature space F dengan dimensi yang makin tahapan melaluimap ϕ seumpama berikut ϕ : x ϕ(x). Karena itu data x di input space menjadi ϕ(x) difeature space.

Gambar 8.3: Data spiral yang mencitrakan ketidaklinieranSering kali keefektifan ϕ (x) tidak cawis atau tidak boleh dihitung, saja dot product daridua vektor boleh dihitung baik di intern input space ataupun di feature space.Dengan kata tak, temporer ϕ (x) boleh jadi tidak diketahui, dot product ϕ (x1), ϕ(x2) masih boleh dihitung di feature space. Untuk dapat memakai metoda kernel, fungsitujuan dan pembatas (constraint) mesti diekspresikan intern rajah dot product darivektor data xi. Ibarat konsekuensi, keistimewaan intensi yang menjelaskan permasalahandalam klasifikasi harus diformulasikan kembali sehingga menjadi bentuk dot product.Internal feature space ini dot product . menjadi ϕ(x), ϕ(x)′ . Suatu kebaikan kernel,k(x, x′), bisa digunakan kerjakan menggantikan dot product ϕ(x), ϕ(x)′ . Kemudian difeature space, kita bisa menemukan suatu kepentingan pemisah nan linier yang mewakilifungsi nonlinear di input space. Rangka 8.4 mendeskripsikan suatu lengkap featuremapping terbit urat kayu dua dimensi ke feature space dua ukuran. Dalam input space,data tidak bisa dipisahkan secara linier, cuma kita bisa merujukkan di feature space.Karena itu dengan memetakan data ke feature space menjadikan tugas klasifikasimenjadi lebih mudah (Schölkopf and Smola, 2002).Dengan memetakan setiap data ke feature space, maka formulasi 8.10, akan menjadiNmax i i 11 Kaki langit N i j y i y j ( xi ) Cakrawala ( x j ) 2 i 1 j 1(8.11)Subject toN yi 1ii 0 , i 1, .NDalam formulasi 8.11, dot product antara ( xi )T ( x j ) dapat diwakili oleh k(xi,xj),dimana k yakni fungsi kernel. Seterusnya sehabis kita melatih SVM dan ditemukanalpha dan b maka kita akan dapatkan f ( x) N *i 1optimal yakni g ( x) sign(Kaki langit *i 1iiyi k ( xi , x) b * , kebaikan pemisahyi k ( xi , x) b*) , dimana α*i , i 1, ., Tepi langit adalah solusioptimal berpokok penyakit (8.11) dan b* dipilih sehingga yi f(xi) 1 untuk rawak idengan C α*i 0 (Cristianini and Shawe-Taylor, 2000).

Data xi , dimana α*i 0 dinamakan support vector dan menyatakan data training yangdiperlukan bikin mengaplus arti keputusan yang optimal. Dalam gambar 8.1,sebagai contoh, 3 titik bercat hitam (2 kotak, 1 landasan) menyatakan supportvector.Secara kian detail b* dihitung dengan carab* 1 ( y sv k ( x sig , xsv ) * sv * y sig )nsv svdimana nsv adalah banyaknya support vector, sv merupakan indikator untuk support vectordan sig menunjukkan data yang produktif dalam margin, dimana 0 i C.Bakal mengatasi problem ketidaklinieran (nonlinearity) nan cerbak terjadi dalamkasus maujud, kita bisa menerapkan metoda kernel. Metoda kernel (Scholkopf andSmola, 2002) menyerahkan pendekatan alternatif dengan pendirian mengerjakan mappingdata x semenjak input space ke feature space F melalui satu kekuatan ϕ sehingga ϕ : (x) ϕ(x). Karena itu suatu titik x dalam input space menjadi ϕ(x) dalam feature space.Buram 8.4: Satu kernel map menyangkal problem yang bukan linier menjadi linierdalam space mentah.Maslahat kernel nan lazimnya dipakai horizon domestik literatur SVM (Haykin, 1999):(1) linier: xT x,

(2) polynomial: (xTx 1)p,(3) radial basis function (RBF): exp( 12 2 x x 2 ) ,(4) tangent hyperbolic (sigmoid) : tanh( 0xTxi 1).N domestik faedah tersebut terserah beberapa indikator nan nilainya ditentukan oleh user(pemakai). Misalnya dalam polynomial, p boleh diberi kredit 2, 3. ataupun ponten tidak berupabilangan buntar konkret. Dalam kernel RBF, nilai bisa diberi ponten garis hidup substansial positif.Fungsi kernel mana nan harus digunakan bikin subtitusi dot product di featurespace adv amat mengelepai pada data. Galibnya metoda cross-validation (Hastie et al. ,2001) digunakan kongkalikong bagi pemilihan kemujaraban kernel ini. Penyortiran kelebihan kernel yangtepat adalah kejadian yang tinggal berguna. Karena fungsi kernel ini akan menentukanfeature space di mana kurnia klasifier akan dicari. Selama fungsi kernelnyalegitimate, SVM akan beroperasi secara bermartabat sungguhpun kita tidak sempat sebagaimana apamap yang digunakan.Arti kernel nan legitimate diberikan oleh Teori Mercer (Vapnik, 1995) dimanafungsi itu harus menepati syarat: kontinus dan positive definite. Lebih mudahmenemukan kebaikan kernel tinimbang mencari map ϕ seperti apa yang tepat untukmelakukan mapping dari input space ke feature space. Lega penerapan metodakernel, kita tak mesti sempat map ϕ segala barang apa nan digunakan buat suatu per satu data,tetapi bertambah signifikan mengerti bahwa dot produk dua titik di feaure space bisadigantikan oleh keefektifan kernel. Sejauh ini bani adam makin banyak menggunakan kernelRBF karena doang ada satu penunjuk nan terbiasa dimasukkan. Bagaimana mencarinilai parameter kernel nan optimal menjadi obyek eksplorasi yang menyedot.Kerjakan ilustrasi bagaimana SVM bekerja, mari kita ikuti dua cermin berikut. Satuadalah contoh dimana data nan suka-suka bisa dipisahkan secara linier. Bagi contoh inikita gunakan ki aib AND. Contoh yang kedua ialah eksemplar lakukan komplikasi yangtidak dapat dipisahkan secara linier. Bagi cermin ini kita gunakan keburukan ExclusiveOR (XOR). Problem AND adalah klasifikasi dua kelas bawah dengan catur data (tatap Tabel8.1). Karena ini problem linier, kernelisasi tidak diperlukan.Grafik 8.1: AND ProblemNox1x2Y

11112-11-131-1-14-1-1-1Menggunakan data di Tabel 8.1, kita dapatkan formulasi penyakit optimisasi sebagaiberikut:min1(w12 w22) C (t1 t2 t3 t4)2Subject tow1 w2 b t1 1w1 w2 b t2 1(8.12)-w1 w2 – b t3 1w1 w2 b t4 1t1, t2, t3, t4 0Karena kemustajaban AND merupakan kasus klasifikasi linier, dimana data bisa dipisahkansecara linier maka bisa dipastikan nilai lentur slack ti 0. Makara kita dapat masukkannilai C 0. Selepas menguasai masalah optimasi di atas didapat solusi :w1 1, w2 1, b 1.Dengan nilai w dan b nan kita dapatkan ini, maka paralelisme kelebihan pemisahnyaadalah f(x) w1x1 w2 x2 b x1 x2 1. Untuk menentukan output maupun merek darisetiap titik data/obyek kita gunakan kelebihan g(x) sign(x). Dengan arti sign inisemua angka f(x) 0 diberi cap 1 dan lainnya diberi label 1. Secara grafis fungsipemisah ini diperlihatkan dalam Lembaga 8.5.

Buram 8.5: Ilustrasi bagaimana data dipisahkan dalam kasus AND.Dalam kasus XOR (lihat Tabulasi 8.2), data lain boleh dipisahkan secara linier. Untukmengatasi ki aib ketidaklinieran, kita terbiasa memformulasi SVM intern dual space.Kerjakan itu kita terlazim menukar w dengan w Cakrawala y ( x ) .i 1iiiKemudian kita perlumelakukan kernelisasi sehingga kita bisa mendapatkan fungsi pemisah linier didalam feature space. Lakukan itu kita gunakan fungsi kernel polynomial pangkat 2 yangdidefinisikan ibarat K(xi, xi) (xix′i 1)2 (Haykin,1999).Tabel 8.2: XOR ProblemNox1x2Y111-12-11131-114-1-1-1Dengan kernel ini, kita bisa kongkalikong menjumlah matriks kernel K dengan dimensi m x m,dimana m adalah banyaknya data. Mempekerjakan data di Diagram 8.2, sebagai hipotetis, bisadihitung K(1, 1) dan K(1, 2), bak berikut:x1 [1 1]; (poin x pada pengamatan ke-1)

x2 [ 1 1]; (ponten x pada pengamatan ke-2) 1 1 x1x1’ [1 1] 2; (x1x1’ 1)2 9x1x2’ [1 1] 1 1 2’2 1 0; (x x 1) 1 Dengan prosedur yang sejajar buat semua skor xi, kita dapatkan kredit matriks Ksebagai berikut: 9 1K 1 11 1 1 9 1 1 1 9 1 1 1 9 Dengan memperalat matriks K umpama pemindah dot product ( xi )N ( x j ) dalam8.11, maka kita dapatkan formulasi berikutmax α1 α2 α3 α4 1(9α21 2α1α2 α1α3 α1α4 9 α22 2α2α3 α2α4 9α23 2α3α4 9α24)2Subject to α1 α2 α3 – α4 0(8.13)αi 0Dalam keistimewaan tujuan 8.13, term kedua kita kalikan dengan yiyj . Kemiripan 8.13memenuhi bentuk standar acara kuadratik (quadratic programming, QP).Sehingga ki aib ini dapat diselesaikan dengan solver menggandar kerjakan QP.Penuntasan problem di atas dengan pertolongan software akan memberi hasil sebagaiberikut:α1 α2 α3 α4 0.125Hasil ini menunjukkan bahwa semua data n domestik mujarad ini yakni support vector.Karena biji α 0. Setelah kita training SVM dan kita dapatkan skor α, kita bisamenentukkan label cak bagi data tentamen dengan menunggangi fungsi pemisah sebagaiberikutf(x) y α ′ K(xtest, xtrain) b,

dimana vektor α dan konstanta b diketahui semenjak hasil training. Hasil ini dijelaskansecara grafis dalam Gambar 8.6. Perlu dijelaskan di sini bahwa skor w enggak selalubisa diekspresikan secara eksplisit sebagai wasilah antara α, y dan ϕ(x), karenadalam banyak kasus ϕ(x) tidak diketahui atau selit saur dihitung, kecuali dalam kasuskernel linier dimana ϕ(x) x.Gambar 8.6: Ilustrasi bagaimana data dipisahkan dalam kasus XOR.Algoritma SVM cak bagi klasifikasiVariabel dan parameterx {x0 , x1 , x2 ,., xm } : sampel trainingy { y1 ,., y m } { 1} : label data trainingkernel: varietas keistimewaan kernelpar: indikator kernelC: konstanta cost [ 1 ,., m ] : Lagrange multiplier dan bias b1. Hitung matriks kernel H2. Tentukan pembatas buat program kuadratik, teragendakan Aeq, beq, A dan b3. Tentukan kekuatan tujuan acara kuadratik1xHx f′ x24. Selesaikan masalah QP dan temukan solusi α dan b

Contoh HitunganKita perhatikan formulasi matematik SVM adalahNmax i i 11 m m i j y i y j xi Cakrawala x j 2 i 1 j 1Subject toN yi 1ii 0 , i 1, .mAtaumin Q N1 m mT yyxx i i j i j i j 2 i 1 j 1i 1Subject toN yi 1ii 0 , i 1, .m0 CKemudian kita punya set data keteter dengan 3 tutul data sebagai berikutX1 X2 Y11122-133-1Menggunakan kernel linier, dengan data di atas kita dapatkan 2 4 6 1 1 yi y j xi x [ 1 2 3] 4 8 12 2 2 6 12 18 3 TTSetelah dikalikan didapatkan formulasiMin Q α12 4α22 9α32 -4α1α2-6α3α1 12α3α2- α1- α2- α3stα1- α2- α3 0Misalkan C 1, maka0 α1, α2, α3 1

Mengegolkan konstrain ke dalam fugsi tujuan didapat guna LagrangeL α12 4α22 9α32 -4α1α2-6α3α1 12α3α2- α1- α2- α3 u(α1- α2- α3)Untuk mencapai optimum mulai sejak fungsi L, kita turunkan sehingga didapatkan1. L 2 α1- 4α 2 – 6α3 -1 u 0 12. L -4 α1 8α 2 – 12α3 -1-u 0 23. L -6 α1 12α 2 18α 3 -1-u 0 34. α1- α2- α3 0 α1 α2 α3Persamaan (2)&(3)&(4)5. α2-2α3-u-1 0(1)&(2)&(4)6. α2-10 α3-2 0(1)&(3)7. α2 9α3-2 0Dari persaman (6) dan (7) didapat -19α3 0 maka α3 0Kemudian didapat α2 2 dan α1 2, karena α 1 maka dapat dilakukan normalisasi denganmembagi per nilai α dengan 2 (minus merubah persoalan aslinya), sehinggaα1 1, α2 1 α3 0Jadi data ketiga sememangnya tdk menentukan hyperplane pemisah krn angka α3 0.Ini sesuai dgn dugaan kita bahwa tutul (3,3) sememangnya tak plus terdepan, dengan 2 titik(1,1) dan (2,2) doang kita sudah lewat dapat menemukan hyperplanenya.8.7 Implementasi SVM dengan MatlabPada dasarnya, Matlab sampai versi terakhir (varian 7) ketika buku ini ditulis, tidakmempunyai toolbox tunggal bakal implementasi SVM. Cuma Matlab mempunyaisolver quadratic programming yang yakni solver kiat privat implementasi

SVM. Sebagai halnya kita bahas sebelumnya bahwa formulasi matematika SVM adalahberbentuk quadratic programming. Ada banyak program komputer nan ditulisdalam heterogen bahasa alias kemasan software nan ditujukan untuk implementasiSVM. Tatap website berikut http : //www.kernel machines.org.Ringkasan SVM internal notasi matriks diberikan sebagai berikut1 ’H f’ 2subject to Tepi langit Y 0, 0 i C, i 1, ., mdimanaH ZZT , fT ( 1, ., 1) y1 x1 y1 . . Z ,Y . . y m xm ym Berikut ini adalah Matlab code untuk Support Vector Classification.function [alpha, b0] svc(X,Y,ker,par,C)%SVC Support Vector Classification% Parameters: X – Training inputs% Y – Training targets% ker – kernel function% par – penunjuk lakukan kernel% C – upper bound (non-separable case)/pinalti% alpha – Lagrange Multipliers% b0 – bias term%fprintf(’Support Vector Classification\n’)%fprintf(’ \tepi langit’)n size(X,1);if (nargin 5) C Inf;, endif (nargin 3) ker ’linear’;, end% Construct the Kernel matrix(8.14)

% fprintf(’Constructing .\n’);H kernel(X’,ker,par);%menamai arti kernelfor i 1:nfor j 1:nH(i,j) Y(i)*Y(j)*H(i,j);endendc -ones(ufuk,1);% Set up the parameters for the Optimisation problemvlb zeros(t,1); % Set the bounds: alphas 0vub C*ones(cakrawala,1); % alphas Cx0 zeros(tepi langit,1); % The starting point is [0 0 0 0]A Y’;, b 0; % Set the constraint Ax b% Solve the Optimisation Problemfprintf(’Optimising .\t’);st cputime;[alpha,lambda,how] quadprog(H,c,[],[],A,b,vlb,vub,x0);w2 alpha’*H*alpha;fprintf(’ w0 2 : %f\lengkung langit’,w2);fprintf(’Margin : %f\lengkung langit’,2/sqrt(w2));fprintf(’Sum alpha : %f\t’,sum(alpha));% Hitung banyaknya Support Vectorssvi find( alpha epsilon);nsv length(svi);%fprintf(’Support Vectors : %d (%3.1f%%)\n’,nsv,100*nsv/t);% Implicit bias, b0b0 0;% Explicit bias, b0% Hitung b0 bersumber umumnya support vectors sreg margin% SVs pada margin mempunyai alphas: 0 alpha Csvii find( alpha epsilon & alpha (C – epsilon));if length(svii) 0b0 .*Y(svii));-

dakbisamenghitung bias.\n’);endendREFERENSIBudi Santosa, Data Mining , Teknik Pendayagunaan Data buat Keperluan kulak, Graha Ilmu2007D.P. Bertsekas. Nonlinear Programming. Athena Scientific, Belmont, Massachusetts, 1999.Falak. Cristianini and J. Shawe-Taylor. An Introduction to Support Vector Machines. CambridgeUniversity Press, 2000.Lengkung langit. Hastie, R. Tibshirani, and J. Friedman. The Elements of Statistical Learning: data mining ,inference, and prediction. Springer-Verlag, New York, 2001.Simon Haykin. Neural Network: A Comprehensive Foundation. Prentice Hall, New Jersey,1999.B. Scholkopf and A.J. Smola. Learning with Kernels. The MIT Press, Cambridge,Massachusetts, 2002.V. Vapnik. The Nature of Statistical Learning Theory. Springer Verlag,1995.

Pelajaran Support Vector Machines Budi Santosa Profesor di Teknik Pabrik, ITS Kampus ITS, Sukolilo Surabaya E-mails: [email protected] 1. Ide Dasar Support Vector Machine Support vector machine (SVM) merupakan satu teknik yang relatif baru (1995) untuk berbuat rekaan, baik privat kasus klasifikasi ataupun regresi, nan lalu

Source: https://soal.hwatrr.com/budi-santosa-tutorial-support-vector-machine-teknik-industri-its/