Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 90

 

Bu makalelerde açıklananlar da dahil olmak üzere, kendi kendine yazılan farklı doğrulama yöntemlerini denedim. Sonuçlarım:

Forex'te hedef değişken ile tahminciler arasında kesin bir ilişki yoktur, forex yeni verileri hesaplamak için bulunabilen ve uygulanabilen bir formül değildir. Modelin yapabileceği tek şey, bir model bulmak ve yeni veriler üzerinde işlem yapmak için sonuçları tahmin etmektir.
Yani, içinde birkaç noktanın (bilinen hedef değişkenler) bulunduğu belirli bir çok boyutlu alan (boyut tahmincilerin sayısına eşittir) vardır. Model, bu uzayda, uzaydaki noktaları ayıran bir hiperdüzlem oluşturur ("satın alma" sınıfı, "satış" sınıfından). Bu hiperdüzlemi oluşturmanın sonsuz sayıda yolu vardır (basit bir durumda, bir kağıda dört nokta çizin ve aralarında eğri bir çizgi çizin, böylece eğrinin sağında 2 ve solunda iki nokta olur. Bir eğri çizmenin sonsuz yolu olacaktır). Bu nedenle, oluşturulan modelin hedef değişkenin öngörücülere doğru bağımlılığını yansıttığının garantisi yoktur. Modelin yeterliliğini kontrol etmek için doğrulama kullanılır - bazı noktalar eğitim sırasında kullanılmamıştır ve üzerlerinde modelin başa çıkıp çıkmadığını, bu test noktalarında sonucu doğru bir şekilde gösterip göstermeyeceğini kolayca öğrenebilirsiniz.

Model doğrulamayı doğru bir şekilde geçemezse, bunun birçok nedeni olabilir, örneğin
- model, yalnızca eğitim örneklerinde bulunan var olmayan bazı bağımlılıklar buldu
- eğitim verilerinde, test verilerinde olmayan belirli bir bağımlılık vardı. Örneğin, test için tüm verilerin daha sonra alınması ve forex sembolünün davranışının değişmesi durumunda
- modelin kendisi başarısız bir tane ile başlatıldı. Aynı veriler üzerinde eğitilen bir modelin, doğrulama sırasında, onu tekrar eğitmek için birçok girişimde bulunarak farklı sonuçlar vermesi sıklıkla olur.

