Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 36
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Bana öyle geliyor ki bu paket, hedef değişkeni tahmin edebilecek bir model oluşturmak için yeterli değil. Yardımda tek bulduğum, tahmin edicilere dayalı bir PCA modeli oluşturmak, orada hiç hedef değişken yok.
Merhaba! Yanlış işlevi kullanmışsın, verdiğim sitede belirtildiği gibi " nlPca " kullanmalıydın yoksa benim hatam, daha detaylı bilgi vermen gerekiyor...
Burada tahmin etmek yerine, deneyin, başarabilirsiniz
Bana öyle geliyor ki bu paket, hedef değişkeni tahmin edebilecek bir model oluşturmak için yeterli değil. Yardımda tek bulduğum, tahmin edicilere dayalı bir PCA modeli oluşturmak, orada hiç hedef değişken yok.
Bu, metaboliteDataComplete tablosunu ayrıştırmak için 5 ana bileşene sahip bir resNipals (Yinelemeli Kısmi En Küçük Karelerle Doğrusal Olmayan Tahmin) nesnesi oluşturacaktır. metaboliteDataComplete yerine kendi tablonuzu tahmin edicilerle değiştirebilirsiniz. Hedef değişkeni burada vermemek önemlidir, daha sonra kullanılacaktır.
Ancak bu sadece farklı çizelgeleri inceleyerek değişkenler arasındaki ilişkileri analiz etmek için yeterlidir. Tahmine dayalı bir model oluşturmak için daha sonra PC1, PC2,PC3,PC4,PC5 ana bileşenlerini giriş değişkenleri (x1,x2,x3,...) olarak kullanan bir doğrusal regresyon modeli oluşturulur. Ve hedef değişken Y, gerekli sonuç olarak doğrusal modele zaten beslenir. Sorun şu ki, resNipals, pcaMethods paketindeki bir tür "pcaRes" sınıfı nesnesidir. Bütün bunları onunla nasıl yapacağımı, yardımda bulamadım.
Caret paketinden bir PCA modeli olsaydı, şöyle olurdu:
Ancak bu resNipals ile çalışmaz, teorik olarak, pcaMethods paketinin bu nesneyle çalışmak için bazı işlevleri olmalıdır, ancak hiçbir şey bulamadım.
Başlangıçta, RSA iki sorunu çözmeyi amaçladı:
1. Az sayıda gözleme sahip çok sayıda tahmin edici vardır. Bu organik kimya, genetik için tipiktir. Makroekonomik verileri büyük zaman dilimlerinde, örneğin yıllık olanlarda kullanırız.
2. Tahmin ediciler arasında korelasyonlar vardır.
Bu nedenle, SAR algoritmaları şu iki ana görevi çözer:
1. Yeni, genellikle çok daha az sayıda tahmin edici ile orijinal tahmin edicilerin sayısını azaltın. Aynı zamanda, algoritma, bu küçük sayının, orijinal öngörücü kümesinin değişkenliğinin belirli bir yüzdesini, örneğin %95'ini açıklayabileceğini garanti eder. Bu değer araştırmacı tarafından seçilir.
2. Yeni yordayıcı seti, aralarında SIFIR korelasyona sahiptir.
Bundan, bizim için PCA'nın modelleme için ilk verilerin ön hazırlığı için algoritmalardan biri olduğu, ancak hedef değişkeni tahmin etmek için modellemenin yerini alamaz.
Bana öyle geliyor ki, RSA'nın çeşitli detaylarının tartışılması arasında, bu konudaki ifadelerimin anlamı kayboldu. Bu nedenle, size hatırlatmama izin verin: PCA'nın böyle bir kullanımına bir bağlantı verdim, burada sadece ilk tahmin edicilerin sayısı azaltılmadı, aynı zamanda hedef değişken için gürültü olan tahmin edicilerin de elimine edildi. Hangisi bu başlıkta tartışılıyor.
Bu nedenle, tahminciler arasındaki gürültü sorununa ve bu sorunu çözmek için çok özel bir SAR kullanma fikrinin olası kullanımına geri dönmeyi öneriyorum.
Bu, metaboliteDataComplete tablosunu ayrıştırmak için 5 ana bileşene sahip bir resNipals (Yinelemeli Kısmi En Küçük Karelerle Doğrusal Olmayan Tahmin) nesnesi oluşturacaktır. metaboliteDataComplete yerine kendi tablonuzu değiştirebilirsiniz ..........
Denediğiniz Nipals, sitede ikinci resimde gösteriliyor, ayrıca gerçekten ayrılmıyor, sinir ağı PCA'nın üçüncü resmindekini çekmeniz gerekiyor.
=========================
Biraz konu dışı ama kodla ilgili yardıma ihtiyacınız var ....
Sütunlarda öngörücülerim var, tüm tahmin edicilerin tüm bunlarla olan farkını hesaplamak istiyorum, tüm kombinasyonları sıralayın, üzüntünün farkına vardım ki şimdi her kombinasyonu yeterince adlandırmanız gerekiyor, böylece neyin ne olduğunu anlayabilirsiniz.
Diyelim ki "A", "B", "C" tahminlerine sahip sütunlarımız var.
farklılık kombinasyonları yapmak
1) A - B
2) A - C
3) C - B
soru: "a_minus_b", "a_minus_c" gibi yeni alınan sütun adlarını nasıl veririm
Ben sadece "R" ve genel olarak programlama öğreniyorum, bu yüzden bu tür numaralara hiç aşina değilim
bu koda ne eklemem gerekiyor
Denediğiniz Nipals, sitede ikinci resimde gösteriliyor, ayrıca gerçekten ayrılmıyor, sinir ağı PCA'nın üçüncü resmindekini çekmeniz gerekiyor.
=========================
Biraz konu dışı ama kodla ilgili yardıma ihtiyacınız var ....
Sütunlarda öngörücülerim var, tüm tahmin edicilerin tüm bunlarla olan farkını hesaplamak istiyorum, tüm kombinasyonları sıralayın, üzüntünün farkına vardım ki şimdi her kombinasyonu yeterince adlandırmanız gerekiyor, böylece neyin ne olduğunu anlayabilirsiniz.
Diyelim ki "A", "B", "C" tahminlerine sahip sütunlarımız var.
farklılık kombinasyonları yapmak
1) A - B
2) A - C
3) C - B
soru: "a_minus_b", "a_minus_c" gibi yeni alınan sütun adlarını nasıl veririm
Ben sadece "R" ve genel olarak programlama öğreniyorum, bu yüzden bu tür numaralara hiç aşina değilim
bu koda ne eklemem gerekiyor
Aşağı yukarı böyle.
colnames() <- c("..", "..")
isimler de var
Yardıma bakın.
Başlangıçta, RSA iki sorunu çözmeyi amaçladı:
Aşağı yukarı böyle.
colnames() <- c("..", "..")
isimler de var
Yardıma bakın.
Dr.Tüccar :
...
Veriler eurusd d1, sınıf 0 veya 1 - bir sonraki çubuk için düşen veya yükselen fiyattan alınmıştır. Model, test.csv sonucunu 10'dan en az 6'sında doğru tahmin ederse, o zaman zaten Forex'te işlem yapmayı deneyebilirsiniz, prensipte birleşmeyecektir, ancak büyük bir kar da beklememelisiniz. 10'dan 7'sinde (ve daha fazla) zaten doğru tahmin ediyorsa - bu, kâseye giden doğru yoldur, eğitimi denemek ve modeli diğer yıllarda ve aylarda test etmek için kalır ve her yerde aynıysa, o zaman çok mükemmel
...
Daha spesifik olarak rapor dosyasında:
/**
* Numune dışı modelleme kalitesi:
*
* TruePositives: 182
* TrueNegatives: 181
* YanlışPozitifler: 1
* YanlışNegatifler: 1
* İstatistikli numunelerdeki toplam kalıp sayısı: 365
* Numune dışı toplam hata: 2
* Genelleme yeteneğinin duyarlılığı: %99.4535519125683
* Genelleme yeteneğinin özgüllüğü: %99.45054945054946
* Genelleme yeteneği: %98.90410136311776
* Reshetov'un Göstergesi: 8.852456238401455
*/
Bir ekip oluşturmanın ve bir Açık Kaynak projesi oluşturmanın zamanı geldi - bu iş için mql5 ve Java'da otomatikleştirilmiş bir kompleks. Biraz sonra modellerin nasıl eğitileceği ve nasıl kullanılacağına dair talimatlar yazacağım, ayrıca Java'daki bir ikili sınıflandırıcının kaynak kodlarını ve eğitim modelleri için bir örnek oluşturan bir MQL5 betiğine yer vereceğim.
Kompleksin nasıl çalışacağına dair yaklaşık bir plan:
Projeye katılmak isteyen ve Java veya MQL5 ile programlamayı bilenler varsa bu başlık altında üyelikten çıkabilirsiniz.
Merhaba! Yanlış işlevi kullanmışsın, verdiğim sitede belirtildiği gibi " nlPca " kullanmalıydın yoksa benim hatam, daha detaylı bilgi vermen gerekiyor...
Burada tahmine dayalı yerine, deneyin, başarabilirsiniz
Bu örnek maalesef başka bir konudan. Örneğin Forex'te verilerin %100'ünü her zaman çıkarabiliyoruz ve verilerin deneysel olarak elde edildiği diğer alanlarda her zaman boşluklar, eksik değerler olacaktır. Bu örnekte, PCA, tahmin edicilerdeki eksik değerleri yeniden oluşturmak için kullanılır. Örnekte üç sütundan birindeki değer rastgele temizleniyor, bir pca modeli oluşturuluyor ve onun yardımıyla eksik değerler yeniden oluşturuluyor.
Bunu hiç denemedim, ancak teknik olarak hedef değişkeni pca modeline dahil ederek bir öngörücü olarak düşünmek mümkün. Daha sonra, yeni verilerde değeri bilinmeyecek, sırasıyla pca bu eksik değerleri doldurabilir.
PCA'nın başlangıçta orijinal serinin boyutsallığını azaltması amaçlandı. Hepsi bu. Tahmin edicilerin seçimi için kullanmak, hayali bir saçmalıktır.
Hayır, her şey yolunda. Ana bileşenlerin her biri için kullanılan tahmin ediciler bilindiğinden, ana bileşenlerde kullanılmayan tahmin edicileri güvenle filtreleyebiliriz. Okuyun, beğendim: http://www.win-vector.com/blog/2016/05/pcr_part2_yaware/ Orada, veriler 5 iyi tahmin edici ve düzinelerce gürültülü tahmin içeriyor. Gürültü analiz ile filtrelenir. Bu başlıkta rastladığım diğer örnekler için de aynı kodu kullandım, genel olarak işe yarıyor. Ama daha zor olan forex, göstergelerde bu kadar güzel resimler alamadım, daha akıllı bir şey bulmam gerekiyor.
Bu örnek maalesef başka bir konudan. Örneğin Forex'te verilerin %100'ünü her zaman çıkarabiliyoruz ve verilerin deneysel olarak elde edildiği diğer alanlarda her zaman boşluklar, eksik değerler olacaktır. Bu örnekte, PCA, tahmin edicilerdeki eksik değerleri yeniden oluşturmak için kullanılır. Örnekte üç sütundan birindeki değer rastgele temizleniyor, bir pca modeli oluşturuluyor ve onun yardımıyla eksik değerler yeniden oluşturuluyor.
Bunu hiç denemedim, ancak teknik olarak hedef değişkeni pca modeline dahil ederek bir öngörücü olarak düşünmek mümkün. Daha sonra, yeni verilerde değeri bilinmeyecek, sırasıyla pca bu eksik değerleri doldurabilir.