Bir mayın tarlasında pazar görgü kuralları veya görgü kuralları - sayfa 37

 

Yani, sanırım hatamın ne olduğunu anladım. Aslında, eğitim vektörünün uzunluğunun ağırlık sayısına eşit olduğu ortaya çıktı! Çünkü nöronun çıktısını eğitim vektörünün her bir örneği ile karşılaştırarak düzeltmeler biriktiriyorum ama sadece n+1 sen ile karşılaştırmam gerekiyor. yeni kod yazıyorum

Bu yüzden grafikler çok anormal.

 

İşte, bir göz atın:


Mavi - eğitim örneği, kırmızı - test. Teğet değerler şeklin sol üst köşesindedir.

Ağırlıkların ilk başlatılmasını tamamen kaldırmak zorunda kalmam garip. Ancak o zaman sonuçlar tekrarlanabilir hale geldi. Hala bazı sorular var, ama şimdi bitirdim... - :)

Liste yapışması. Üzgünüz, henüz yorum yok, ancak her şey son derece basit bir şekilde, bir dizi farklı işlev olmadan yapılır - teğetler ve en küçük kareler hariç her şey tek bir prosedürde.

Dosyalar:
neyrona.rar  132 kb
 

Benim için, bir öğrenme vektörünü numaralandırmak için çok karmaşık bir mantığınız var ...

Belki de hata, endekslerin banal karışıklığında veya tüm istatistik toplama prosedürü sırasında ağırlıkları yalnızca bir kez sıfırlamanız gerçeğindedir ( W [i] <-0):

Lütfen NN'nin girdisi olan D vektörünüzün bir dizi istatistikle ( i indeksi) yeniden hesaplanmadığını unutmayın. Belki yanılıyorum, çünkü bunu tam olarak anlamadım. Kodunuza sürekli numaralandırma eklemek benim için daha kolaydı ve olan buydu:

Şimdi, kızınız ağırlıkların başlangıçtaki rastgele dağılımını hissediyor ve yeterince öğreniyor (her iki çizgi de orijinden geçiyor). Kırmızı renk - eğitim örneği, mavi - sınav. Düzenlenen dosya aşağıda ektedir.

Dosyalar:
modif.zip  16 kb
 

Tanışmak...

Söylesene Sergey , neden iki katmanın (ve en başından beri bahsediyorsun) aktivasyon işlevi olmayan bir çıktı nöronu var? O zaman türev nasıl değişecek? Onlar. (inci için) (1-OUT^2)

ve (1-OUT) olur?

Not: Yardımın için teşekkürler

 

Aha! Sonunda bu şeyin nasıl çalıştığını anladım. Ama ne, tek girdiler yalnızca eğitim süresi için mi gerekli ve daha sonra diğerleri gibi veri için mi kullanılıyorlar?

Aklımda o bile yoktu! Ek olarak, girişlerin hepsi basit - hipertanjant yok. VR normal bir işlev olduğu için mi yoksa sadece örneğin mi?

Ve başka bir soru: eğer bir kız biraz eğitimsizse - ona sadece 5-7 dönem verin - o zaman her iki ÇUŞ'un teğetleri birden büyük olacaktır, bu kızın geleceğe baktığı anlamına mı geliyor (bahsetmiyorum). sinüs)?

 

Tek katmanlı bir NN için, çıktıyı doğrusal olmayan bir işlevle etkinleştirmenin, doğrusal bir çıktıya kıyasla hesaplama gücüne katkıda bulunmadığı titizlikle gösterilebilir (matematikçilerin çalışmalarına referanslar sağlar). Bu nedenle, doğrusal olmayan bir FA'ye sahip tek bir nöron anlamsızdır.

