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

 
Yuri Asaulenko :

Kitapları nasıl okursun? Kıçının altına bir şey mi koyuyorsun?

Oldukça popüler. Bir problemin ya çözümü vardır ya da yoktur. Değilse, çözemezsiniz. Varsa, o zaman sizin karar vereceğiniz bir gerçek değildir. Ve Ulusal Meclis hiçbir taraftan burada değil.

Lütfen yukarıdaki kitabı okuyun. Optimal çözüm her zaman tek parça miktarındadır, ne kadar tatmin edici olduğu zaten ikinci sorudur.

 

Söz verdiğim gibi, bir ikili sınıflandırma modeli seçmek için farklı göstergelerin testinin sonuçlarını rapor ediyorum. Test 17 gösterge içeriyordu: Logloss; BalancedErrorRate; LogLikelihoodOfPrediction; WKappa; Kappa; BrierScore; Sıfır Bir Kayıp; Kesinlik; Dengeli Doğruluk; MM; kesinlik; aramak; F1; EAA; Menteşe Kaybı; Hamming Kaybı; CrossEntropy, Logloss varsayılandır. Teknik basittir, eğitim, test ve son kontrol için aynı örnekler üzerinde CatBoost'u aynı ayarlarla çalıştırıyoruz, eğitimde yer almayan son kontrol için sayısal göstergeler dosyadan alınıyor. Her gösterge için, 1'den 8'e kadar farklı boyutlarda 8 ağaç oluşturulur, bu da kümeden iyi değerleri seçme yeteneğinin ortalamasını alır ve ayrıca ağaçların boyutunu değiştirmenin anlamını belirlemek için kullanılır. Eğilim hareketinin hedefi açısından stratejileri büyük ölçüde farklılık gösteren eğitim için 4 hedef kullanılır. Her bir göstergenin sonuçları aşağıdaki tabloda özetlenmiştir:



Bazı göstergelerin birbiriyle tamamen örtüştüğü, gruplar halinde toplandığı ortaya çıktı - gösterge grubunun tanımlayıcısı yeşil renkte gösterilir.


Aşağıda, göstergenin maksimum ve minimum değerlerinin vurgulandığı ve tüm numunedeki tepe göstergelerinin renkli olarak işaretlendiği her gösterge için bir özet tablo bulunmaktadır.

Aşağıda, her bir göstergenin ortalama karı için bir özet tablo bulunmaktadır, bu, tüm hedef seçenekler için - maksimum ortalama miktar için evrensel bir gösterge belirleme seçeneğidir.



Daha önce yazdığım gibi, alınan verilerden en iyi göstergeyi seçmek için formülümü bu veriler üzerinde eşzamanlı olarak test ettim - "% Tümü *% 1", testlere katılan her gösterge için sonuçlar böyle bir tabloda özetlendi.

Bu yaklaşım, aşağıdaki tabloda gösterilen her bir gösterge için Seçim Katsayısı göstergelerinin toplamına göre sıralama yapmayı mümkün kılmıştır.

İlginç bir şekilde, ilk derecedeki "Hassasiyet" reytinginde favori en sondaydı, bu da evrensel olmadığını, aksine performansının ilk hedef için çok başarılı olduğunu gösteriyor.

Bu katsayının her bir gösterge tablosundan hangi seçenekleri seçtiğini de değerlendirebilir ve bu göstergelerin toplamına göre derecelendirmeye bakabilirsiniz.

Özetle, sonuçları bir pivot tabloda toplayabilir ve yerlerin puanlarını toplayabilirsiniz - bu metrikten daha azına sahip olan daha iyi olabilir.

Logloss'un daha çok ortalama bir gösterge olduğu ve model seçimi için en iyi gösterge olmadığı sonucuna varılabilir, aynı zamanda farklı TS'ler eğitilmiş modellerin seçilmesi için farklı yöntemler gerektirebilir. Bu nedenle, örneğin hedefte (columns_100) daha dengeli bir örnek için, Kesinlik idealdir, ancak dengesiz bir örnekte, örneğin %20 (columns_200) ve hedef "1"den daha az, işler çok iyi gidiyor onun için kötüydü ve bu konuda mükemmel bir iş çıkaran HingeLoss'u kullanmak mantıklı. Belki de en dengeli olanı Geri Çağırma göstergesiydi - zemini aramak için kullanılabilir, sanırım öyle. Doğruluk gibi bir göstergenin son derece güvenilmez ve dengesiz olduğu ortaya çıktı, bir yandan en dengeli hedefle en iyi seçeneği bulabildi, ancak diğer yandan tüm ağaç seçeneklerinin ortalamasını başarıyla seçmedi. Sonuç olarak, dengesiz örnekleri aramada veya modeli ayarlamada pek iyi değildi.

 
Alexander_K2 :


Şu anda, trend kelimenin tam anlamıyla "dizimde" bulduğum gıpta edilen bir anahtar yardımıyla tuvalete kolayca ve nazikçe atılıyor.


Ne bulduğu ilginç.

 
Alexey Vyazmikin :

Harika testler, teşekkürler.

Tren/test hatası farkı hakkında herhangi bir bilgi var mı? Orada herhangi bir Doğruluk veya mantık, en popüler olanı almak yeterlidir

mesela şöyle bir şey

 2018.11 . 27 02 : 26 : 37.780 Core 2    2018.11 . 23 23 : 59 : 59    RlMonteCarlo TRAIN LOSS
2018.11 . 27 02 : 26 : 37.780 Core 2    2018.11 . 23 23 : 59 : 59    0.19023
2018.11 . 27 02 : 26 : 37.780 Core 2    2018.11 . 23 23 : 59 : 59    RlMonteCarlo TEST LOSS
2018.11 . 27 02 : 26 : 37.780 Core 2    2018.11 . 23 23 : 59 : 59    0.43959

sağ tren sol testi:

Modelin genelleme yeteneğiyle ve aşırı uyumla mücadele etmek için ne tür özelliklerin bulunduğuyla ilgileniyorum. Bakıyorum, çabucak başıboşta ustalaştılar. Sonunda gerçek bir konuşma :)

 
Maksim Dmitrievski :

Harika testler, teşekkürler.

Tren/test hatası farkı hakkında herhangi bir bilgi var mı? Orada herhangi bir Doğruluk veya mantık, en popüler olanı almak yeterlidir

mesela şöyle bir şey

sağ tren sol testi:

Modelin genelleme yeteneğiyle ve aşırı uyumla mücadele etmek için ne tür özelliklerin bulunduğuyla ilgileniyorum. Bakıyorum, başıboşta çabucak ustalaştılar. Sonunda gerçek bir konuşma :)

Catbust üç örnek kullanır - biri üzerinde eğitildiği bir test, ikincisi her modelin eğitimini kontrol etmek ve eğitim sürecinde elde edilen ve test verilerinde kararlı olduğu ortaya çıkan en iyi modeli seçmek ve üçüncüsü Seçilen modelle eğitimin tamamlanmasının ardından zaten işaretlenmiş olan inceleme örneği. Bir eğitim örneğinde gerçekten çok iyi öğrenebildiği için, bir test örneğindeki sonuçları bir eğitim örneğiyle karşılaştırmak anlamsızdır, ancak bir sınav örneğiyle yapılan bir test anlamlıdır. Ancak tüm bunları Excel'de manuel olarak işlediğim için, test örneğinin sonuçlarını kontrol etmek için gücüm yeterli değildi. Tabii ki, modeli değerlendirmek için bu tür verilere ihtiyaç var ve bunları dikkate almaya ve analiz etmeye değer, ancak şu ana kadar süreç otomatik değil (kurulumu işlemeye hazırlamak için bir komut dosyası yazmaya başladım - hala analizden uzak) ve herhangi bir sayı hakkında konuşamam.

Eğitimi süper iyi performansta durdurma yöntemleri dışında, aşırı takma ile başa çıkmak için herhangi bir özel yöntem fark etmedim ... algoritmanın kendisinde kapatılabilecek belirli bir rastgelelik var - bu aynı zamanda seçmemenizi de sağlar. ağacın dallanması için en iyi tahmin ediciler, bu da yeniden eğitimin önlenmesine yardımcı olacaktır.

