Yapay Zekâ 101
Destek Vektör Makineleri Nedir?

Destek Vektör Makineleri Nedir?
Destek vektör makineleri, makine öğrenimi sınıflandırıcılarının bir türüdür ve muhtemelen en popüler sınıflandırıcı türlerinden biridir. Destek vektör makineleri, özellikle sayısal tahmin, sınıflandırma ve desen tanıma görevleri için yararlıdır.
Destek vektör makineleri, veri noktaları arasında karar sınırları çizerek çalışır ve veri noktalarını sınıflara (veya en genel olanına) ayıran karar sınırını hedefler. Bir destek vektör makinesi kullanırken amaç, karar sınırının mümkün olduğunca büyük olması ve herhangi bir verilen veri noktası ile sınır çizgisinin arasındaki mesafenin maksimize edilmesi. Bu, destek vektör makinelerinin (SVM’ler) nasıl çalıştığına dair hızlı bir açıklamadır, ancak destek vektör makinelerinin nasıl çalıştığını ve işleyişinin arkasındaki mantığı daha derine inmek için biraz zaman ayıralım.
Destek Vektör Makinelerinin Amacı
X ve Y eksenleri tarafından belirtilen özelliklere dayalı bir grafik hayal edin. Grafikteki veri noktaları, yaklaşık olarak iki farklı küme halinde bölünebilir ve bir veri noktasının ait olduğu küme, veri noktasının sınıfını gösterir. Şimdi, grafikte iki sınıfı birbirinden ayıran bir çizgi çizmek isteyelim, bir sınıfın tüm veri noktaları çizginin bir tarafında ve diğer sınıfın tüm veri noktaları diğer tarafında olsun. Bu ayırma çizgisine hiperuar denir.
Bir destek vektör makinesini, bir şehir boyunca “yollar” oluşturan ve şehri her yolun bir tarafındaki bölgelere ayıran olarak düşünebilirsiniz. Bir yoldan diğer tarafında bulunan tüm binalar (veri noktaları) aynı bölgeye aittir.

Bir destek vektör makinesinin amacı, yalnızca hiperuarlar çizmek ve veri noktalarını ayırmak değil, aynı zamanda veri noktalarını en büyük marjla (veya en fazla boşlukla) ayıran hiperuarı çizmektir. “Yollar” metaforuna dönersek, bir şehir planlayıcısı bir otoyol planı çizerken, otoyolun evlere veya diğer binalara çok yakın olmasını istemez. Hiperuar ile her iki tarafındaki binalar arasındaki marj ne kadar büyükse, sınıflandırıcı tahminleri hakkında o kadar emin olabilir. İkili sınıflandırma durumunda, doğru hiperuarı çizmek, iki sınıfın tam ortasındaki hiperuarı seçmek demektir. Karar sınırı/hiperuar bir sınıftan daha uzaksa, diğer sınıfa daha yakın olacaktır. Bu nedenle, hiperuar iki sınıf arasındaki marjı dengelemelidir.
Ayrıntı Hiperuarının Hesaplanması
Bir destek vektör makinesi en iyi ayırma hiperuarını/deciz sınırını nasıl belirler? Bu, bir matematiksel formül kullanarak olası hiperuarların hesaplanmasıyla gerçekleştirilir. Hiperuarların hesaplanması için formülü aşırı ayrıntıya girmeyeceğiz, ancak çizgi ünlü eğim/çizgi formülüyle hesaplanır:
Y = ax + b
Bu arada, çizgiler noktalarla oluşur, yani herhangi bir hiperuar, önerilen hiperuarın paralel olarak çalıştığı ve modelin ağırlıkları tarafından belirlenen ve belirtilen bir ofset/bias (“d”) ile değiştirilen özelliklerin kümesi olarak tanımlanabilir.
SVM’ler birçok hiperuar çizer. Örneğin, sınır çizgisi bir hiperuardır, ancak sınıflandırıcı tarafından dikkate alınan veri noktaları da hiperuarlardadır. X değerleri, veri kümesindeki özelliklere dayalı olarak belirlenir. Örneğin, bir kişinin boyu ve kilosunu içeren bir veri kümeniz varsa, “boy” ve “kilo” özellikleri “X” değerini hesaplamak için kullanılır. Hiperuar ve çeşitli “destek vektörleri” (veri noktaları) arasındaki marjlar, aşağıdaki formülle hesaplanır:
W * X – b
SVM’lerin arkasındaki matematik hakkında daha fazla bilgi edinebilirsiniz, ancak SVM’leri daha sezgisel bir şekilde anlamak istiyorsanız, amaç proposed ayırma hiperuarı/sınır çizgisinin ve ona paralel olarak çalışan ve veri noktalarının bulunduğu diğer hiperuarların arasındaki mesafeyi en büyük yapmak.

