Evrensel Yaklaşım Teoremi - Yapay Sinir Ağları


23

Bunu daha önce MSE'ye gönderdim , ancak burada sorulacak daha iyi bir yer olabileceği önerildi.

Evrensel yaklaşım teoremi , "sınırlı sayıda gizli nöron içeren tek bir gizli katmana sahip standart çok katmanlı ileri besleme ağının, aktivasyon fonksiyonuna ilişkin hafif varsayımlar altında, Rn'nin kompakt alt kümelerinde sürekli fonksiyonlar arasında evrensel bir tahminci olduğunu" belirtir.

Bunun ne anlama geldiğini anlıyorum, ancak ilgili makaleler neden doğru olduğunu ya da gizli bir katmanın doğrusal olmayan fonksiyonlara nasıl yaklaştığını kavramak için matematik anlayışımın çok üstünde.

Öyleyse, temel matematik ve doğrusal cebirden biraz daha gelişmiş olarak, bir gizli katmana sahip ileri beslemeli bir ağ doğrusal olmayan fonksiyonları nasıl gösterir? Cevabın mutlaka somut olması gerekmez.



Bulduğum görsel kanıt michael oldukça yararlı Nielsen tarafından
Bay Tsjolder

Yanıtlar:


26

Cybenko'nun sonucu, aşağıda aktarmayı umduğum gibi oldukça sezgiseldir; işleri daha da zorlaştıran şey, hem genelliği hem de en az sayıda gizli katmanı hedeflemekti. Kolmogorov'un sonucu (vzn dediği gibi) aslında daha güçlü bir garanti veriyor, ancak makine öğrenmesiyle biraz daha az ilgili (özellikle düğümler heterojen olduğu için standart bir sinir ağı oluşturmuyor); Bu sonuç sırayla korkutucu çünkü yüzeyde bazı sınırlamalar ve sürekli fonksiyonlar kaydeden sadece 3 sayfa, ancak gerçekte bir fraktal seti oluşturuyor. Cybenko'nun sonucu kullandığı kesin teknikler nedeniyle sıradışı ve çok ilginç olsa da, bu lezzetin sonuçları makine öğrenmesinde çok yaygın olarak kullanılıyor (ve sizi başkalarına işaret edebilirim).

İşte Cybenko'nun sonucunun neden olması gerektiğinin üst düzey bir özeti.

  • Kompakt bir sette kesintisiz bir fonksiyon, parça parça sabit bir fonksiyonla yaklaşık olarak hesaplanabilir.
  • Parçalı bir sabit fonksiyon, aşağıdaki gibi bir sinir ağı olarak gösterilebilir. Fonksiyonun sabit olduğu her bölge için, o bölge için gösterge fonksiyonu olarak bir sinir ağı kullanın. Ardından, giriş doğrusal kombinasyonu tüm göstergelerin toplamı olan tek bir düğüme sahip son bir katman oluşturun, orijinal parçalı sabit fonksiyondaki karşılık gelen bölgenin sabit değerine eşit bir ağırlıkla.

Yukarıdaki birinci noktaya gelince, bu "kompakt bir set üzerinde sürekli bir fonksiyonun düzgün bir şekilde sürekli olduğu" ifadesi olarak alınabilir. Bunun bizim için anlamı, sürekli işlevinizi ve bazı hedef hata , daha sonra skalasında (sonuna kadar) kabaca altküpeler), böylece her alt küp üzerinde sabit olan bir fonksiyon hedef fonksiyonun ϵ içindedir .[0,1]dε>0[0,1]dτ>0(1/τ)dε

Şimdi, bir sinir ağı tam olarak bir göstergeyi temsil edemez, ama çok yaklaşabilirsiniz. "Transfer fonksiyonu" nın bir sigmoid olduğunu varsayalım. (Aktarım işlevi, sinir ağı düğümünün değerini elde etmek için girdilerin doğrusal bir kombinasyonuna uyguladığınız sürekli bir işlevdir.) Ardından ağırlıkları büyük hale getirerek, daha fazla giriş için 0'a yakın veya 1'e yakın bir şey çıktırabilirsiniz. Bu, Cybenko'nun gelişimi ile tutarlıdır: limitte 0 veya 1'e eşit fonksiyonlara ihtiyacı olduğunu fark edin: limit tanımı gereği, tam olarak söylediklerimi elde edersiniz, yani şeyleri keyfi olarak 0 veya 1'e yaklaştırırsınız.

