"Somut" bir girdinin Ulusal Meclis çalışmalarına katkısı pratik olarak nasıl değerlendirilir? - sayfa 2

 
nikelodeon :

sürpriz ne???


Her şeyden önce, uzun süredir devam eden bir hatayı hemen keşfettim)

İkincisi, girdileri kaldırarak girdinin bilgilendiriciliğini azaltacağımı, böylece bir bütün olarak NN'nin etkinliğini azaltacağımı düşündüm. Bazı girdiler çok, bazıları biraz bozulur. Ve belki de kaldırılması hiçbir şeyi etkilemeyen bu tür girdileri bulacağım ve ağı basitleştirmek için onları atacağım. Tabii ki, "aptallar" buldum, NN'nin yetersiz kaldığı girdileri buldum, ancak NN'nin sonucunu bir bütün olarak arttırdığım girdileri çıkararak da buldum. Bu benim için bir sürpriz, ya eğitim cehenneme ya da girdi çok çelişkili ve sadece zararlı.

Genel olarak, birkaç gün boyunca düşünce için yiyecek aldım.

 
Figar0 :


Her şeyden önce, uzun süredir devam eden bir hatayı hemen keşfettim)

İkincisi, girdileri kaldırarak girdinin bilgilendiriciliğini azaltacağımı, böylece bir bütün olarak NN'nin etkinliğini azaltacağımı düşündüm. Bazı girdiler çok, bazıları biraz bozulur. Ve belki de kaldırılması hiçbir şeyi etkilemeyen bu tür girdileri bulacağım ve ağı basitleştirmek için onları atacağım. Tabii ki, "aptallar" buldum, NN'nin yetersiz kaldığı girdileri buldum, ancak NN'nin sonucunu bir bütün olarak arttırdığım girdileri çıkararak da buldum. Bu benim için bir sürpriz, ya eğitim cehenneme ya da girdi çok çelişkili ve sadece zararlı.

Genel olarak, birkaç gün boyunca düşünce için yiyecek aldım.


bir sonraki eğitim sırasında (farklı bir örnek üzerinde) ihtiyaç duyulacakları ortaya çıkabilir ...
 
Figar0 :

Tam olarak Cuma değil, ama...

Bir NS var, herhangi biri, A={A1, A2, .... A20} girişi var. NN'yi eğitiyoruz ve tatmin edici bir sonuç alıyoruz. A1, A2, ... A20 girdisinin her bir elemanının bu sonuca katkısını pratik olarak nasıl değerlendiririz?

Aklıma gelen seçenekler:

1) Bir şekilde ağdan geçtiği elemanın tüm ağırlıklarını toplayın ve hesaplayın. Bunun nasıl yapılacağı tamamen açık değil, kendinizi ağın işleyişine sokmanız, bir yerde bir şekilde bazı katsayıları hesaplamanız vb.

2) Bir şekilde "sıfırlamaya" çalışın veya örneğin giriş vektörünün öğesini çevirin ve nihai sonucu nasıl etkilediğini görün. O durana kadar.

Ancak bu ikinci seçeneği uygulamadan önce danışmaya karar verdim. Belki birileri bu konu hakkında benden daha uzun düşündü? Kitapçık önerebilecek olan var mı?

Yaygın ve etkili yöntemlerden biri eğitim sonrası NN ağırlıklarının analizidir. Ağırlıklar, değerleri sıfırdan çok farklı olmayacak şekilde başlatılır, örneğin ortalama 0, standart sapma 0.1. Eğitimden sonra, anlamlı olmayan girdilerle ilgili ağırlıklar sıfıra yakın olacak, anlamlı girdilerin ağırlıkları sıfırdan çok farklı olacaktır. Test edildi - sentetik veriler üzerinde çalışıyor.
 
LeoV :

Her girdinin etki derecesini gerçekçi bir şekilde değerlendirmek neredeyse imkansızdır. Her türlü matematiksel formül vardır, özel programlarda etki derecesi otomatik olarak hesaplanabilir. Ancak tüm bu hesaplamalar yalnızca belirli bir koşullu değerdir ve büyük bir hata taşıyabileceğinden gerçekten çok az şey ifade eder.


