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

 
elibrarius :
Sanırım SanSanych kendi kodlarını yazmakla uğraşmamak, R'nin hazır fonksiyonlarını kullanmak istiyordu.

Sadece kodlar değil. Bitmiş kod, bazı fikirlerin uygulanmasıdır.

İzliyoruz

gafs - genetik algoritma ile tahmin edicilerin seçimi
ve son model, yeniden örnekleme ile belirlenen optimal nesil sayısıyla birleştirilen tahmin edicinin bir alt kümesine dayanır.


rfe - ters tahminci seçimi

Öngörücü önem sıralamasına dayalı olarak ters öngörücü seçimini uygular.

Tahminciler sıralanır ve daha az önemli olanlar simülasyondan önce sırayla çıkarılır.

Amaç, daha doğru bir model tarafından kullanılabilecek bir tahmin edici alt kümesi bulmaktır.

safs - tahmin edici seçiminin simüle edilmiş kararlılığı (tahmin edici tavlama)

Bir arama sırasında, arama için bir uygunluk ölçüsü (yani enerji değeri SA ) gereklidir. Bu, performansın dahili bir ölçüsüdür. Arama sırasında mevcut olan veriler, yüksek düzeyde yeniden örnekleme ile seçilen örneklerdir (örneğin, yukarıda bahsedilen onda dokuzluk). Genel yaklaşım, farklı bir yeniden örnekleme prosedürü yürütmektir. Diğer bir seçenek de, bir dahili performans puanı belirlemek için örnek dışı bir set kullanmaktır.


Aynı zamanda, her zaman hatırlarız: "Çöp içeri - çöp dışarı."

 
San Sanych Fomenko :

Sadece kodlar değil. Bitmiş kod, bazı fikirlerin uygulanmasıdır.

İzliyoruz

gafs - genetik algoritma ile tahmin edicilerin seçimi
ve son model, yeniden örnekleme ile belirlenen optimal nesil sayısıyla birleştirilen tahmin edicinin bir alt kümesine dayanır.


rfe - ters tahminci seçimi

Öngörücü önem sıralamasına dayalı olarak ters öngörücü seçimini uygular.

Tahminciler sıralanır ve daha az önemli olanlar simülasyondan önce sırayla çıkarılır.

Amaç, daha doğru bir model tarafından kullanılabilecek bir tahmin edici alt kümesi bulmaktır.

safs - tahmin edici seçiminin simüle edilmiş kararlılığı (tahmin edici tavlama)

Bir arama sırasında, arama için bir uygunluk ölçüsü (yani enerji değeri SA ) gereklidir. Bu, performansın dahili bir ölçüsüdür. Arama sırasında mevcut olan veriler, yüksek düzeyde yeniden örnekleme ile seçilen örneklerdir (örneğin, yukarıda bahsedilen onda dokuzluk). Genel yaklaşım, farklı bir yeniden örnekleme prosedürü yürütmektir. Diğer bir seçenek de, bir dahili performans puanı belirlemek için örnek dışı bir set kullanmaktır.


Aynı zamanda, her zaman hatırlarız: "Çöp içeri - çöp dışarı."

İlginç fikirler. Bunu kendin yazma...

Korelasyon taraması yaptım. Başlamak.
Tahmin edicileri toplam korelasyona göre sıraladım, sonra daha az ilişkili olanlardan gittim ve onunla ilişkili olanları sildim. Sonra bunu kalan tahminciler ile tekrarlarım.

Pearson Düzeltme M
1.00,0.97,0.86,0.88,0.84,0.80,
0.97,1.00,0.92,0.84,0.79,0.75,
0.86,0.92,1.00,0.73,0.67,0.63,
0.88,0.84,0.73,1.00,0.99.00.98,
0.84,0.79,0.67,0.99,1.00,1.00,
0.80,0.75,0.63,0.98,1.00,1.00,
Corr + Kfull - sütunların toplamı
5.35,5.26,4.80,5.42,5.30,5.16,

Kful sıralanmış
4.80(2),5.16(5),5.26(1),5.30(4),5.35(0),5.42(3),
Silinecek girişler: 1,3,4,
Tutulacak girdiler: 0,2,5,

 
San Sanych Fomenko :

Sadece kodlar değil. Bitmiş kod, bazı fikirlerin uygulanmasıdır.

İzliyoruz

gafs - genetik algoritma ile tahmin edicilerin seçimi
ve son model, yeniden örnekleme ile belirlenen optimal nesil sayısıyla birleştirilen tahmin edicinin bir alt kümesine dayanır.


rfe - ters tahminci seçimi

Öngörücü önem sıralamasına dayalı olarak ters öngörücü seçimini uygular.

Tahminciler sıralanır ve daha az önemli olanlar simülasyondan önce sırayla çıkarılır.

Amaç, daha doğru bir model tarafından kullanılabilecek bir tahmin edici alt kümesi bulmaktır.

safs - tahmin edici seçiminin simüle edilmiş kararlılığı (tahmin edici tavlama)