(Son katmandaki aktarım işlevini görmezden geldim; eğer orada ve sürekli ise, o zaman sabit ağırlıkları aktarıma göre o sabitin ters görüntüsündeki bir şeyle değiştirerek herhangi bir eşlemeyi ayarlayabiliriz. işlev.)[0,1]

Yukarıdakilerin birkaç katman aldığına dikkat edin: göstergeleri küpler üzerine inşa etmek için 2 ve ardından son çıkış katmanı. Cybenko iki genel nokta için çalışıyordu: en az sayıda gizli katman ve transfer fonksiyonu seçiminde esneklik. Transfer fonksiyonunda esnekliği nasıl çözdüğünü zaten açıkladım.

Minimum katman sayısını elde etmek için, yukarıdaki yapıdan kaçınır ve bunun yerine bir çelişki geliştirmek için fonksiyonel analiz kullanır. İşte argümanın bir kroki.

  • Son düğüm, altındaki katmanın elemanlarının doğrusal bir kombinasyonunu hesaplar ve ona bir transfer işlevi uygular. Bu lineer kombinasyon, fonksiyonların lineer bir kombinasyonudur ve bu nedenle, kendisinin bir fonksiyon, gizli katmandaki olası düğümler tarafından yayılan bazı fonksiyonların alt alanı içindeki bir fonksiyondur.

  • İşlevlerin bir alt alanı, sıradan bir sonlu boyutlu alt boşluk gibidir; temel fark, potansiyel olarak kapalı bir küme değildir; Bu yüzden cybenko'nun tüm argümanları bu alt uzayı kapatıyor. Bu kapatmanın tüm sürekli işlevleri içerdiğini kanıtlamaya çalışıyoruz; Bu, tüm sürekli fonksiyonlara keyfi olarak yakın olduğumuz anlamına gelecektir.

  • İşlev alanı basit olsaydı (bir Hilbert boşluğu), şu şekilde tartışabilirdik. Tersine alt uzayda yatmaması gereken bazı hedef sürekli işlevi seçin ve alt uzayın ortogonal tamamlayıcısı üzerine yansıtın. Bu kalıntı sıfır olmamalıdır. Ancak, alt alanımız yukarıdaki küçük küpler gibi şeyleri temsil edebileceğinden, bu kalıntının bir bölgesini bulabilir, ona küçük bir küp sığdırabiliriz (yukarıdaki gibi) ve böylece hedef fonksiyonumuza daha da yaklaşabiliriz. Projeksiyonlar minimal elementleri seçtiği için bu bir çelişkidir. (Not, burada bir şey bırakıyorum: Cybenko'nun argümanı küçük küpler yapmaz, bunu genel olarak da ele alır; Riesz temsil teoreminin bir formunu kullandığı ve transfer fonksiyonlarının özelliklerini (hatırlarsam) doğru, bu adım için ayrı bir lemma var,

  • Bir Hilbert uzayında değiliz, ancak yukarıdaki projeksiyon adımını değiştirmek için Hahn-Banach teoremini kullanabiliriz (not edin, Hahn-Banach'ın tercih edilen aksiyomu kullandığını kanıtlayın).

Şimdi Kolmogorov'un sonucu hakkında birkaç şey söylemek istiyorum. Bu sonuç, görünüşte Cybenko'nun geçmişine dayanmak zorunda olmasa da, şahsen bunun çok daha korkutucu olduğunu düşünüyorum.

İşte nedeni bu. Cybenko'nun sonucu yaklaşık bir garantidir : bir şeyi tam olarak temsil edebileceğimizi söylemez. Öte yandan, Kolmogorov'un sonucu eşitlik sağlıyor . Daha saçma, net büyüklüğünü söylüyor: sadece düğümlere ihtiyacınız var. Bu güçlenmeyi başarmak için yukarıda bahsettiğim bir şüphesiz var: ağ, tüm transfer fonksiyonlarının aynı olmadığı anlamına gelir.O(d2)

Tamam, peki bütün bunlarla, bu şey nasıl mümkün olabilir ?!

Yukarıdaki küplerimize geri dönelim. Hassas bir seviyede pişirmemiz gerektiğine dikkat edin: Her için geri dönüp daha rafine τ > 0 seçmeliyiz . Göstergelerin (sonlu) doğrusal kombinasyonları ile çalıştığımızdan hiçbir zaman hiçbir şeyi temsil etmiyoruz. (sigmoidlerin yaklaşık etkilerini eklerseniz işler daha da kötüye gider.)ε>0τ>0

Öyleyse çözüm nedir? Peki, tüm ölçekleri aynı anda ele almaya ne dersiniz? Bunu telafi etmiyorum: Kolmogorov'un kanıtı gizli katmanı bir fraktal seti olarak etkili bir şekilde yapılandırmaktır. Sözü edilen başka bir yolla, temelde ila [ 0 , 1 ] d eşleştiren boşluk doldurma eğrileridir ; bu şekilde, tek değişkenli fonksiyonların bir kombinasyonuna sahip olmamıza rağmen, çok değişkenli herhangi bir fonksiyona uyabiliriz. Aslında, olabildiğince sezgisel olarak bu nedenle Ç ( d 2 ) bir saçma sayma bağımsız değişken ile "doğru": Biz sürekli bir fonksiyonu yazarken R d ile R[0,1][0,1]dO(d2)R,dR,tek değişkenli sürekli fonksiyonlar sayesinde ve bu nedenle tüm koordinatlar arası etkileşimleri yakalamak için fonksiyonlarına ihtiyacımız var ...O(d2)

Cybenko'nun sonucunun, yalnızca bir transfer fonksiyonu kullanması nedeniyle, makine öğrenmesiyle daha alakalı olduğunu unutmayın. Bu tür teoremler makine öğreniminde çok yaygındır (vzn, cevabında bunu önerdi, ancak özel transfer fonksiyonları nedeniyle daha az uygulanabilir olan Kolmogorov'un sonucuna atıfta bulundu; diğer yazarlar), ancak bunlar hala fraktallar ve en az iki transfer işlevi içermektedir).