Evet, aslında bunun farkındayım, aynı istatistikteki girdileri analiz etmek daha mantıklı olur ama bunun nedeni, temelde çalışan bir sistemi oraya aktarmak için büyük işçilik maliyetleri. Bu tür deneylerin yorumlanmasındaki belirsizliği de anlıyorum. Ama bir faydası var ve bu kesin.

 
Vizard :

bir sonraki eğitim sırasında (farklı bir örnek üzerinde) ihtiyaç duyulacakları ortaya çıkabilir ...
Muhtemelen öyle, ama bir sinir ağı var, eğitilmiş, çalışıyor, bu da atılan girdiler olmadan yapabileceği anlamına geliyor ve ağı basitleştirmeyi, genelleştirme yeteneğini geliştirmeyi ve eğitim kalitesini daha düşük bir seviyede iyileştirmeyi reddetmek mantıklı geliyor. maliyet.
 
Figar0 :
Muhtemelen öyle, ama bir sinir ağı var, eğitilmiş, çalışıyor, bu da atılan girdiler olmadan yapabileceği anlamına geliyor ve ağı basitleştirmeyi, genelleştirme yeteneğini geliştirmeyi ve eğitim kalitesini daha düşük bir seviyede iyileştirmeyi reddetmek mantıklı geliyor. maliyet.
+100500. Kabul ediyorum. Ağ onlar olmadan bozulmuyorsa neden ekstra girdiler? Ondan kesin olarak kurtulmak gerekiyor.
 
alexeymosc :
Yaygın ve etkili yöntemlerden biri eğitim sonrası NN ağırlıklarının analizidir. Ağırlıklar, değerleri sıfırdan çok farklı olmayacak şekilde başlatılır, örneğin ortalama 0, standart sapma 0.1. Eğitimden sonra, anlamlı olmayan girdilerle ilgili ağırlıklar sıfıra yakın olacak, anlamlı girdilerin ağırlıkları sıfırdan çok farklı olacaktır. Test edildi - sentetik veriler üzerinde çalışır.


Prensip olarak bu aklıma gelen ilk şey, ancak böyle bir analizi sistemimde nasıl daha kolay uygulayacağımı çözemedim. Bu yüzden ters yöne gittim.

 
Leonid'in yazdıklarına dikkat edin, o çok haklı. Girdilerin ağın çıktısı üzerindeki etkisini bulmak, çözülemez bir iştir. Evet, gereksiz olanları ayıklamak mümkün, katılıyorum, AMA Bir veya başka bir girdinin çıktı üzerindeki etkisinin derecesini belirlemek pratik olarak imkansızdır.

Şimdi durumu hayal edin. Ağın bir forward ile birleşmesine izin vermeyen 2 giriş buldunuz. Ağ performansını büyük ölçüde artıran üçüncü bir girdi eklersiniz. Ne sonuca varacaksınız? Bu girdinin ağın çıktısı üzerinde yüksek bir etkisi olduğunu. Ama aslında, üçüncü giriş, kısa vadeli bir tedirginlik yaratacak ve o zaman bile tüm ticaret dönemi boyunca birkaç kez. Ancak belirleyici olacak olan tam da bu öfkedir. Gerçi öfke gerçeği önemsiz olacak. İlk iki girdiden birini kaldırmanın yanı sıra, tatmin edici bir sonuç elde edemezsiniz. Çalışmaları bu yönde yönlendirmek başka bir konudur.

Ağı eğitirken, fonksiyonun yerel minimumları aranır. Bunun yerine, arama hatanın global minimumu içindir, FAKAT yerelden globale geçiş yoluyla.

Nadiren değil ve hatta sıklıkla, gelecekte bir fonksiyonun yerel minimumunun basitçe ideal sonuçlar gösterdiği şekilde karşılaştım.

Görev basittir, eğitim sırasında ağın gelecekte kazanacak yerel minimumlara sahip olmasını sağlayacak ağın bu tür girdilerini (daha sonra değiştirmeniz gerekmez) seçmek basittir.

Diyelim ki eğitim sırasında ortalama 10-20 yerel minimumunuz var ve bunlardan en az biri doğru. Ancak mümkün olduğunca çok sayıda karlı yerel minimum olacak şekilde seçmek daha iyidir ......

Bu sorunu nasıl buldunuz????? Daha çok gerçek gibi...
 
