web-gelistirme-sc.com

Yapay Sinir Ağlarının Destek Vektör Makineleri Üzerindeki Avantajları Nelerdir?

YSA (Yapay Sinir Ağları) ve SVM (Destek Vektör Makineleri), denetimli makine öğrenmesi ve sınıflandırması için iki popüler stratejidir. Belirli bir proje için hangi yöntemin daha iyi olduğu genellikle belli değildir ve cevabın her zaman "buna bağlı" olduğundan eminim. Çoğunlukla, her ikisinin de Bayes sınıflaması ile bir kombinasyonu kullanılır.

Stackoverflow ile ilgili bu sorular ANN-SVM ile ilgili çoktan sorulmuştur:

YSA ve SVM sınıflandırması

sınıflandırma sorumdaki ANN, SVM ve KNN arasındaki fark nedir

Metin İşleme için Destek Vektör Makinesi veya Yapay Sinir Ağı?

Bu soruda bilmek istiyorum özellikle Bir YSA'nın hangi yönlerini (özellikle Çok Katmanlı Bir Bakış Açısı) SVM üzerinden kullanmayı arzu edebilir? Sormamın nedeni, opposite sorusunu cevaplamanın kolay olmasından kaynaklanıyor: Destek Vektör Makineleri, YSA'lardan iki büyük zayıflıktan kaçındıkları için YSA'lardan genellikle üstündür:

(1) YSA’lar genellikle küresel minima yerine local minima üzerinde bir araya gelirler, yani bazen esasen "büyük resmi kaçırıyorlar" (veya ağaçlar için ormanı kaçırıyorlar) demektir.

(2) YSA’lar sık ​​sık overfit eğer eğitim çok uzun sürerse, herhangi bir kalıp için, bir YSA gürültüyü kalıbın bir parçası olarak görmeye başlayabilir.

SVM'ler bu iki sorunun hiçbirinden muzdarip değildir. Bununla birlikte, SVM'lerin YSA'lar için tam bir ikame olduğu düşünülmemektedir. Öyleyse, bir YSA'da belirli durumlar için uygulanabilir kılan bir SVM üzerinde ne gibi spesifik avantaj (lar) var? spesifik Bir SVM'nin bir YSA üzerindeki avantajlarını listeledik, şimdi YSA avantajlarının bir listesini görmek istiyorum (varsa).

371
Channel72

Verdiğiniz örneklere bakılırsa, YSA'larla, çok katmanlı algılayıcılar gibi çok katmanlı ileri besleme ağları (kısaca FF ağları) demek istediğinizi varsayalım, çünkü bunlar SVM'lerle doğrudan rekabet içindedir.

Bu modellerin SVM'lere göre belirli bir yararı, boyutlarının sabit olmasıdır: SVM'ler parametrik değilken parametrik modellerdir. Yani, bir YSA'da, boyutları h olan bir sürü gizli katmana sahip olursunuz.1  h ile n  özelliklerin sayısına, artı önyargı parametrelerine ve bunlar modelinizi oluşturur. Buna karşılık, bir SVM (en azından bir çekirdeklenmiş olan), her biri için bir ağırlık içeren, eğitim setinden seçilen bir dizi destek vektöründen oluşur. En kötü durumda, destek vektörlerinin sayısı tam olarak egzersiz örneklerinin sayısıdır (çoğunlukla küçük egzersiz setlerinde veya dejenere durumlarda oluşur) ve genel olarak model büyüklüğü doğrusal olarak ölçeklenir. Doğal dil işlemede, her biri yüzbinlerce özelliği olan on binlerce destek vektörü olan SVM sınıflandırıcıları, hiç duyulmamış değildir.

Ayrıca, çevrimiçi eğitim FF ağları == çevrimiçi SVM uydurmalarına kıyasla çok basittir ve öngörme biraz daha hızlı olabilir.

EDIT: Yukarıdakilerin tümü, genelleştirilmiş çekirdek SVM'lerin durumu ile ilgilidir. Lineer SVM, parametrik olmaları ve stokastik degrade iniş gibi basit algoritmalar ile çevrimiçi öğrenmeye izin vermeleri bakımından özel bir durumdur.

129
Fred Foo