Belirli bir durumda kötü sonuca neyin sebep olduğu bilinmiyor. Değerlendirilebilecek tek şey, modelin ortalama olarak ne kadar iyi olduğudur - modeli düzinelerce kez oluşturun, doğrulamayı değerlendirin. Eğitim/doğrulama verilerinin her seferinde yeniden bölünmesi gerekir.
Güvenilir bir yol olarak düşündüğüm şey, verileri %50 / %50 oranında rastgele bölmek (zamana göre değil, ancak her şey eşit şekilde karışacak şekilde, örneğin eğitim için satır 1,2,5,7, 3,4) ,6, 8 doğrulama için), modeli ilk kısımda eğitin, ardından ikinci kısımda doğrulayın, modeli değerlendirmek için doğruluğu kullanırım. Bunu 50 kez tekrarlayın (verileri 2 rastgele parçaya bölün, eğitim, doğrulama). Ardından, eğitim verilerindeki ortalama doğruluğu ve doğrulama verilerindeki ortalamayı hesaplayın. Eğitim setindeki ortalama doğruluğun %90, doğrulama setinde - %80 olduğunu varsayalım. Ön testteki doğruluk daha da düşük olacaktır, ben şu temel kuralı kullanıyorum: farkı hesaplayın (%90-%80=%10) ve doğrulama sonucundan çıkarın (%80-%10 = %70). Ön testte böyle bir modelin yaklaşık% 70'lik bir ortalama doğruluğa sahip olacağı ortaya çıktı. Daha sonra, bu tahmini %70'ten artırmak için model parametrelerini ve tahmin edicileri genetik olarak seçiyorum (göründüğünden çok daha zor, %50'nin ötesine geçmek bile zor).

Ama bu sonucun sadece bir ortalama olması hoşuma gitmiyor, garantisi yok. Alım satım yaparken gerçek doğruluk ne kadar şanssız olduğuna bağlı olarak %60 ila %80, hatta %50 ila %90 arasında olacaktır. Ne kadar denesem de en iyi modeli yakalamak nedense işe yaramıyor. Muhtemelen tek çözüm, bulunan en iyi parametreler ve tahmin edicilerle düzinelerce model oluşturmak ve sonucu çoğunluğun göründüğü yerde (modeller kongresi) almaktır.

Bu, SanSanych'in konunun başında söyledikleriyle yakından ilgilidir. Onun tavsiyesi üzerine, son kontrol numunesi için bilinen verilerin son kısmını çıkarmak da mümkündür. Bu verileri eğitim ve doğrulama için kullanmayın, sadece model eğitiminin sonuna kadar ayrı olarak saklayın. Ardından, bu veriler üzerinde bitmiş modeli veya kongreyi kontrol edin. Bunun avantajı, modelin zaman içinde yeni verilerle nasıl başa çıktığını göstermesidir. Dezavantajı ise eğitim ve doğrulama için daha az veri kalması ve alım satımın başlangıcında modelin zaten biraz modası geçmiş olmasıdır. Burada küçük bir nüans var, eğer bu kontrol verilerindeki sonucu beğenmediyseniz ve bu bölümde iyi bir sonuç gösterecek bir model seçmeye başladıysanız, sırasıyla bu verileri doğrulama için kullanmaya başladınız, model zaten onlar dikkate alınarak seçilmiş, yani geleceğe küçük bir bakış var, kontrol var ve tüm operasyon anlamını yitiriyor ve bu durumda bir kontrol örneği yapmamak daha kolay oldu.

 
Dr.Tüccar :

Bu makalelerde açıklananlar da dahil olmak üzere, kendi kendine yazılan farklı doğrulama yöntemlerini denedim. Sonuçlarım:

Forex'te hedef değişken ile tahminciler arasında kesin bir ilişki yoktur, forex yeni verileri hesaplamak için bulunabilen ve uygulanabilen bir formül değildir. Modelin yapabileceği tek şey, bir model bulmak ve yeni veriler üzerinde işlem yapmak için sonuçları tahmin etmektir.
Yani, içinde birkaç noktanın (bilinen hedef değişkenler) bulunduğu belirli bir çok boyutlu alan (boyut tahmincilerin sayısına eşittir) vardır. Model, bu uzayda, uzaydaki noktaları ayıran bir hiperdüzlem oluşturur ("satın alma" sınıfı, "satış" sınıfından). Bu hiperdüzlemi oluşturmanın sonsuz sayıda yolu vardır (basit bir durumda, bir kağıda dört nokta çizin ve aralarında eğri bir çizgi çizin, böylece eğrinin sağında 2 ve solunda iki nokta olur. Bir eğri çizmenin sonsuz yolu olacaktır). Bu nedenle, oluşturulan modelin hedef değişkenin öngörücülere doğru bağımlılığını yansıttığının garantisi yoktur. Modelin yeterliliğini kontrol etmek için doğrulama kullanılır - bazı noktalar eğitim sırasında kullanılmamıştır ve üzerlerinde modelin başa çıkıp çıkmadığını, bu test noktalarında sonucu doğru bir şekilde gösterip göstermeyeceğini kolayca öğrenebilirsiniz.

Model doğrulamayı doğru bir şekilde geçemezse, bunun birçok nedeni olabilir, örneğin
- model, yalnızca eğitim örneklerinde bulunan var olmayan bazı bağımlılıklar buldu
- eğitim verilerinde, test verilerinde olmayan belirli bir bağımlılık vardı. Örneğin, test için tüm verilerin daha sonra alınması ve forex sembolünün davranışının değişmesi durumunda
- modelin kendisi başarısız bir tane ile başlatıldı. Aynı veriler üzerinde eğitilen bir modelin, doğrulama sırasında, onu tekrar eğitmek için birçok girişimde bulunarak farklı sonuçlar vermesi sıklıkla olur.

Belirli bir durumda kötü sonuca neyin sebep olduğu bilinmiyor. Değerlendirilebilecek tek şey, modelin ortalama olarak ne kadar iyi olduğudur - modeli düzinelerce kez oluşturun, doğrulamayı değerlendirin. Eğitim/doğrulama verilerinin her seferinde yeniden bölünmesi gerekir.
Güvenilir bir yol olarak düşündüğüm şey, verileri %50 / %50 oranında rastgele bölmek (zamana göre değil, ancak her şey eşit şekilde karışacak şekilde, örneğin eğitim için satır 1,2,5,7, 3,4) ,6, 8 doğrulama için), modeli ilk kısımda eğitin, ardından ikinci kısımda doğrulayın, modeli değerlendirmek için doğruluğu kullanırım. Bunu 50 kez tekrarlayın (verileri 2 rastgele parçaya bölün, eğitim, doğrulama). Ardından, eğitim verilerindeki ortalama doğruluğu ve doğrulama verilerindeki ortalamayı hesaplayın. Eğitim setindeki ortalama doğruluğun %90, doğrulama setinde - %80 olduğunu varsayalım. Ön testteki doğruluk daha da düşük olacaktır, ben şu temel kuralı kullanıyorum: farkı hesaplayın (%90-%80=%10) ve doğrulama sonucundan çıkarın (%80-%10 = %70). Ön testte böyle bir modelin yaklaşık% 70'lik bir ortalama doğruluğa sahip olacağı ortaya çıktı. Daha sonra, bu tahmini %70'ten artırmak için model parametrelerini ve tahmin edicileri genetik olarak seçiyorum (göründüğünden çok daha zor, %50'nin ötesine geçmek bile zor).

Ama bu sonucun sadece bir ortalama, garantisi olmamasından hoşlanmıyorum. Alım satım yaparken gerçek doğruluk ne kadar şanssız olduğuna bağlı olarak %60 ila %80, hatta %50 ila %90 arasında olacaktır. Ne kadar denesem de en iyi modeli yakalamak nedense işe yaramıyor. Muhtemelen tek çözüm, bulunan en iyi parametreler ve tahmin edicilerle düzinelerce model oluşturmak ve sonucu çoğunluğun göründüğü yerde (modeller kongresi) almaktır.

Bu, SanSanych'in konunun başında söyledikleriyle yakından ilgilidir. Onun tavsiyesi üzerine, son kontrol numunesi için bilinen verilerin son kısmını çıkarmak da mümkündür. Bu verileri eğitim ve doğrulama için kullanmayın, sadece model eğitiminin sonuna kadar ayrı olarak saklayın. Ardından, bu veriler üzerinde bitmiş modeli veya kongreyi kontrol edin. Bunun avantajı, modelin zaman içinde yeni verilerle nasıl başa çıktığını göstermesidir. Dezavantajı ise eğitim ve doğrulama için daha az veri olacak ve ticaretin başlangıcında model zaten biraz eski olacak. Burada küçük bir nüans var, bu kontrol verilerindeki sonucu beğenmediyseniz ve bu sitede iyi sonuç gösterecek bir model seçmeye başladıysanız, sırasıyla bu verileri doğrulama için kullanmaya başladınız, model zaten onlar dikkate alınarak seçilmiş, yani geleceğe küçük bir bakış var, kontrol var ve tüm bu işlem anlamını yitiriyor ve bu durumda bir kontrol numunesi yapmamak daha kolay oldu.

Her şeyi doğru yaptı! ©

Ancak, önemli bir nüans. Çapraz doğrulama ve üst iç içe geçmiş özgeçmiş katmanı için zaman içinde ayrı gözlemler yapılmalıdır. Peki ya da en azından üst katman için, eğitim ve alt CV ile örtüşmeyen tarihlerden seyrek örnekler alın.

Sonuçlar daha kötü, ancak daha doğru olmalıdır.

CV'deki sonuçlar ile iç içe CV (korelasyon) arasında bir ilişki bulursanız. Yani model verilere uyuyor.
 
Sihirbaz_ :
Henüz değil)))
7 baktı. Kesintiler, bir buçuk yıl önceki versiyonundan daha iyi değil ya da baktığımda tam olarak hatırlamıyorum. Pencere ve dosya istatistiklerinde farklı yazıyor. Girdilerin Önem Seçimi
tartışmalı, kafa kafaya rf ve birkaç tane daha karşılaştırıldığında ve tamamen önemsiz olana yüksek bir öncelik atayabilir. En iyi kesimi (pencereden) alırsanız, yine de buz değildir.
Bu verilerde en az %92 alıyorum. Başıboş (olduğu gibi) pratik kullanım için hala çok az kullanışlıdır. Düşünce geliştirme ve uçuş girişimleri için - saygı.