nikelodeon :
Leonid'in yazdıklarına dikkat edin, o çok haklı. Girdilerin ağın çıktısı üzerindeki etkisini bulmak, çözülemez bir iştir. Evet, gereksiz olanları ayıklamak mümkün, katılıyorum, AMA Bir veya başka bir girdinin çıktı üzerindeki etkisinin derecesini belirlemek pratik olarak imkansızdır.

Şimdi durumu hayal edin. Ağın bir forward ile birleşmesine izin vermeyen 2 giriş buldunuz. Ağ performansını büyük ölçüde artıran üçüncü bir girdi eklersiniz. Ne sonuca varacaksınız? Bu girdinin ağın çıktısı üzerinde yüksek bir etkisi olduğunu. Ama aslında, üçüncü giriş, kısa vadeli bir tedirginlik yaratacak ve o zaman bile tüm ticaret dönemi boyunca birkaç kez. Ancak belirleyici olacak olan tam da bu öfkedir. Gerçi öfke gerçeği önemsiz olacak. İlk iki girdiden birini kaldırmanın yanı sıra, tatmin edici bir sonuç elde edemezsiniz. Çalışmaları bu yönde yönlendirmek başka bir konudur.

Bu da doğrudur. Bir de tam tersi durum var: Teorik olarak yüksek bilgi içerikli iki girdi ve düşük bilgi içerikli bir girdi olması mümkündür. Mantıksal olarak, üçüncüyü kaldırmak istiyorum, ancak onu kaldırırsak, karmaşık dörtlü ilişki (üç girdi - çıktı) çökecek ve kalan iki girdi artık o kadar bilgilendirici olmayacak. Ve bu karmaşık ilişkileri tanımlamak için, böyle bir uzay matematiksel aparatı kullanmanız ve teknik olarak resmileştirmeniz gerekir, ki bu hoo (en azından benim için). Zor, kolay olduğunu düşünme. NN, %80 deneysel aramadır.
 
nikelodeon :

Şimdi durumu hayal edin. Ağın bir forward ile birleşmesine izin vermeyen 2 giriş buldunuz. Ağ performansını büyük ölçüde artıran üçüncü bir girdi eklersiniz. Ne sonuca varacaksınız? Bu girdinin ağın çıktısı üzerinde yüksek bir etkisi olduğunu. Ama aslında, üçüncü giriş, kısa vadeli bir tedirginlik yaratacak ve o zaman bile tüm ticaret dönemi boyunca birkaç kez. Ancak belirleyici olacak olan tam da bu öfkedir. Gerçi öfke gerçeği önemsiz olacak. İlk iki girdiden birini kaldırmanın yanı sıra, tatmin edici bir sonuç elde edemezsiniz. Çalışmaları bu yönde yönlendirmek başka bir konudur.

Girdilerin birbirine bağlı olduğu açıktır ve bu tür deneylerin sonuçlarının yorumlanması en önemli husustur. Girdileri birer birer değil, aynı zamanda bir girdi daha eklemenize benzer şekilde 1-5 arasındaki çeşitli kombinasyonlarını da hariç tutuyorum (sanırım bu aralığı tüm girdilerin yarısına kadar genişleteceğim) ve değişikliklere bakın. NN'nin hem eğitim aşamasında hem de ilerideki yanıtı.

nikelodeon :

Ağı eğitirken, fonksiyonun yerel minimumları aranır. Bunun yerine, arama hatanın global minimumu içindir, FAKAT yerelden globale geçiş yoluyla.

Nadiren değil ve hatta sıklıkla, gelecekte bir fonksiyonun yerel minimumunun basitçe ideal sonuçlar gösterdiği şekilde karşılaştım.

Görev basittir, eğitim sırasında ağın gelecekte kazanacağı yerel minimumlara sahip olmasını sağlayacak bu tür ağ girdilerini seçmek (daha sonra değiştirmeniz gerekmez).

Diyelim ki eğitim sırasında ortalama 10-20 yerel minimumunuz var ve bunlardan en az biri doğru. Ancak mümkün olduğunca çok sayıda karlı yerel minimum olacak şekilde seçmek daha iyidir ......

Bu sorunu nasıl buldunuz????? Daha çok gerçek gibi...

Gerçekler herkes için farklıdır) Özellikle minimum hata aramıyorum, maksimum kar, minimum dezavantaj, beni tatmin eden bir PF arıyorum vb. Yani, özü değiştirmese de, yerel maksimuma sahibim. Ve en azından önerdiğin problem, ama benim için uzun zamandır çözüldü ...