İlgileniyorsanız (ben yukarıdakilerden daha az rastgele bir şekilde daha az, ve bazı resimler var; bunları Hahn-Banach ile ustalık etmeden önce yazdım) yazdırabileceğim bu konularda bazı slaytlarım var. Bence her iki kanıt da çok, çok iyi. (Ayrıca, bu konularla ilgili başka bir cevabım var ama Kolmogorov'un sonucunu öğrenmeden önce yazdım.)


1
ABϕfA:ϕ(f)1gB:ϕ(g)>1
Sasho Nikolov

3
SfSLL(g)=0gSL(f)=fL(f)Bazı imzalı önlemlere ilişkin bir entegral olarak. Ancak bu, Cybenko'nun transfer fonksiyonlarındaki koşullarından dolayı kanıtı tamamlıyor (bir sonraki yorumda devam edildi).
matus

3
@SashoNikolov, Cybenko'nun koşulu, tamamen sıfır olmayan herhangi bir imzalı önlem verildiğinde, bazı affine işlevi vardır, bu nedenle bu affine işleviyle oluşturulan transfer işlevinin entegrasyonu sıfıra eşit olmaz. Daha sonra, sigmoidleri genelleştiren lemmayı (yukarıda verdiğim gibi: sol ve sağdaki 0 ​​ve 1 limitleri) tasarıya uygun olduğunu kanıtlaması gerekir. (sonraki yoruma devam.)
matus

2
@SashoNikolov. Yukarıda "artık boyunca bir küp atma" dedim. Bu, işimizi biraz daha kolaylaştıracak, imzalı ölçü tam olarak sıfır olmadığından, sadece küçük bir parça seçip bir gösterge alacağız. Davasında, biraz çalışması gerekiyor, ancak benzer şekilde, afinite işlevi ile sigmoid etrafında hareket etmekle kaynaşıyor, böylece kolay bir bölge bulabiliyor, böylece Hahn-Banach'a (sıfır alanımızın karşısına sıfır olan) sıfır olan integral alıyor. ; Hilbert anlamında, artıklarımızı küçülttük, bir çelişki.
matus,

1
Vay, bu çok hoş bir cevap. Doğal olarak, eğer cevap vermeyi düşünmüyorsanız birkaç sorum olacak. Cybenko'nun sonucu (dediğiniz gibi) uygulamalar için çok faydalı görünüyor, ancak fonksiyonların alt alanlarıyla ilgili biraz kaybediyorum. Olası düğümlerin doğrusal kombinasyonlarının alt uzayının ortogonal tamamlayıcısına keyfi bir sürekli işlevi nasıl yansıtırız. Bu konuda, bu alt uzayın ortogonal iltifatını nasıl kavramsallaştırıyoruz? Uzayda yakın olan işlevler birbirine daha yakın mı? (Devam etti).
Matt Munson

3

Kolmogorov teoremi [1] olarak bilinen, makine öğrenmenin anahtarı olan ileri bir sonuç var; Neden işe yaradığının sezgisel bir taslağını hiç görmedim. Bu, ona yaklaşan farklı kültürlerle ilgili olabilir. Uygulanan öğrenme kalabalığı, Kolmogorov teoremini, yalnızca NN'lerin var olabileceğine işaret eden bir varlık teoremi olarak görür, bu nedenle en azından yapı aşırı sınırlayıcı değildir, ancak teorem bu NN'lerin bulunabileceğini garanti etmemektedir. Matematikçiler teorinin düşük seviyeli uygulamalarıyla pek ilgilenmezler.

Teorem ayrıca, Perceptron'ların (Minsky / Papert) öğrenemeyeceği temel fonksiyonların (yani doğrusal olmayan) bir eleştirisine karşı koymak için çok katmanlı NN'lerin içsel karmaşıklığını çağırmak / savunmak için de kullanılmıştır .

Teorik bilgisayar bilimcileri, NN'leri "yaklaşımlar" olarak görmemeyi tercih ediyorlar çünkü o terimin özel / farklı bir anlamı var. Parça parça doğrusal enterpolasyon ile muhtemelen bazı kaba benzetme var ama yine de ortaya koyulduğunu görmedim.

[1] Kolmogorov, AN (1957). Bir değişkenin sürekli fonksiyonlarının üst üste bindirilmesi ve eklenmesi ile birçok değişkenin sürekli fonksiyonlarının gösterimi Doklady Akademii Nauk SSSR, 144,679-681; Amerikan Matematik Derneği Çevirisi, 28, 55-59 [1963]

[2] 2.3 Sürekli Fonksiyonlar İçin İleri Beslemeli Sinir Ağlarının Yaklaşım Yetenekleri

[3] Kolmogorov teoremi ve çok katmanlı sinir ağları Kurkova



“bu gelişmiş sonuç […] neden işe yaradığına dair sezgisel bir taslak görmedi.” Böyle bir eskiz, ileri matematik kalabalığındaki bir kişi için dikkate değer bir girişim olabilir mi? İleri matematik öğrencileri neden işe yaradığını sezgisel olarak anlıyorlar mı? Bu teoremin sezgisel bir şekilde anlaşılması, uygulamalı öğrenme kalabalığının, YSA'lar için üstün topolojiler ve öğrenme algoritmaları geliştirmeleri için şiddetle arzu etmesi gereken bir şey gibi görünüyor.
Matt Munson

7
Dilbilgisi, imla, noktalama ve büyük harf kullanımı için düzenlenmiştir.
Jeffε
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.