Elbette tüm IMHO. şimdilik şimdilik)))


Reshetov seviyesinde bir kişiyle uğraşırken, güvenle şunları talep edebiliriz:

1. Analoglara genel bakış

2. Bu analoglarda üstesinden gelinmesi gereken eksikliklerin belirtilmesi

3. Bu eksiklikleri ortadan kaldırmak için bir mekanizmanın belirtilmesi (piyasa ekonomisindeki özellikleri gizleyebilirsiniz)

4. Analogların kendi gelişimleriyle karşılaştırılması. Bu karşılaştırma, mevcut analogların daha önce listelenen tüm dezavantajlarının ortadan kaldırıldığını kanıtlamalıdır. Ve sonuç, analoglardan daha kötü OLMAYAN bir araçtı.

Bu, Reshetov seviyesindeki bir kişi tarafından yapılmazsa, o zaman: Geliştirme girişimleri ve düşünce uçuşu için - saygı.

 
San Sanych Fomenko :

o zaman güvenle talep edebilirsiniz:

))))))
 
Sihirbaz_ :
Henüz değil)))
7 baktı. Kesintiler, bir buçuk yıl önceki versiyonundan daha iyi değil ya da baktığımda tam olarak hatırlamıyorum. Pencere ve dosya istatistiklerinde farklı yazıyor. Girdilerin Önem Seçimi
tartışmalı, kafa kafaya rf ve birkaç tane daha karşılaştırıldığında ve tamamen önemsiz olana yüksek bir öncelik atayabilir. En iyi kesimi (pencereden) alırsanız, yine de buz değildir.
Bu verilerde en az %92 alıyorum. Başıboş (olduğu gibi) pratik kullanım için hala çok az kullanışlıdır. Düşünce geliştirme ve uçuş girişimleri için - saygı.