Yapay sinir ağlarının destek vektör makineleri üzerindeki belirgin bir avantajı, yapay sinir ağlarının herhangi bir sayıda çıktının olabileceği, destek vektör makinelerinin ise sadece bir tane olmasıdır. Destek vektör makineleri ile n-ary sınıflandırıcı oluşturmanın en doğrudan yolu n destek vektör makineleri oluşturmak ve her birini birer birer eğitmektir. Öte yandan, sinir ağları ile bir n-ary sınıflandırıcısı tek seferde eğitilebilir. Ek olarak, sinir ağı daha anlamlı olacaktır çünkü bir bütündür, oysa destek vektör makineleri izole edilmiş sistemlerdir. Bu, özellikle çıktılar birbiriyle ilişkiliyse kullanışlıdır.

Örneğin, amaç elle yazılmış rakamları sınıflandırmak olsaydı, on destek vektör makinesi yapardı. Her destek vektörü makinesi tam olarak bir rakamı tanıyacak ve diğerlerini tanıyamayacaktı. Her el yazısı basamağı, yalnızca sınıfından daha fazla bilgi tutamayacağı için, yapay bir sinir ağı ile bunu çözmeye çalışmak mantıklı değildir.

Ancak, amacın, bir kişinin hormon dengesini (birkaç hormon için), son yemekten sonra geçen zaman, kalp atım hızı, vb. Gibi kolayca ölçülen fizyolojik faktörlerin bir fonksiyonu olarak modellemek olduğunu varsayalım. ağ regresyonu, vektör makine regresyonunu desteklemekten daha anlamlı olur.

60
Alan

Unutulmaması gereken bir şey, ikisinin aslında çok ilgili olduğu. Doğrusal SVM'ler, tek katmanlı NN'lere eşittir (yani, algılayıcılar) ve çok katmanlı NN'ler, SVM'ler cinsinden ifade edilebilir. Bazı detaylar için buraya bakınız.

46
Bryce

Bir çekirdek SVM kullanmak istiyorsanız, çekirdeği tahmin etmeniz gerekir. Bununla birlikte YSA'lar evrensel tahmincilerdir; yalnızca yapılması gereken tahminler genişlik (yaklaşıklık doğruluğu) ve yüksekliktir (yaklaşıklık verimliliği). Optimizasyon problemini doğru tasarlarsanız fazla uymazsınız (lütfen fazla uydurma için kaynakçaya bakınız). Ayrıca, araştırma alanını doğru ve düzgün bir şekilde tarıyorlarsa, eğitim örneklerine de bağlıdır. Genişlik ve derinlik keşfi tamsayılı programlamanın konusudur.

Örneğin, gerçek bir kompakt destek U dizisi ile parametrelendirilen I = [0,1] 'deki sınırlanmış fonksiyonların f(.) Ve I = [0,1]' deki sınırlı evrensel hesaplayıcılar olduğunu varsayalım. (., a) özelliği ile birlikte bir dizi dizisi vardır.

lim sup { |f(x) - U(x,a(k) ) | : x } =0

ve IxI üzerindeki bir D dağılımını içeren (x,y) örneklerini ve testlerini çiziyorsunuz.

Öngörülen bir destek için yaptığınız en iyisini bulmaktır.

sum {  ( y(l) - U(x(l),a) )^{2} | : 1<=l<=N } is minimal

Bırakalım bu a=aa, rastgele bir değişkendir !, aşırı uydurma o zaman

D and D^{N} of ( y - U(x,aa) )^{2} kullanarak ortalama

Nedenini [hatayı] minimize edecek şekilde aa seçtiyseniz, o zaman nadir bir değer kümesi için mükemmel bir uyum elde edersiniz. Ancak, nadir olduklarından ortalamalar hiçbir zaman 0 değildir. D'ye ayrı bir yaklaşıma sahip olsanız da ikinciyi en aza indirmek istersiniz. Ve destek uzunluğunun serbest olduğunu unutmayın.

Bir cevap burada özlüyorum: Çok katmanlı algılayıcı özellikleri arasındaki ilişkiyi bulmak mümkün. Örneğin, bilgisayar görmesinde öğrenme algoritmasına ham bir görüntü sağlandığında ve şimdi Sofistike özellikler hesaplandığında gereklidir. Temel olarak orta seviyeler yeni bilinmeyen özellikleri hesaplayabilir.

14
dolbi

SVM sisteminin, etiketli grafikler veya dizeler gibi metrik olmayan alanlara doğrudan uygulanabileceğini de düşünmeliyiz. Aslında, iç çekirdek işlevi, çekirdeğin pozitif kesinliği gerekliliğinin karşılanması şartıyla, neredeyse her türlü girişe uygun şekilde genelleştirilebilir. Öte yandan, bir etiketli grafik setinde bir YSA kullanabilmek için açık gömme prosedürleri göz önünde bulundurulmalıdır.

12
strozzino