Makale: Sinir Ağlarını Kullanarak Fiyat Tahmini - sayfa 14

 
Nötron , girdi sayısının artmasıyla yumuşatma etkisi doğaldır. Ancak gecikme, hem bu girdilerin eksikliği hem de ağın olası kusuru, belki de yetersiz eğitim gibi birçok faktör tarafından belirlenebilir. Başka bir soru, yukarıdaki kriterlerdeki tüm "+" ile bunun bir gecikme yaratıp yaratmadığıdır.
 
Neutron :

Bu, iki NN'nin tahmin yeteneğinin test edilmesinin sonuçlarını sunar.


Şek. kırmızı, orijinal zaman serisini (VR) gösterir, mavi - doğrusal tek katmanlı bir ağın 1 bar ilerisi için tahmin, yeşil - doğrusal olmayan iki katmanlı. Daldırma derinliği her iki durumda da aynıdır. Bu yapay durum için, VR'nin trend bölümünde tahmin verilerinin gözle görülür bir şekilde tutulduğu görülebilir. Merak ediyorum, deneyimli meslektaşlarımın bu etkiye sahip olup olmadığını ve eğer öyleyse, bunun neyle ilgisi olabilir?

Ağınız bir şekilde garip davranıyor - trend bölümünde, aynı girdi veri setleri veriliyor ve onlar için farklı tahminler veriyor (grafikte kesik bir çizgi çıkıyor, ancak düz olması gerekiyor). Bu bağlamda, sorular:

1) Ağların ara katmanlarında kaç nöron vardır?

2) kaç girdi?

3) girdilere ne beslenir?


Trenddeki tahminlerin gecikmesi ile ilgili. Bu böyle olmalıydı. 0,1 art arda büyüyen değerlerin 0,1 artış oluşturduğu ağa yaklaşık 30 eğitim vektörü gönderdiniz ve art arda büyüyen aynı değerlerin 3 düştüğü 1 vektör gönderdiniz. tutarsız veriler üzerinde ağ. Yani o 31 çelişkili tahmininizin ortalamasını aldı...


Ayrıca 2 katmanlı bir NS kurdum. 3 giriş ve 3 ara nöron ile. Girişe değer artışları uygulandı. Karşılaştırma için, bir kez bu ağı tüm verileri kullanarak eğittim ve ikinci kez aykırı değerleri eğitimden çıkardım - yani. girdilerde çok büyük değerler içeren tüm eğitim vektörleri, yani. 3 ile aynı keskin çöküş. Fark açıktır:

 
rip :
slava1 :
Kimin neyi anladığını veya anlamadığını uzun süre tartışabilirsiniz. Görüşme veri hazırlama hakkındaydı. Burada kimsenin bu konuyu tartışmak istemediğini anlıyorum. Çok yazık

NN eğitimi için nasıl veri hazırlanacağına dair bir ders okursanız, bunun bu forumda yapılmaması gerektiğini düşünüyorum, burada kimsenin pek ilgisini çekmeyecek.

iyi, boşuna öylesin! Uygulayıcıların deneyimlerini, bunu nasıl yaptıklarını okumanın ilginç olacağını düşünüyorum.

 
ds2 :

Ağınız bir şekilde garip davranıyor - trend bölümünde, aynı girdi veri setleri veriliyor ve onlar için farklı tahminler veriyor (grafikte kesik bir çizgi çıkıyor, ancak düz olması gerekiyor). Bu bağlamda, sorular:

1) Ağların ara katmanlarında kaç nöron vardır?

2) kaç girdi?

3) girdilere ne beslenir?


Trenddeki tahminlerin gecikmesi ile ilgili. Bu böyle olmalıydı. 0,1 art arda büyüyen değerlerin 0,1 artış oluşturduğu ağa yaklaşık 30 eğitim vektörü gönderdiniz ve art arda büyüyen aynı değerlerin 3 düştüğü 1 vektör gönderdiniz. tutarsız veriler üzerinde ağ. Yani o 31 çelişkili tahmininizin ortalamasını aldı...


Ayrıca 2 katmanlı bir NS kurdum. 3 giriş ve 3 ara nöron ile. Girişe değer artışları uygulandı. Karşılaştırma için, bir kez bu ağı tüm verileri kullanarak eğittim ve ikinci kez aykırı değerleri eğitimden çıkardım - yani. girdilerde çok büyük değerler içeren tüm eğitim vektörleri, yani. 3 ile aynı keskin çöküş. Fark açıktır:

ds2 ve yanıt veren herkes, ilginiz ve iyi tavsiyeleriniz için çok teşekkür ederim - gerçekten yardımcı oldular. Gerçek şu ki, ağımdaki bir tahminin oluşturulmasını hızlandırmak için eğitim döngülerinin sayısını (sanırım buna Epochs denir) 100 kez ciddi şekilde sınırladım. Tabii ki bu yeterli değildi ve sonuç olarak ağ yetersiz eğitildi. Dönem sayısını 1000'e çıkardıktan sonra, her şey tam olarak yerine oturdu - tik-tik (neredeyse).

Ağım, gizli katman 2'deki nöronların sayısı ve d'nin NN girişinin boyutu olduğu d * 2 + 2 sinaps sayısı ile hiperbolik bir tanjant biçiminde doğrusal olmayan iki katmanlıdır. Şekilde gösterilen durum için d=2 var ve eğitim vektörlerinin sayısı 6'dır. Eğitim örneğindeki vektör sayısı sinaps sayısına eşittir, ağın yeniden eğitmediğini ve yaptığını görüyorum. Tahmini düzeltmeye çalışmayın, bu da fiyat artışlarını daha verimli bir şekilde izlemenize olanak tanır. Eğitim için, girdiye bir dizi değer artışı da gönderdim. Girdi verilerini hazırlamanın incelikli sanatından hala çok uzaktayım ("ikinci kez eğitimden dışlanan aykırı değerlerinizi kastediyorum"), ancak yakında bu bilgeliği anlamayı umuyorum.

İşte ilginç bir sonuç:


Bu, TEK girişli tek katmanlı doğrusal olmayan NN'nin her adımında yeniden eğitim ile bir adım önde olan bir tahmindir! ve eğitim örneği = her biri bir elemanlı 2 vektör.

olay yerinde öldüm...

Neron Ağları ve Yapay Zekanın basit değil, çok basit olduğu ortaya çıktı!

 
Neutron :
ds2 :

Ağınız bir şekilde garip davranıyor - trend bölümünde, aynı girdi veri setleri veriliyor ve onlar için farklı tahminler veriyor (grafikte kesik bir çizgi çıkıyor, ancak düz olması gerekiyor). Bu bağlamda, sorular:

1) Ağların ara katmanlarında kaç nöron vardır?

2) kaç girdi?

3) girdilere ne beslenir?


Trenddeki tahminlerin gecikmesi ile ilgili. Bu böyle olmalıydı. 0,1 art arda büyüyen değerlerin 0,1 artış oluşturduğu ağa yaklaşık 30 eğitim vektörü gönderdiniz ve art arda büyüyen aynı değerlerin 3 düştüğü 1 vektör gönderdiniz. tutarsız veriler üzerinde ağ. Yani o 31 çelişkili tahmininizin ortalamasını aldı...


Ayrıca 2 katmanlı bir NS kurdum. 3 giriş ve 3 ara nöron ile. Girişe değer artışları uygulandı. Karşılaştırma için, bir kez bu ağı tüm verileri kullanarak eğittim ve ikinci kez aykırı değerleri eğitimden çıkardım - yani. girdilerde çok büyük değerler içeren tüm eğitim vektörleri, yani. 3 ile aynı keskin çöküş. Fark açıktır:

ds2 ve yanıt veren herkes, ilginiz ve iyi tavsiyeleriniz için çok teşekkür ederim - gerçekten yardımcı oldular. Gerçek şu ki, ağımdaki bir tahminin oluşturulmasını hızlandırmak için eğitim döngülerinin sayısını (sanırım buna Epochs denir) ciddi şekilde 100 kez sınırladım. Tabii ki bu yeterli değildi ve sonuç olarak ağ yetersiz eğitildi. Dönem sayısını 1000'e çıkardıktan sonra, her şey tam olarak yerine oturdu - tik-tik (neredeyse).

Ağım, gizli katman 2'deki nöronların sayısı ve d'nin NN girişinin boyutu olduğu d * 2 + 2 sinaps sayısı ile hiperbolik bir tanjant biçiminde doğrusal olmayan iki katmanlıdır. Şekilde gösterilen durum için d=2 var ve eğitim vektörlerinin sayısı 6'dır. Eğitim örneğindeki vektör sayısı sinaps sayısına eşittir, ağın yeniden eğitmediğini ve yaptığını görüyorum. Tahmini düzeltmeye çalışmayın, bu da fiyat artışlarını daha verimli bir şekilde izlemenize olanak tanır. Eğitim için, girdiye bir dizi değer artışı da gönderdim. Girdi verilerini hazırlamanın incelikli sanatından hala çok uzaktayım ("ikinci kez eğitimden dışlanan aykırı değerlerinizi kastediyorum"), ancak yakında bu bilgeliği anlamayı umuyorum.