Elbette tüm IMHO. şimdilik şimdilik)))


HResults penceresi iki modelden oluşan bir komitedir. Öngörücünün pencerede iki modeli kaydettiği dosyaya bakarsanız, bu, bu iki modelin komitesinin sonucudur. bunun gibi bir şey....
 
Sihirbaz_ :
Açıkça Not defteri sıkıştırılmış, ancak bükülmemiş))) Ama karşılaştırma için pencereden aldım.
Birilerine faydası dokunsa da gereksiz diye hemen sildim...
Genel olarak, bu işi boşuna yaptığınızı düşünüyorum. İlk olarak, çok önemli bir soruyu yanıtlar, yani, çıktı verileriyle ilgili olarak girdi verilerinde genelleme bilgilerinin yüzde kaçı bulunur. İkincisi, Yuri ona önerdiğim şeyi dinlerse, o zaman birçok soruyu kapatacak bir bomba olduğu ortaya çıkacak. Ne yazık ki, modelin gelecekte nasıl çalışacağını görmek için modeli verilerim üzerinde (hayali olduğu gibi genelleme yeteneğini artıran veri manipülasyonları olmadan) yüzde 100 eğitmeyi başaramadım. Ancak, komitenin genellemesinin %100'ünü aldıktan sonra, her bir modelin aynı %100'e sahip olduğundan, yani girdinin çıktıyı tamamen tanımladığı durumda olduğundan emin olmanız gerekir. O zaman görülecektir .... Bu arada, Optimize Edici'nin çalışmazlığına ilişkin sonuçlar erkendir. Başka bir şey de, her birimiz İDEAL çıktısına bir model oluşturmaya çalışıyoruz. Bu da imkansız değilse de son derece zordur. Peki ya çıktı İDEAL değil de biraz hatalıysa..... İlginç olan bu..... 100 pips kârı olan sinyalleri değil, aynı zamanda kârı olanları da işaretleyelim. -30 pips ve üzeri bir kar.... Bu varsayımı bilmek, 30 pips daha iyi bir sinyale çıkmak için yeterli olacaktır ve %100 genelleme düzeyine sahip bir model kurabilirseniz sorun çözülür.
 
Genel olarak sınıflandırma modelleri oluşturmak için kayıtların sırası o kadar önemli değildir, modelin bunu %100 öğrenmesi önemlidir ve yakın gelecekte aynı olaylara piyasa tepkisinin aynı olması önemlidir. Yani çelişkili verilerin yokluğu. Öngörülü modellerde başka bir şey var, onlar için kayıtların sırası önemlidir. Bu, sınıflandırma ve tahmin arasındaki farklardan biridir.....
 

Bunun bize yardımcı olup olmayacağını merak ediyorum .... Bu yüzden böyle bir şeyin hesaplama gücünün birkaç olmasa da daha yüksek bir büyüklük sırası olduğunu anlıyorum ....

https://hi-tech.mail.ru/news/compact-quantum-computer/?frommail=1

 
San Sanych Fomenko :
Michael Marchukajtes :
Ve isteyen herkes. z1 arşivi, tren ve test olmak üzere iki dosya içerir. Hedef için trende bir model oluşturun, teste uygulayın, sonuçları % olarak düzenleyin (başarılı bir şekilde tahmin edildi)
durumlar) her iki numune için de (tren = %xx, test = %xx). Yöntemleri ve modelleri seslendirmeye gerek yok, sadece sayılar. Herhangi bir veri manipülasyonuna izin verilir
ve çıkarma yöntemleri.
Dosyalar:
z1.zip  43 kb
 
Sihirbaz_ :
Ve isteyen herkes. z1 arşivi, tren ve test olmak üzere iki dosya içerir. Hedef için trende bir model oluşturun, teste uygulayın, sonuçları % olarak düzenleyin (başarılı bir şekilde tahmin edildi)
durumlar) her iki numune için de (tren = %xx, test = %xx). Yöntemleri ve modelleri seslendirmeye gerek yok, sadece sayılar. Herhangi bir veri manipülasyonuna izin verilir
ve çıkarma yöntemleri.

Teşekkür ederim! Deneyeceğim.

Eğitimli model değerlendirilene kadar teste bakmadığımız konusunda anlaşalım. Bu konuda daha önce yanıldım.

Yani, yüzümüzde mavi olana kadar trende en iyi modeli eğitiyoruz. Belki iki veya üç model. Sonra test için tek seferlik testleri.

Neden: