Gaussian Çekirdeği olan bir SVM'nin sonsuz boyutsal özellik alanına sahip olduğu gerçeğinin ardındaki sezgi nedir?
Gaussian Çekirdeği olan bir SVM'nin sonsuz boyutsal özellik alanına sahip olduğu gerçeğinin ardındaki sezgi nedir?
Yanıtlar:
Bu cevap aşağıdakileri açıklar:
Kusursuz bir karar sınırlamasına yol açan, çekirdeğin konum özellikleri nedeniyle, Gauss çekirdeğiyle (farklı sınıflardan iki puanın tamamen aynı olmaması şartıyla) her zaman mükemmel bir ayrım mümkündür. Yeterince küçük çekirdek bant genişliği için, karar sınırı olumlu ve olumsuz örnekleri ayırmak için gerektiğinde noktaların etrafına küçük daireler çizmiş gibisiniz:
(Kredi: Andrew Ng'nin çevrimiçi makine öğrenim kursu ).
Peki, bu neden matematiksel bir bakış açısıyla gerçekleşiyor?
Standart kurulumu göz önünde bulundurun: Gaussian bir çekirdeğe sahipseniz ve egzersiz veriniz ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , … , ( x ( n ) , burada y ( i ) değerleri ± 1'dir . Bir sınıflandırıcı işlevi öğrenmek istiyoruz
Şimdi nasıl biz hiç ağırlıkları atar ? Sonsuz boyutlu alanlara ve ikinci dereceden bir programlama algoritmasına ihtiyacımız var mı? Hayır, çünkü sadece noktaları mükemmel şekilde ayırabileceğimi göstermek istiyorum. Bu yüzden σ 'yu en küçük ayrılmadan milyar kat daha küçük yaptım | | x ( i ) - x ( j ) | | Herhangi iki eğitim örneği arasında ve sadece w i = 1 olarak ayarladım . Tüm eğitim noktaları birbirinden kadarıyla çekirdek söz konusu olduğunda bir milyar sigma vardır ve her nokta tamamen işaretini kontrol ettiği bu araçlar ymahallesinde. Resmen, biz
Burada keyfi olarak küçük bir değerdir. Biliyoruz ε çünkü küçücük x ( k ) bu yüzden herkes için bir milyar sigma uzakta başka bir noktadan olan i ≠ k Elimizdeki
Yana kadar küçüktür ki, y ( x ( k ) ) kesinlikle işaretine y ( k ) ve sınıflandırıcı eğitim verilerine mükemmel doğruluk başarır.
Bunun “sonsuz boyutlu bir özellik uzayında mükemmel lineer ayrılık” olarak yorumlanabilmesi gerçeği, çekirdeği hileden gelir ve çekirdeği (potansiyel olarak sonsuz boyutlu) bir özellik uzayında bir iç ürün olarak yorumlamanıza izin verir:
burada özelliği boşluğa veri alanı ile ilgili eşleştirme yapılır. O hemen ardından y ( x ) özelliği alanı doğrusal bir fonksiyonu olarak işlev:
burada doğrusal işlev , v olarak öznitelik uzay vektörlerinde tanımlanır.
Bu işlev cinsinden doğrusaldır, çünkü sadece iç ürünlerin sabit vektörlerle doğrusal bir birleşimidir. Özelliği alanı olarak, uygun sınır y ( x ) = 0 , sadece bir L ( v ) = 0 , bir doğrusal fonksiyonu seviyesi grubu. Bu, özellik uzayındaki bir hiper düzlemin tanımıdır.
Not: Bu bölümde, notasyonu, eğitim verilerini değil,rastgele bir n noktakümesini ifade eder. Bu saf matematik; Eğitim verileri bu bölüme hiç dahil değil!
Çekirdek yöntemler aslında "Bul" veya "hesaplama" özelliği boşluk veya haritalama asla açıkça. SVM gibi çekirdek öğrenme yöntemleri çalışmalarına ihtiyaç duymaz; sadece K çekirdek fonksiyonuna ihtiyaç duyarlar .
Bununla birlikte, için bir formül yazmak mümkündür . Φ Eşleştiren özellik alanı bir tür soyuttur (ve potansiyel olarak sonsuz boyutludur), fakat esasen, haritalama sadece bazı basit özellik mühendisliği yapmak için çekirdeği kullanıyor. Nihai sonuç açısından, çekirdeği kullanarak öğrenmeyi sonlandırdığınız model, doğrusal regresyon ve GLM modellemesinde popüler bir şekilde uygulanan geleneksel özellik mühendisliğinden farklıdır, örneğin bir regresyon formülüne beslenmeden önce pozitif bir tahmin değişkeninin günlüğünü almak gibi. Matematiğin çoğu, çekirdeğin, sparsite ve büyük veri setlerine iyi ölçeklendirme avantajları olan SVM algoritması ile iyi oynamasını sağlamak için sadece oradadır.
Hala ilgileniyorsanız, işte nasıl çalışır. Esasen duraklatma istediğiniz kimliği almak , ve tanım gereği tutan bu şekilde bir boşluk ve iç bir ürünün kurulması. Bunu yapmak için, her vektörün verinin içinde yaşadığı alandan ( X) gerçek sayılara ( R) gerçek bir fonksiyon olduğu bir soyut vektör uzayı ( V) tanımlarız . Bir vektör f de V : çekirdek dilimlerin sonlu doğrusal kombinasyonundan oluşan bir fonksiyonudur f ( x yazma için uygundur f ve daha kısa bir f = n Σ i = 1 α i K x ( i ) burada K x ( y ) = K ( x , y ), çekirdeğe bir "dilim" veren bir fonksiyonudur x .
Uzaydaki iç ürün sıradan nokta ürün değil, çekirdeğe dayalı soyut bir iç üründür:
Bu şekilde tanımlanan özellik alanıyla, , her noktayı x'i "çekirdek dilimine" götüren bir haritalama X → V'dir :
K , pozitif bir çekirdek olduğunda , bir iç çarpım alanı olduğunu kanıtlayabilirsiniz . Ayrıntılar için bu makaleye bakın. (Bu şeye işaret ettiği için şüphe eder!)
Bu cevap güzel bir lineer cebir açıklaması verir, ancak işte hem sezgiyle hem de kanıtla geometrik bir bakış açısı.
Herhangi bir sabit nokta , bir çekirdek dilimi işlevine sahibiz K z ( x ) = K ( z , x ) . Grafiği K z sadece bir Gauss yumru merkezlenmiş olan z. Şimdi, eğer özellik alanı sadece sonlu boyutta olsaydı, bu, sabit bir nokta kümesinde sonlu bir çarpma kümesi alabileceğimiz ve başka herhangi bir yerde herhangi bir Gauss yumru oluşturabileceğimiz anlamına gelirdi. Ama açıkça bunu yapmamızın bir yolu yok; eski yumrulardan yeni bir yumru yapamazsınız, çünkü yeni yumru eskilerden çok uzak olabilir. Bu yüzden, ne kadar özellik vektörümüze (çarpmalara) sahip olursak olalım, daima yeni tümsekler ekleyebiliriz ve özellik alanında bunlar yeni bağımsız vektörlerdir. Dolayısıyla özellik alanı sonlu boyutlu olamaz; sonsuz olması gerekiyor.
İndüksiyon kullanıyoruz. Diyelim ki noktalarından oluşan bir dizi noktaya sahip olmalısınız, öyle ki Φ ( x ( i ) ) vektörleri özellik alanında doğrusal olarak bağımsızdır. Şimdi bu n noktalarından farklı bir nokta x ( n + 1 ) , aslında hepsinden bir milyar sigma uzakta bulun. Claim ( x ( n + 1 ) ) ' olduğunu iddia ediyoruz.ilk özellik vektörlerinden Φ ( x ( i ) ) doğrusal olarak bağımsızdır .
Çelişki ile kanıt. Aksine olduğunu varsayalım
Şimdi her iki taraftan da iç ürünü isteğe bağlı . Kimlik ile ⟨ Φ ( z ) , Φ ( x ) ⟩ = K ( Z , X ) elde ederiz
Burada serbest bir değişkendir, bu nedenle bu denklem iki fonksiyonun aynı olduğunu belirten bir kimliktir. Özellikle, x ( n + 1 ) merkezli bir Gaussian'ın diğer noktalardaki x ( i ) Gaussların lineer bir kombinasyonu olarak gösterilebileceğini söylüyor . Geometrik olarak apaçık olarak, diğer tüm merkezlere çarpılmış bir Gauss çarpma kombinasyonundan, özellikle diğer bütün Gauss çarpmalarının bir milyar sigma olduğu durumlarda, bir noktada merkezlenmiş bir Gauss yumrularının diğer noktalarda ortalanmış bir Gauss yumruları oluşturamayacağı açıktır. Dolayısıyla, lineer bağımlılık varsayımımız, gösterdiğimiz gibi bir çelişkiye yol açtı.
Gauss çekirdeğin çekirdek matrisi farklı için her zaman tam sırası vardır . Bu, her yeni bir örnek eklediğinizde, rütbenin 1 kat arttığı anlamına gelir . Eğer σ ayarını çok küçük yaparsanız bunu görmenin en kolay yolu . O zaman çekirdek matrisi neredeyse köşegendir.
Rütbenin her zaman bir artış göstermesi , özellik uzayındaki projeksiyonlarının doğrusal olarak bağımsız (dikey değil, bağımsız) olduğu anlamına gelir. Bu nedenle, her örnek, ions ( x 1 ) , çıkıntılarının aralığına yeni bir boyut ekler . . . , Φ ( x m ) . Sayısız şekilde sonsuz sayıda örnek ekleyebildiğiniz için, özellik alanı sonsuz boyutta olmalıdır. İlginçtir ki, giriş boşluğunun özellik boşluğuna projeksiyonları bir küre üzerinde yatmaktadır, çünkü | | Φ ( x ) | |. Bununla birlikte, kürenin geometrisi düzdür. Bu konuda daha fazla okuyabilirsiniz
Burges, CJC (1999). Çekirdek Bazlı Yöntemlerde Geometri ve Değişmezlik. B. Schölkopf, CJC Burges ve AJ Smola (Eds.), Çekirdek Metodlarındaki Gelişmeler Vektör Öğrenmeyi Desteklemektedir (s. 89-116). MIT tuşuna basın.
Geçmiş ve notasyonlar için cevaba bakınız. Karar sınırlarını destek vektörlerinden nasıl hesaplayabilirim? .
Bu nedenle, 'orijinal' uzayda bulunan özellikler vektörleri , ikili sonuç y i ∈ { - 1 , + 1 } ve Lagrange çarpanları α i'dir .
Bu çekirdek olarak yazılabilir bilinmektedir ( ' ⋅ ' iç çarpımı temsil eder.) Burada Φ yeni bir özellik olan, bir (kapalı ve bilinmeyen) dönüşümdür alanı.
Bazı vermeye çalışacaktır 'sezgisel' açıklama bu ne Bu cevap Resmi kanıt yani, sadece istediği, bakışlar gibi bu eserlerin düşünüyorum nasıl bazı hissi verir. Hatalıysam beni düzeltmekte tereddüt etmeyin. Açıklamamın temeli bu pdf’in 2.2.1.
Özellik alanımı (bu yüzden ) doğrusal ayrımın çözüleceği bazı 'yeni' özellik alanlarına dönüştürmeliyim.
Eğitim örneğinin büyüklüğü).
Note that are the coordinates of vector in the vector space .
is the size of the training sample and therefore the dimension of the vector space can go up to , depending on whether the are linear independent. As (see supra, we defined in this way), this means that the dimension of depends on the kernel used and can go up to the size of the training sample.
If the kernel is 'complex enough' then the will all be independent and then the dimension of will be , the size of the training sample.
The transformation, that maps my original feature space to is defined as
.
This map maps my original feature space onto a vector space that can have a dimension that goes up to the size of my training sample. So maps each observation in my training sample into a vector space where the vectors are functions. The vector from my training sample is 'mapped' to a vector in , namely the vector with coordinates all equal to zero, except the -th coordinate is 1.
Obviously, this transformation (a) depends on the kernel, (b) depends on the values in the training sample and (c) can, depending on my kernel, have a dimension that goes up to the size of my training sample and (d) the vectors of look like , where are real numbers.
Looking at the function in How to calculate decision boundary from support vectors? it can be seen that . The decision boundary found by the SVM is .
In other words, is a linear combination of the and is a linear separating hyperplane in the -space : it is a particular choice of the namely !
The are known from our observations, the are the Lagrange multipliers that the SVM has found. In other words SVM find, through the use of a kernel and by solving a quadratic programming problem, a linear separation in the -spave.
This is my intuitive understanding of how the 'kernel trick' allows one to 'implicitly' transform the original feature space into a new feature space , with a different dimension. This dimension depends on the kernel you use and for the RBF kernel this dimension can go up to the size of the training sample. As training samples may have any size this could go up to 'infinite'. Obviously, in very high dimensional spaces the risk of overfitting will increase.
So kernels are a technique that allows SVM to transform your feature space , see also What makes the Gaussian kernel so magical for PCA, and also in general?
Ne yazık ki, fcop'un açıklaması oldukça yanlış. Öncelikle “Çekirdeğin yeni bir özellik alanına (örtük ve bilinmeyen) bir dönüşüm olduğu ... olarak yazılabildiği bilinmektedir. Bilinmiyor. Bu aslında özelliklerin haritalandığı alandır ve bu RBF örneğinde olduğu gibi sonsuz boyutlu olabilecek alandır. Çekirdeğin yaptığı, bir eğitim örneğinin dönüştürülmüş bir özellik vektörüyle dönüştürülmüş özellik vektörünün iç çarpımını almak ve sonuçta bir işlev uygular. Bu nedenle örtük olarak bu daha yüksek boyutlu özellik vektörünü temsil eder. Örneğin, x ^ 2 + 2xy + y ^ 2 yerine (x + y) ^ 2 yazmayı düşünün. Şimdi hangi sonsuz dizinin üstel fonksiyonla örtük olarak temsil edildiğini bir düşünün ... orada sonsuz özellik alanınız var.
SVM'leri düşünmenin doğru yolu, özelliklerinizi, eğitim seti büyüklüğü kadar büyük olabilen, başka bir sonlu boyutlu "Çekirdek" özellik alanında dolaylı olarak gösterilebilecek, sonsuz boyutsal bir boyutsal özellik alanıyla eşleştirmenizdir.