Şimdi, tahmin edicileri bölümler halinde sunmak ve ne olduğunu görmek istiyorum, çünkü model hala ağaç oluşturma açgözlülüğü ilkesine sahip ve bu bazen daha iyi sonuçlar elde etmesini engelliyor.

 
Alexey Vyazmikin :

Catbust üç örnek kullanır - biri üzerinde eğitildiği bir test, ikincisi her modelin eğitimini kontrol etmek ve eğitim sürecinde elde edilen ve test verilerinde kararlı olduğu ortaya çıkan en iyi modeli seçmek ve üçüncüsü Seçilen modelle eğitimin tamamlanmasının ardından zaten işaretlenmiş olan inceleme örneği. Bir eğitim örneğinde gerçekten çok iyi öğrenebildiği için, bir test örneğindeki sonuçları bir eğitim örneğiyle karşılaştırmak anlamsızdır, ancak bir sınav örneğiyle yapılan bir test anlamlıdır. Ancak tüm bunları Excel'de manuel olarak işlediğim için gücüm test örneğinin sonuçlarını kontrol etmeye yetmedi. Elbette, modeli değerlendirmek için bu tür verilere ihtiyaç vardır ve bunları dikkate almaya ve analiz etmeye değer, ancak şu ana kadar süreç otomatik değil (kurulumu işlemeye hazırlamak için bir komut dosyası yazmaya yeni başladım - hala analizden uzak) ve herhangi bir sayı hakkında konuşamam.

Eğitimi süper iyi performansta durdurma yöntemleri dışında, aşırı takma ile başa çıkmak için herhangi bir özel yöntem fark etmedim ... algoritmanın kendisinde kapatılabilecek belirli bir rastgelelik var - bu aynı zamanda seçmemenizi de sağlar. ağacın dallanması için en iyi tahmin ediciler, bu da yeniden eğitimin önlenmesine yardımcı olacaktır.

Şimdi, tahmin edicileri bölümler halinde sunmak ve ne olduğunu görmek istiyorum, çünkü model hala ağaç oluşturma açgözlülüğü ilkesine sahip ve bu bazen daha iyi sonuçlar elde etmesini engelliyor.

evet, sadece çileden çıkarıyor, TS'nin geliştirilmesinden daha fazla zaman alan sonsuz entegrasyonlar. Ben de python'dan almak isterim ama şu ana kadar zaman yok

 
Maksim Dmitrievski :

evet, sadece çileden çıkarıyor, TS'nin geliştirilmesinden daha fazla zaman alan sonsuz entegrasyonlar. Ben de bir pitondan almak isterim ama şu ana kadar zaman yok

Evet, python ile değilim, catbust'un konsol versiyonunun olması gerçekten hoşuma gitti, bu yüzden MT5 ile arkadaş olmak istiyorum.

 
Alexey Vyazmikin :

Evet, python ile değilim, catbust'un konsol versiyonunun olması gerçekten hoşuma gitti, bu yüzden MT5 ile arkadaş olmak istiyorum.

hemen hemen herkesin konsolları vardır, onlarla çalışmak elverişsizdir

 
Maksim Dmitrievski :

hemen hemen herkesin konsolları vardır, onlarla çalışmak elverişsizdir

Başka kimde olduğunu bilmiyordum?

Neden uygun değil - MT5'te ayarları ve parametre numaralandırmasını uygulayabileceğiniz bir komut dosyası olacak - python veya R'deki saf koddan herhangi bir şekilde daha iyi.

Catboost, benim de dikkatimi çeken grafik çiftlikleriyle nasıl çalışacağını biliyor.

 
Alexey Vyazmikin :

Başka kimde olduğunu bilmiyordum?

Neden uygun değil - MT5'te ayarları uygulayabileceğiniz ve parametreleri numaralandırabileceğiniz bir komut dosyası olacak - herhangi bir şekilde saf python veya R kodundan daha iyi.

Catboost, benim de dikkatimi çeken grafik çiftlikleriyle nasıl çalışacağını biliyor.

tüm gelişmiş ML kitaplıkları için, çünkü bu sadece artı tarafta

MO ile düşük seviyeli dillerde çalışmak, özellikle araştırma yapmak uygun ve uzun değil