Nov 3, 2023

MUHAMMAD GHIFARY

Support Vector Machines (SVM) merupakan salah satu algoritma pembelajaran mesin yang pernah menjadi paling populer di masanya. Ketenaran SVM membuat neural networks agak terlupakan pada tahun 1990 - 2000an, sebelum neural networks dengan wajah baru bernama deep learning mengambil kembali singgasana sebagai raja machine learning.

Pada masa sumber daya komputasi dan data masih dalam skala kecil, SVM merupakan salah satu algoritma paling efektif dalam membentuk sebuah model supervised learning. Di tambah lagi SVM memiliki landasan teori yang kuat dan dapat dibuktikan validitasnya secara matematis.

Di sini akan kita bahas konsep dasar algoritma SVM secara matematis dan intuitif hingga implementasi sederhana dengan menggunakan Python.

Hyperplane

Hyperplane merupakan generalisasi dari garis lurus (pada ruang 2D) atau bidang datar (ruang 3D), yaitu bidang datar berdimensi $d$. Pastinya sulit untuk memvisualisasikan hyperplane $d>3$ dibenak kita.

Gambar 1: Hyperplane 2D (garis)

Gambar 1: Hyperplane 2D (garis)

Gambar 2: Hyperplane 3D (bidang datar)

Gambar 2: Hyperplane 3D (bidang datar)

Dalam notasi matematis, hyperplane dapat ditulis sebagai berikut:

$$ w_1 x_1 + \cdots + w_d x_d + c = 0 $$

$$ \implies \sum_{j=1}^d w_j x_j + c = 0 \implies \langle \mathbf{w}, \mathbf{x} \rangle + c = 0 $$

Untuk $d=2$ akan didapatkan tampilan visual seperti pada Gambar 1 dan $d=3$ pada Gambar 2.

Secara intuitif, dilihat dari sudut pandang geometris hubungan antara vektor $\mathbf{w}$, $\mathbf{x}$, dan hyperplane (dalam 2D) dapat diilustrasikan sebagai berikut:

Gambar 4: Hyperplane, vektor w dan x

Gambar 4: Hyperplane, vektor w dan x

Dari gambar tersebut, dapat dilihat bahwa vektor $\mathbf{w}$ selalu tegak lurus dengan hyperplane. Mengapa? Silakan dibuktikan sendiri 🙂

Hint: geser hyperplane pada Gambar 4 ke titik (0, 0) lalu gunakan definisi ortogonalitas dari $\langle \mathbf{w}, \mathbf{x} \rangle$.

Ide Dasar: Maximum Margin

Sekarang kita akan bahas ide pokok dari SVM, yang dikenal dengan istilah maximum margin. Kita awali bagaimana decision rule dan margin pada SVM dibentuk.

Decision Rule

Kita fokuskan pada pemecahan problem klasifikasi biner, yaitu mengidentifikasi apakah suatu sampel berlabel positif (’+’) atau negatif (’-’), $f: \mathbb{R}^d \rightarrow \{-1, +1\}$.