Örneği geliştirmek için, örneğin şu prensibe göre eğitim serisini genişletmeye çalışın:

serinin iki komşu değeri vardır - x1,x2 aralarına x1,2 = (x1+x2)/2 ekleyin


Bu yöntem, komşu değerlerin büyük korelasyonları olan zaman serilerinde iyi çalışır.

Bir alıntı akışı vakası, sadece bu...

 
Neutron :


İşte ilginç bir sonuç:


Bu, TEK girişli tek katmanlı doğrusal olmayan NN'nin her adımında yeniden eğitim ile bir adım önde olan bir tahmindir! ve eğitim örneği = her biri bir elemanlı 2 vektör.

olay yerinde öldüm...


Eğitim vektörlerinin oluşturulduğu ilk verileri içeren bir dosya yüklemenizi isteyebilir miyim?

 

Dosya formatının sizin tarafınızdan okunabilmesi için nasıl görünmesi gerekir. Gerçek şu ki, Ulusal Meclis'i kendim sıfırdan yazıyorum ve verileri ME için uygun bir formatta kullanıyorum.


Для улучшения выборки попробуйте расширить обучающий ряд, скажем по такому принципу:

serinin iki komşu değeri vardır - x1,x2 aralarına x1,2 = (x1+x2)/2 ekleyin

Bu yöntem, komşu değerlerin büyük korelasyonları ile zaman serilerinde iyi çalışır.

Bir alıntı akışı vakası, sadece bu...

Bu durum pozitif korelasyonlu seriler için uygundur. Fiyat VR, komşu okumalar arasında gözle görülür bir negatif korelasyona sahiptir ve sonuç olarak bu yöntem doğru olmayacaktır.

Ve ilerisi. Eh, forumun saygın üyeleri, tek katmanlı bir ceteris paribus ile ilgili olarak 2 katmanlı bir NS'nin daha büyük tahmin yeteneği lehine makul argümanlar ortaya koyarsa.

Bir seçenek olarak. Aşağıda, Şekil 2'de gösterilen bir test vektörü içeren bir zip arşivi bulunmaktadır. Uygun gördüğünüz gibi kendiniz kesin.

Dosyalar:
rnd.zip  1 kb
 
Neutron :

olay yerinde öldüm...

Neron Ağları ve Yapay Zekanın basit değil, çok basit olduğu ortaya çıktı!


Henüz NN'yi pratik olarak uygulamaya çalışmadım (son fikir bağlamında beni oraya taşıyor gibi görünse de), ancak insan bakış açısından, test vektörü çok basit bağımlılıklardan (iki veya üç parametre) ve çok kolay bir şekilde parça parça yaklaşılmalıdır. NS'nin tam olarak yaptığı şeyin bu olduğundan şüpheleniyorum. Hızlı yeniden yapılanma, sadece Millet Meclisi'nin basitliğinin bir sonucu olabilir, yani bu durumda kısa bir hafıza mutluluktur.

 

Genel olarak, Candid, sana katılıyorum, ancak daha derine inmek istiyorum ... Örneğin, NS'nin (gizli katmanlar) karmaşıklığı ne kadar haklı.

Ve sadece yap, beni taşıyor! Gerçek şu ki, NN'nin doğrusal olmayanlığını belirli bir biçimde temsil edersek, ağırlıklar için TAM analitik bir çözüm elde edebiliriz. Bu da, ağ eğitimi için Hatanın Geri Yayılımı yöntemini terk etmenin ve orada herhangi bir 1000 Dönemlik eğitim olmadan tek bir eylemde en doğru sonucu almanın mümkün olacağı anlamına gelir !!!


Not: Her nöronda sabit bir uyarma düzeyine sahip bir sinaps kullandığım konusunda sizi uyarmayı unuttum.


Postscript.

Taşınan-taşınan ve taşınan ;-)

Bu, tek katmanlı doğrusal olmayan bir NN'nin ağırlıkları için "TAM" analitik çözümdür:

Beni güldürdü.

Ancak tüm hesaplama 1 milisaniye sürer.
 

Acemi bir "sinir araştırmacısı" olarak bana böyle bir şeyi açıklayın ... anladığım kadarıyla, söz konusu ağ çok katmanlı bir algılayıcıdır.

Ve bu ağ türü hangi düşüncelerle seçildi, neden Hopfield, Kohonen veya başka bir ağ değil?