Bir arama sırasında, arama için bir uygunluk ölçüsü (yani enerji değeri SA ) gereklidir. Bu, performansın dahili bir ölçüsüdür. Arama sırasında mevcut olan veriler, yüksek düzeyde yeniden örnekleme ile seçilen örneklerdir (örneğin, yukarıda bahsedilen onda dokuzluk). Genel yaklaşım, farklı bir yeniden örnekleme prosedürü yürütmektir. Diğer bir seçenek de, bir dahili performans puanı belirlemek için örnek dışı bir set kullanmaktır.


Aynı zamanda, her zaman hatırlarız: "Çöp içeri - çöp dışarı."

İlginç fikirler, elbette, bunu kendiniz yazamazsınız ve fikrin kendisini ortaya çıkaramazsınız)

Soru, bu tür karmaşık fikirlerin ticaret amaçları için gerekli olup olmadığıdır. Şimdilik, yüksek korelasyonlu olanları kaldırmayı deneyeceğim, eğer sonuç kabul edilemezse, o zaman R'ye geçmem gerekecek.
 
elibrarius :

İlginç fikirler, elbette, bunu kendiniz yazamazsınız ve fikrin kendisini ortaya çıkaramazsınız)

Soru, bu tür karmaşık fikirlerin ticaret amaçları için gerekli olup olmadığıdır. Şimdilik, yüksek korelasyonlu olanları kaldırmayı deneyeceğim, eğer sonuç kabul edilemezse, o zaman R'ye geçmem gerekecek.

Araştırma çalışmaları için son derece elverişsiz olduğu için alglib tarafından sıkıştırıldınız. R tercümanı ve bir şeyler deneyin - sadece tükürün.

Yüksek korelasyonlu tahmin edicilerin - (çok bağlantılı) - kaldırılması zorunlu bir adımdır.

Tahmin edici ve hedef arasındaki ilişki kesinlikle ilginçtir. Bu tür bir korelasyon için size bir fikir verebilirim. Doğrusal bir regresyon oluşturun (daha karmaşık olanlar var) ve önemli katsayıları OLMAYAN bu tahmin edicileri atın. Elimden bir şey çıkmadı. Belki başarabilirsin.

Ancak tahmin edicilerin seçimi MO'da zorunlu bir adımdır.

 

https://www.mql5.com/en/articles/497 makalesinde, giriş sayısına bağlı olarak aktivasyon fonksiyonunun dikliğinin değiştirilmesi önerildi.

Algli'de ve R'de - eğim standart mı yoksa girdi sayısına bağlı olarak kendi kendini optimize ediyor mu? Ya da neredeyse hiç kimsenin bu kara kutuların içinde ne olduğunu bilmediği gerçeği hakkında?

Нейронные сети - от теории к практике
Нейронные сети - от теории к практике
  • 2012.10.06
  • Dmitriy Parfenovich
  • www.mql5.com
В наше время, наверное, каждый трейдер слышал о нейронных сетях и знает, как это круто. В представлении большинства те, которые в них разбираются, это какие-то чуть ли не сверхчеловеки. В этой статье я постараюсь рассказать, как устроена нейросеть, что с ней можно делать и покажу практические примеры её использования.
 
elibrarius :

https://www.mql5.com/en/articles/497 makalesinde, giriş sayısına bağlı olarak aktivasyon fonksiyonunun dikliğinin değiştirilmesi önerildi.

Algli'de ve R'de - eğim standart mı yoksa girdi sayısına bağlı olarak kendi kendini optimize ediyor mu? Ya da neredeyse hiç kimsenin bu kara kutuların içinde ne olduğunu bilmediği gerçeği hakkında?


Bazı sinir ağı kitaplıkları, kullanıcıya oluşturulan sinir ağını özelleştirmek için, bireysel nöronlar için aktivasyon fonksiyonunu ayarlamak veya bireysel bağlantı eklemek/kaldırmak için en geniş olasılıkları sunar. Bununla birlikte, uygulama, geniş işlevselliğin genellikle talep edilmediğini göstermektedir - ince ayar ile önemli ölçüde iyileştirilemeyen birkaç tipik mimari vardır; durum sinir ağlarını eğitme yöntemleri ile benzerdir. Son olarak, kullanıcıya çok zengin araçlar verilmemesinin başka bir nedeni daha vardır - eğer sinir ağı ince ayar gerektiriyorsa, o zaman bu tür bir ayarlama yazılım paketinin yazarı için zor değildir, ancak genellikle son kullanıcının kafasını karıştırabilir. Dolayısıyla sonuç - iyi bir sinir ağı paketi karmaşık konfigürasyon gerektirmemelidir. Bu ilkeye uygun olarak, ALGLIB paketi mümkün olduğu kadar çok soruyu otomatik olarak çözmeye çalışır ve kullanıcıya yalnızca gerçekten önemli kararları bırakır.

