Laboratuvardan Haberler
Blog

SVM, İki Grubu Ayıran En Geniş Yol

Bir parkta iki grup çocuk oynuyor: bir tarafta futbol oynayanlar, diğer tarafta ip atlayanlar. Aralarına bir ip gerip iki grubu ayırmanız gerekiyor. İpi pek çok farklı yere gerebilirsiniz ve hepsi bu iki grubu şu an için ayırır. Ama ipi futbolculara çok yakın gererseniz, top peşinde biraz kenara kaçan ilk çocuk yanlış tarafa geçer.

Akıllıca olan, ipi iki gruptan da olabildiğince uzak bir yere germek. Yani iki grubun arasındaki en geniş yolun tam ortasına.

Destek Vektörleri

Destek vektör makineleri (SVM, Support Vector Machine) tam olarak bu en geniş yolu arıyor. İlginç olan, yolun nereden geçeceğini gruptaki herkesin değil, yalnızca sınıra en yakın birkaç çocuğun belirlemesi. Parkın öbür ucundaki çocuklar nerede durursa dursun ipin yeri değişmiyor. Sınırdaki bu birkaç örneğe destek vektörleri deniyor. Yöntemin adı da buradan geliyor.

Bu, SVM’e önemli bir avantaj sağlıyor: kararını az sayıda kritik örneğe dayandırdığı için veri az olduğunda bile iyi genelleme yapabiliyor.

Düz Bir Çizgi Yetmediğinde

Peki ya çocuklar iç içe oynuyorsa? Örneğin ip atlayanlar ortada bir halka oluşturmuş, futbolcular da onların etrafında koşuyorsa? Hiçbir düz ip bu iki grubu ayıramaz.

SVM’in buna zarif bir çözümü var. Masada karışık duran kırmızı ve mavi bilyeleri düşünün. Masaya alttan vurduğunuzda, kırmızılar mavilerden biraz daha yükseğe sıçrasa, havadaki o anda aralarına düz bir kâğıt sokup ikisini ayırabilirsiniz. SVM de veriyi matematiksel olarak daha fazla boyutlu bir uzaya “fırlatıyor” ve orada düz bir ayırıcı arıyor. Bu numaraya çekirdek hilesi (kernel trick) deniyor.

EEG’de SVM

EEG çalışmalarında katılımcı sayısı çoğu zaman sınırlı, özellik sayısı ise yüksek. SVM’in az veriyle de iyi genelleme yapabilmesi, onu beyin-bilgisayar arayüzlerinden duygu tanımaya kadar pek çok EEG çalışmasında uzun süredir temel karşılaştırma yöntemlerinden biri yapıyor. Biz de yeni bir yöntemi denerken SVM’i çoğu zaman ilk karşılaştırma noktası olarak kullanıyoruz.

Kaynaklar

  1. Cortes, C., Vapnik, V. (1995). Support-vector networks. Machine Learning, 20(3), 273–297. DOI: 10.1007/BF00994018