İki katmanlı bir NN için, çıkış nöronunun aktivasyonu hesaplama gücü eklemez (bu mimari zaten tüm olası mimarilerin maksimum veya eşit hesaplama gücüne sahiptir - 3, 4, vb.), bu nedenle aktivasyonu kullanmak mantıklıdır. bir hipertanjant tarafından çıktı nöronunun, çıktı daha fazla ise, doğru bir tahminin olasılığı olarak yorumlanacaktır.

Doğrusal bir çıktı durumunda, türev (1-OUT) değil, sadece 1'dir - bu, y(x)=1*x doğrusal fonksiyonunun türevidir.

Tek girdilere gelince, bunlar elbette hem eğitim hem de çalışma sırasında kullanılır. Tespit için aferin! Bu hatayı kaçırdım. Bir nöronu temsil etmenin doğru yolu aşağıdaki gibidir:

W[0] her zaman 1 tarafından beslenen ağırlıktır. Tek bir nöron durumunda, yanlılık kullanmanın etkisi çok belirgin değildir. Bu durumda da öğrenme sürecini hızlandırmada önemli bir rol oynayacağı bir durumu simüle etmek zor olmasa da.

если девушку слегка недообучить - ну дать её всего 5-7 эпох - то тангенсы обеих мнк будут больше единицы, не говорит ли это о том, что девушка заглядывает в будущее(я не об синусе)?

Hayır, bu sadece az miktarda istatistiksel materyalden ve yetersiz eğitimden bahsediyor. Kendiniz karar verin: Bir şeyi gerçekte olduğundan daha iyi bilemezsiniz. Bu sınırlayıcı durum tg()=1'e karşılık gelir ve 1'den büyük olması yalnızca veri dağılım istatistiklerine bağlı olabilir.

 
Neutron >> :

... matematikçilerin çalışmalarına bağlantılar sağlar


-:) Umarım ne kadar gereksiz olduğunu anlamışsınızdır... en azından benim durumumda.

Şimdi bu nöronla uğraşıyorum. Her şeyin kafamda düzgün bir şekilde oturması gerekiyor ve ben de kodu basit bloklara bölmek istiyorum ve yarın kız arkadaşım için başka bir katman oluşturmaya çalışacağım. Ama oldukça aptalca bir sorum var: Matkad'dan MQL'ye kodu yeniden yazdığınızda - ne olduğunu nasıl kontrol edersiniz? Doğrudan yeniden yazamazsınız - matcad genellikle farklı bir ortamdır ve orada bir program oluşturma mantığı MQL'deki ile aynı değildir.

 

Burada, elbette, bir pusu!

Örneğin, Ulusal Meclisin çalışmalarının kalitesinin ayrılmaz bir özelliği olarak eğim açısının tanjantını (gerçek girdiler durumunda) veya doğru tahmin edilen işaretlerin yüzdesini (ikili olanlar durumunda) çıkardım ve karşılaştırdım. Matkad'dakilerle. Doğru, şu ana kadar NS-ku'yu MKL standardına göre yeniden yazmanız gerekiyor, bu, sıfır sayısının son ve daha içe doğru olduğu zamandır (aksine matkad'da). Ek olarak, Wiener işleminde NN işleminin doğruluğunun kontrol edilmesi zorunludur, bu, VR'nin rastgele bir değişkenin entegre edilmesiyle elde edildiği zamandır. Burada kız arkadaşınızın sınavda bir demir ikili alması gerekir ve bu onun kopya çekmediğini gösterir, yani. eğim açısının tanjantı sıfıra ve deney sayısı 1/n olarak sonsuzluğa eğilimli olmalıdır.

İşte Wiener serisi jeneratör:

 

Vinilin üzerinde:


 

Bu yüzden, bir dakikalığına bir göz atacağım: “mucizenin” nedenini arayacağım son çizelgemden geriye hiçbir şey kalmadı - iFractals beni utanmadan aldattı. iFraktallerimi yazar yazmaz her şey hemen yerine oturdu, yani. mucize gitti :)

iyi şanslar meslektaşlarım