Kendi topolojilerini oluşturan modern sinir ağları


21

Standart sinir ağı algoritmalarının (backprop gibi) sınırlamaları, kaç tane gizli katman ve katman başına nöron istediğiniz bir tasarım kararı vermeniz gerektiğidir. Genellikle, öğrenme oranı ve genelleme bu seçimlere karşı oldukça hassastır. Bunun nedeni, kaskad korelasyonu gibi sinir ağı algoritmalarının ilgi uyandırmasının nedeni olmuştur. Minimal bir topoloji ile başlar (sadece giriş ve çıkış birimi) ve öğrenme ilerledikçe yeni gizli birimleri işe alır.

CC-NN algoritması 1990'da Fahlman tarafından ve 1991'de tekrarlanan versiyonuyla tanıtıldı. Minimal bir topoloji ile başlayan daha yeni (1992 sonrası) sinir ağı algoritmaları nelerdir?


İlgili sorular

CogSci.SE: Biyolojik olarak mantıklı nörojenez hesaplarına sahip sinir ağları


Rastgele projeksiyon tabanlı sinir ağları ile deneme yapmak mümkündür. Blog girişi Kodu (github)
Sean O'Connor

Yanıtlar:


10

Buradaki açık soru, bir sinir ağının veya makine öğrenim modelinin topolojisini / yapısını nasıl belirleyebildiğinizdir; böylece model "doğru boyutta" olur ve fazla donuk / donuk değil.

1990’daki art arda gelen korelasyondan bu yana, bunu yapmak için bir çok metot mevcuttu, birçoğu çok daha iyi istatistiksel veya hesaplama özelliklerine sahip:

  • artırma: her seferinde zayıf öğrenciyi eğitin; her zayıf öğrenciye, yeniden öğrenilmiş bir eğitim seti verildi, böylece eski öğrencilerin öğrenemediği şeyleri öğrendi.
  • Kement veya otomatik alaka düzeyi tespiti gibi normalleşmeyi teşvik eden seyreklik: büyük bir model / ağ ile başlayın ve gereksiz birimleri "kapalı" olmalarını sağlayan ve aktif olanları bırakarak teşvik eden bir düzenleyici kullanın.
  • Bayes parametrik olmayan: "doğru" model boyutunu bulmaya çalışmayı unut. Sadece büyük bir model kullanın ve Bayesian'ı düzenli hale getirmeye / olmaya özen gösterin; Örneğin, sonsuz sayıda birime ve Gaussian öncüllerine sahip bir sinir ağı, eğitilmesi çok daha kolay olan bir Gauss süreci olarak türetilebilir.
  • Derin öğrenme: Başka bir cevapta belirtildiği gibi, her seferinde bir katman derin bir ağ eğitin. Bu aslında katman başına birim sayısını belirleme problemini çözmez - genellikle bu hala elle veya çapraz doğrulama ile belirlenir.


4

Günümüzde sanatın zirvesini anladığım kadarıyla "Denetimsiz Özellik Öğrenme ve Derin Öğrenme". kısaca: ağ her seferinde bir katman denetlenmemiş bir şekilde eğitiliyor:


minimal sayıda nöronla mı başlar (sadece girdi ve çıktı)?
Artem Kaznatcheev

derin öğrenme, çoklu gizli katmanlara sahip sinir ağları için çok çeşitli yöntemler içerir. Ben nöronların sayısını belirler böyle bir yöntemleriyle aşina değilim, ama belki google bilgini ... fazla bilen
Ran

Afaik, tüm rekabetçi mevcut yöntemlerde önceden belirlenir. Bu biraz problemli çünkü bu çok fazla hiper parametresi olduğu anlamına geliyor. Bununla başa çıkmak için, James Bergstra kısa süre önce en iyi hiper paramter ayarlarını bulmak için Gauss İşlemlerinin kullanılmasını önerdi: 9http: //people.fas.harvard.edu/~bergstra/files/pub/11_nips_hyperopt.pdf). Ancak bu, birçok farklı ayarı akıllıca deneyen bir tür "dış döngü" dür.
Andreas Mueller,

4

Zaten NEAT'tan (Artan Topolojilerle Sinirsel Evrim) söz edildi. Türleşme ve HyperNEAT dahil olmak üzere bununla ilgili gelişmeler var. HyperNEAT, tamamen bağlı bir fenotipin ağırlığını optimize etmek için bir 'meta' ağı kullanır. Bu, görüntü tanıma ve masa oyunu tipi problemlerinde paha biçilemez olan bir ağ 'mekansal farkındalık' verir. Siz de 2B ile sınırlı değilsiniz. Sinyal analizi için 1D'de kullanıyorum ve 2D yukarı doğru mümkün ancak işlem zorunluluğu artıyor. Ken Stanley'nin makalelerini araştırın ve Yahoo'da bir grup var. Bir ağda izlenebilir bir probleminiz varsa, NEAT ve / veya HyperNEAT iyi uygulanabilir.


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.