Dua kelas data terlihat hampir terpisah, tetapi garis mana yang paling baik? SVM menjawab dengan mencari hyperplane yang memberi margin paling lebar di antara kelas.
Hyperplane dan margin
Pada 2D, hyperplane adalah garis pemisah. Pada 3D, ia menjadi bidang. Pada dimensi lebih tinggi, kita tetap menyebutnya hyperplane. Margin adalah jarak antara hyperplane dan titik terdekat dari masing-masing kelas.
Titik yang menempel pada batas margin disebut support vector. Titik-titik inilah yang paling menentukan posisi boundary. Jika support vector bergeser, hyperplane bisa ikut berubah.
min 1/2 ||w||^2 + C sum hinge_losshinge_loss = max(0, 1 - y_i(w^T x_i + b))Tujuannya menjaga margin lebar sambil memberi penalti pada kesalahan klasifikasi.Hard margin dan soft margin
Hard margin menganggap data bisa dipisahkan sempurna. Ini jarang terjadi pada data nyata. Soft margin memperbolehkan beberapa pelanggaran dengan parameter C. C besar menghukum kesalahan lebih keras, sedangkan C kecil membuat boundary lebih toleran.
Kernel trick
Jika data tidak bisa dipisahkan garis lurus, SVM dapat memakai kernel untuk menghitung kemiripan seolah-olah data diproyeksikan ke ruang fitur yang lebih tinggi. Kernel linear cocok untuk data yang hampir linear. Polynomial dan RBF membantu pada pola non-linear.
Coba di workspace
- Buka lab SVM.
- Lihat titik mana yang menjadi support vector.
- Ubah parameter dan amati margin.
- Bandingkan boundary dengan Regresi Logistik dan KNN.
SVM kuat untuk dataset kecil hingga menengah, terutama ketika margin jelas. Untuk data tabular besar, bandingkan juga dengan Random Forest dan baca hasilnya memakai Confusion Matrix.
Ringkasan praktis
- Pelajari SVM dari konsep hyperplane hingga kernel trick secara visual dengan support vector dan margin interaktif.
- Mulai dari intuisi visual, lalu cocokkan dengan rumus, contoh, dan batasan penggunaannya.
- Gunakan lab interaktif untuk menguji konsep setelah membaca, terutama jika artikel membahas metode atau evaluasi model.
Pertanyaan yang sering muncul
Siapa yang cocok membaca artikel ini?
Pembaca yang ingin memahami klasifikasi dengan bahasa Indonesia yang praktis, tanpa kehilangan konteks teknis penting.
Apa langkah berikutnya setelah membaca?
Coba ulang konsep dengan data kecil, bandingkan hasilnya, lalu buka artikel terkait atau eksperimen interaktifnya agar pemahaman tidak berhenti di teori.
Support-Vector Networks dan scikit-learn SVM
Lanjutkan membaca pada sumber penerbit untuk mendapatkan konteks lengkap.
Buka sumber asli →