Yapay Sinir Ağlarının Destek Vektör Makinelerine Göre Avantajları Nelerdir? [kapalı]


381

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

Stackoverflow ile ilgili şu sorular ANN vs SVM ile ilgili olarak sorulmuştur:

YSA ve SVM sınıflandırması

Sınıflandırma sorumdaki YSA, SVM ve KNN arasındaki fark nedir

Metin işleme için Vektör Makinesi veya Yapay Sinir Ağını destekliyor musunuz?

Bu soruda, bir YSA'nın (özellikle Çok Katmanlı Bir Algılayıcı) hangi yönlerinin bir SVM üzerinden kullanılmasını cazip hale getirebileceğini özellikle bilmek istiyorum. Sormamın nedeni, karşıt soruyu cevaplamanın kolay olması : Destek Vektör Makineleri genellikle YSA'lardan daha üstündür çünkü YSA'ların iki büyük zayıflığından kaçınırlar:

(1) YSA'lar genellikle küresel minimadan ziyade yerel minimada birleşirler , yani bazen "büyük resmi kaçırırlar" (veya ağaçlar için ormanı kaçırırlar)

(2) Eğitim çok uzun sürerse ANN'ler genellikle fazladır , yani herhangi bir model için bir YSA, gürültüyü modelin bir parçası olarak düşünmeye başlayabilir.

SVM'ler bu iki sorunun hiçbirinden muzdarip değildir. Bununla birlikte, SVM'lerin YSA'ların yerine geçmesi gerektiği açıkça görülmemektedir. Peki belirli avantaj (lar) bir YSA belli durumlar için uygulanabilir hale olabilecek bir SVM üzerinde var? Bir YSA'ya göre bir SVM'nin belirli avantajlarını listeledim , şimdi YSA avantajlarının bir listesini (varsa) görmek istiyorum.


61
Ne yazık ki bu yakında kapatılacak veya taşınacak, ancak soruyu kesinlikle seviyorum. Buna bir dizi düşünceli cevap görmek daha iyi bir şey istemem.
duffymo

10
Bu sorunun cevabının çoğunun spekülatif veya kanıta dayalı olacağını düşünüyorum, çünkü bu makinelerin gücü konusunda çok az teorik garanti var. Örneğin (doğru hatırlıyorsam), n katmanlı ileri beslemeli sinir ağının 2 katmanlı ağdan daha güçlü olup olmadığı bilinmemektedir. Öyleyse, aynı modelin küçük varyasyonları arasındaki ilişkileri bile anlamıyorsak, prensipte birinin diğerinden daha iyi olduğunu nasıl söyleyebiliriz?
JeremyKun

13
Çok yapıcı olmadığı için kapalı ... Lol!
erogol

65
StackOverflow'un soruların ve cevapların kalitesini yüksek tutmaya çalıştığını seviyorum. StackOverflow bu neşter yerine bir balta ile zorlamak nefret ediyorum. "HTML şeyler nasıl yaparım?" Sorusu arasında bir fark vardır. ve başka bir yere yanıt bulmak zor olan alana özgü bir soru. Bunun 140 upvotes olması için bir neden var - yine de "yapıcı değil" olarak kabul ediliyor. Bunun gibi sorular yapıcı özdendir . Kuşkusuz, her gün gördüğüm birçok kişiden çok daha fazlası, Soru-Cevap formatına düzenli olarak düşerken, yine de asker hariç hemen hemen herkes için işe yaramaz.
Chase Ries

20
Bu açıkça yapıcı. Neden kapatılacağını anlayamıyorum. Bir algoritmanın kullanılmasının alternatif bir algoritmanın kullanılmasına göre avantajları olduğu belirli durumlar sorulmaktadır. Bu sorulacak makul bir şey değil mi?
Rab

Yanıtlar:


137

Sağladığınız örneklerden yola çıkarak, YSA'larla, çok katmanlı algılayıcılar gibi çok katmanlı ileri beslemeli ağlar (kısaca FF ağları) anlamına geldiğini varsayıyorum, çünkü bunlar SVM'lerle doğrudan rekabet halindedir.