Foto: ZackWeinberg via Wikimedia Commons, CC BY SA 3.0 (https://commons.wikimedia.org/wiki/File:Svm_separating_hyperplanes_(SVG).svg)
Çoklu Sınıflandırma
Şimdiye kadar açıklanan süreç, ikili sınıflandırma görevleri için geçerlidir. Ancak, SVM sınıflandırıcıları da ikili olmayan sınıflandırma görevleri için kullanılabilir. Üç veya daha fazla sınıftan oluşan bir veri kümesinde SVM sınıflandırması yaparken, daha fazla sınır çizgisi kullanılır. Örneğin, bir sınıflandırma görevi iki yerine üç sınıfa sahipse, veri noktalarını sınıflara ayırmak için iki ayırma çizgisi kullanılır ve tek bir sınıfa ait bölge, bir yerine iki ayırma çizgisi arasında bulunur. Sadece iki sınıf ve bir karar sınırı arasındaki mesafeyi hesaplamak yerine, sınıflandırıcı now veri kümesindeki çoklu sınıflar arasındaki marjları dikkate almalıdır.
Doğrusal Olmayan Ayrıntılar
Yukarıda açıklanan süreç, veri doğrusal olarak ayrılabilir olduğunda uygulanır. Gerçekte, veri kümeleri几乎 hiç tamamen doğrusal olarak ayrılabilir değildir, bu nedenle bir SVM sınıflandırıcı kullanırken genellikle iki farklı tekniği kullanmanız gerekir: yumuşak marj ve çekirdek hileleri. Farklı sınıflara ait veri noktalarının birbirine karıştığı bir durumu düşünün. Nasıl bir sınıflandırıcı bu örnekleri işleyebilir?
Doğrusal olarak ayrılabilir olmayan veri kümeleriyle başa çıkmak için kullanılan bir taktik, “yumuşak marj” SVM sınıflandırıcısını uygulamaktır. Yumuşak marjlı bir sınıflandırıcı, birkaç yanlış sınıflandırılmış veri noktasını kabul eder. Veri noktalarının kümelerini birbirinden ayıran en iyi çizgiyi çizmeye çalışacaktır. Yumuşak marjlı SVM sınıflandırıcısı, sınıflandırıcının iki talebini dengelemeye çalışır: doğruluk ve marj. Yanlış sınıflandırmaları en aza indirirken marjı en büyük yapmaya çalışacaktır.
SVM’lerin hata toleransı, “C” adlı bir hiperparametrenin manipülasyonu yoluyla ayarlanabilir. C değeri, sınıflandırıcı tarafından karar sınırları çizilirken dikkate alınan destek vektörlerin sayısını kontrol eder. C değeri, yanlış sınıflandırmalar için bir cezai ücrettir, yani C değeri ne kadar büyükse, sınıflandırıcı tarafından dikkate alınan destek vektörler o kadar azdır ve marj o kadar dar olur.

Çekirdek hilesi verilerini dönüştürür ve doğrusal olmayan bir şekilde dönüştürür. Foto: Shiyu Ju via Wikmedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Kernel_trick_idea.svg)
Çekirdek hilesi, veri kümesindeki özelliklere doğrusal olmayan matematiksel fonksiyonlar uygulayarak çalışır. Çekirdek hilesinin uygulanmasıyla oluşan şey, doğrusal olmayan bir karar sınırıdır. SVM sınıflandırıcısı artık yalnızca doğrusal karar sınırları çizmekle sınırlı olmadığından, destek vektörlerinin ve gerçek dağılımının true dağılımını daha iyi kapsayan eğri karar sınırları çizebilir ve yanlış sınıflandırmaları en aza indirebilir. En popüler iki SVM doğrusal olmayan çekirdeği Radial Basis Function ve Polynomial’dir. Polynomial fonksiyonu, mevcut tüm özelliklerin polinom kombinasyonlarını oluşturur, जबकi Radial Basis Function, merkezi bir nokta/noktaların diğer tüm noktalara olan mesafesini ölçerek yeni özellikler oluşturur.