Mevcut mimariler
ALGLIB paketi, bir gizli katman ve iki gizli katman ile gizli katmanlar olmadan sinir ağları oluşturmanıza olanak tanır. Bağlantılar, giriş katmanından gizli katmanlardan birincisine (varsa), ardından ikincisine, ardından çıkış katmanına gider. Giriş katmanından çıkış katmanına "kısa" bağlantı yoktur. Gizli katmanlar, standart büzülme aktivasyon işlevlerinden birine sahiptir, ancak sinir ağının çıkış katmanı için daha fazla çeşitlilik mümkündür. Çıktı katmanı doğrusal olabilir (bu tür ağlar yaklaşıklık problemlerinde kullanılır), sıkıştırıcı bir etkinleştirme işlevine sahip olabilir (ağ çıktıları belirli bir aralıkla sınırlıysa). Üst (veya alt) sınırlı etkinleştirme işlevine sahip ağlar da mevcuttur. En basit durumda (sınır sıfırdır), bu fonksiyon x'in +∞'ye meyilli olması gibi x'e ve x'in -∞'ye meyilli olması gibi üssel olarak sıfıra meyleder.
Özel bir durum, doğrusal çıktı katmanına ve SOFTMAX çıktı normalleştirmesine sahip sinir ağlarıdır. Ağ çıktılarının negatif olmaması ve toplamlarının kesinlikle bire eşit olması gereken sınıflandırma problemleri için kullanılırlar, bu da girdi vektörünü sınıflardan birine atama olasılıkları olarak kullanılmalarına izin verir (sınırlı durumda) , eğitilmiş ağın çıktıları bu olasılıklara yakınsar). Böyle bir ağın çıktı sayısı her zaman en az ikidir (temel mantık tarafından belirlenen bir sınırlama).
Böyle bir mimari seti, minimalizmine rağmen, çoğu pratik problemi çözmek için yeterlidir. Gereksiz ayrıntıların olmaması, alakasız ayrıntılara çok fazla dikkat etmeden göreve (sınıflandırma veya tahmin) konsantre olmanızı sağlar (örneğin, doğrusal olmayan bir katmanın belirli bir etkinleştirme işlevinin seçimi genellikle sonuç üzerinde çok az etkiye sahiptir).

http://alglib.sources.ru/dataanalysis/neuralnetworks.php

 
Daha önce okudum ama soruya cevap vermiyor
"Gizli katmanlar, standart büzülme etkinleştirme işlevlerinden birine sahiptir" - hangisi? Gelen bağlantı sayısına göre katsayılarını ayarlıyor mu? Girdi sayısının sonucu etkilediği gerçeği makalede gösterildi. Ve sonra gizli katmanda (hatta girişte) 100 nöron vurur ve sonraki nöronlar sadece 5 girdi ile iyi çalışabilir ...
 
elibrarius :
Daha önce okudum ama soruya cevap vermiyor
"Gizli katmanlar, standart büzülme etkinleştirme işlevlerinden birine sahiptir" - hangisi? Gelen bağlantı sayısına göre katsayılarını ayarlıyor mu? Girdi sayısının sonucu etkilediği gerçeği makalede gösterildi. Ve sonra gizli katmanda (hatta girişte) 100 nöron vurur ve sonraki nöronlar sadece 5 girdi ile iyi çalışabilir ...


bu yalnızca kodun içine girerseniz veya onlara sorarsanız .. 2 tür ızgara varsa, muhtemelen bir sigmoid ve lineer veya aralıkta olmasına bağlı olarak değişen başka bir çıktı

peki, grid mimarisinin seçimi ile, evet... çok çalışmanız gerekecek, çünkü burada en az 2 gizli katman ayarlayabilirsiniz, zaten daha kolay :) Bir yerde okudum, gizli katmanın genel olarak yapması gerekir girişten 2 kat daha küçük olmalı .. veya daha fazla, unuttum)

 

Bu arada, EURUSD M1 grafiğinde çıkışa doğru 10'dan 60'a (6 parça) periyotlarla trendlinearreg korelasyonunu kontrol ettim (zikziğim yok ama yakın bir şey).

-0.00,0.01,0.00,0.01,0.01,-0.01

-0.01'den 0.01'e korelasyon, yani. o hiç yok.

Ancak, EA'nız kar gösteriyor... tüm yapmanız gereken, trend çizgisine bakarak ticareti manuel olarak işaretlemek ve grafik hareketlerine dayalı bazı kurallar icat etmektir, bence bunlara göre çalışacak normal bir EA yazmak daha kolay tüzük.

 
Maksim Dmitrievski :


Gizli katmanın genel olarak girişten 2 kat daha küçük olması gerektiğini bir yerde okudum .. veya daha fazlasını unuttum)

"Gizli katmandaki optimum nöron sayısı (# gizli nöron) = (# giriş + # çıkış)/2 veya SQRT(# giriş * # çıkış)" kurallarından biri

Ve kullandığınız Reshetov ağında, 2 nInputs