Bu modellerin SVM'lere göre sahip olduğu özel bir fayda, boyutlarının sabit olmasıdır: parametrik modellerdir, SVM'ler parametrik değildir. Yani, bir YSA'da, h 1 ila h n boyutlarında bir grup gizli katmanınız vardır.özellik sayısına, artı yanlılık parametrelerine ve modelinizi oluşturan özelliklere bağlı olarak. Aksine, bir SVM (en azından çekirdeklenmiş olan), her biri için bir ağırlık ile eğitim setinden seçilen bir dizi destek vektöründen oluşur. En kötü durumda, destek vektörlerinin sayısı tam olarak eğitim örneklerinin sayısıdır (ancak esas olarak küçük eğitim setlerinde veya dejenere durumlarda ortaya çıkar) ve genel olarak model boyutu doğrusal olarak ölçeklenir. Doğal dil işlemede, her biri yüz binlerce özelliğe sahip on binlerce destek vektörü bulunan SVM sınıflandırıcıları duyulmamıştır.

Ayrıca, FF ağlarının çevrimiçi eğitimi , çevrimiçi SVM bağlantısına kıyasla çok basittir ve tahmin etmek biraz daha hızlı olabilir.

DÜZENLEME : yukarıdakilerin hepsi genel çekirdeklenmiş SVM durumu ile ilgilidir. Doğrusal SVM parametrik olmaları ve stokastik gradyan iniş gibi basit algoritmalarla çevrimiçi öğrenmeye izin vermeleri açısından özel bir durumdur .


12
Bu makalede başka bir neden bulunabilir: yann.lecun.com/exdb/publis/pdf/bengio-lecun-07.pdf . Kısacası, yazar, "derin mimariler" in "akıllı" davranışları / işlevleri vs. SVM'ler gibi "sığ mimarilerden" daha verimli bir şekilde temsil edebileceğini belirtmektedir.
alfa

1
Bir kenara, derin öğrenme burada MLP'ler (sabit boyut, daha basit eğitim) için verilen "avantajları" bir şekilde kaybeder. Yine de, bu avantajların buna değdiğinden emin değilim.
Muhammed Alkarouri

6
@MuhammadAlkarouri: derin öğrenme oldukça geniş bir teknikler kümesidir, ancak aşina olduğumlar parametrik (sabit boyutlu) modellerin faydasını korurlar.
Fred Foo

İki yorum: çevrimiçi eğitim noktası doğrudur, ancak çevrimiçi öğrenme için özel olarak tasarlanmış, güncellemeleri önemsiz olan MIRA (bir tür pasif-agresif sınıflandırıcı) adı verilen SVM benzeri sınıflandırıcıların bir çeşidi vardır. İkincisi, birçok sinir ağının çekirdek hilesi yoluyla SVM'ler olarak formüle edilebileceğini belirtmek gerekir.
Ben Allison

1
@FredFoo ayrıca YSA destek vektör makineleri bu soruna eğilimli olmadığı yerel minima sıkışmış olabilir.
turist

62

Yapay sinir ağlarının destek vektör makinelerine göre bariz bir avantajı, yapay sinir ağlarının herhangi bir sayıda çıktıya sahip olabileceği, destek vektör makinelerinin ise sadece bir çıkışa sahip olabileceğidir. Destek vektör makineleri ile bir n-ary sınıflandırıcı oluşturmanın en doğrudan yolu, n destek vektör makineleri oluşturmak ve her birini tek tek eğitmektir. Öte yandan, sinir ağları olan bir n-ary sınıflandırıcısı bir seferde eğitilebilir. Ek olarak, sinir ağı daha anlamlı olacaktır, çünkü bir bütündür, destek vektör makineleri yalıtılmış sistemlerdir. Bu, özellikle çıktılar birbiriyle ilişkili ise yararlıdır.

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

Bununla birlikte, amacın bir kişinin hormon dengesini (birkaç hormon için) son yemekten bu yana geçen zaman, kalp atış hızı vb.Gibi kolayca ölçülebilen fizyolojik faktörlerin bir fonksiyonu olarak modellemek olduğunu varsayalım ... Bu faktörlerin hepsi birbiriyle ilişkili, yapay sinir ağ regresyonu, vektör makine regresyonunu desteklemekten daha mantıklıdır.


18
Aslında, destek vektör makinesinin gerçek çok sınıflı formülasyonları vardır (bkz. Crammer ve Singer'ın kağıtları). Bence LibSVM bunların bir uygulamasını içeriyor.
Fred Foo

3
Ancak, çok sınıflı bir SVM'yi eğitmek o kadar kolay değildir ve performans OVA'da AVA yaklaşımından daha iyi görünmektedir.
crodriguezo

3
"Bunu yapay bir sinir ağı ile çözmeye çalışmak mantıklı değil" El yazısı rakamların sınıflandırılmasını çözmek için bir sinir ağı kullanabilirsiniz. Bunu bir sınıf için hw ödevi olarak yaptım. Çıktı katmanı tüm basamakların olasılıklarını içerir. En yüksek olasılıklı sınıf, hipotez olarak kullanılır. % 94 doğruluk oranım vardı.
user3266824

N çıkışları yapmak için 1'e karşı N-1 SVM sınıflandırıcılarına karşı NN kullanmak anlamına gelir. SVM bu şekilde daha yavaş görünüyor mu?
mskw

@ user3266824 Evet, bu teklif iyi yaşlanmadı.
runDOSrun

46

Dikkat edilmesi gereken bir şey, bu ikisinin aslında çok ilgili olduğudur. Doğrusal SVM'ler tek katmanlı NN'lere (yani algılayıcılar) eşdeğerdir ve çok katmanlı NN'ler SVM'ler olarak ifade edilebilir. Bkz burada bazı detaylar için.


18

Çekirdek SVM kullanmak istiyorsanız, çekirdeği tahmin etmeniz gerekir. Bununla birlikte, YSA'lar sadece yapılması gereken tahmini genişlik (yaklaşık doğruluk) ve yükseklik (yaklaşık verim) olan evrensel yaklaşımlardır. Optimizasyon problemini doğru bir şekilde tasarlarsanız, fazla uymazsınız (lütfen fazla takma için kaynakçaya bakın). Arama alanını doğru ve düzgün bir şekilde taramaları da eğitim örneklerine bağlıdır. Genişlik ve derinlik keşfi tamsayı programlama konusudur.

I = [0,1] üzerinde yine aralıklı sınırlı f (.) Fonksiyonlarına ve sınırlı evrensel yaklaşımlara sahip olduğunuzu varsayalım. Örneğin, U bir dizi dizinin mevcut olması

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

ve (x,y)D dağıtımı ile örnekler ve testler çiziyorsunuz IxI.

Ö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

a=aaRastgele bir değişken olan bu olsun !, O zaman aşırı uydurma

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

Nedenini açıklayayım aa, hatayı en aza indirecek şekilde seçerseniz , nadir bir değer kümesi için mükemmel uyum sağlarsınız. Bununla birlikte, nadir oldukları için ortalama hiçbir zaman 0 değildir.


14

Burada bir cevap eksik: Çok katmanlı algılayıcı, özellikler arasındaki ilişkiyi bulabiliyor. Örneğin, öğrenme algoritmasına ham bir görüntü sağlandığında ve şimdi Gelişmiş özellikler hesaplandığında bilgisayar görüşünde gereklidir. Temelde ara seviyeler yeni bilinmeyen özellikleri hesaplayabilir.


12

SVM sisteminin , etiketli grafik veya dizeler gibi metrik olmayan alanlara doğrudan uygulanabileceğini de düşünmeliyiz . Aslında, iç çekirdek işlevi, çekirdeğin pozitif kesinlik gereksiniminin karşılanması koşuluyla, hemen hemen her türlü girdiye uygun şekilde genelleştirilebilir. Öte yandan, bir ANN'yi bir dizi etiketli grafikte kullanabilmek için açık gömme prosedürleri göz önünde bulundurulmalıdır.


6
Aklımda, mantıklı bir çekirdek oluşturmak ve mantıklı bir metrik gömme oluşturmak da aynı derecede sorunlu. Yani bu sadece metriklerden daha çeşitli çekirdeklerin olabileceği bir yorum, ama bunu gerçekten satın almıyorum. ohli.de/download/papers/Deza2009.pdf
JeremyKun
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.