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

 
Evgeni Gavrilovi catboost için özel ölçümlerin nasıl yapılacağını söyleyebilir mi, Sharp'a ihtiyacım var.

Benim versiyonumla bir modeli eğitmenin sonucu RMSE ile neredeyse aynı, bu yüzden kodun bir yerinde bir hata var.

preds ve target (a[i]-a[i+1]) olarak döndürülür

Python veya katbusta hakkında fazla bilgim yok, ama aptalca sorular soracağım)

1) Veri nedir, ortalama neden preds'den değil?

2) Görünüşe göre gradyan bousting için gradyan ve hessian için daha fazla formül belirtmeniz gerekiyor?

 
Aleksey Nikolayev #:

Ne python ne de catbusta hakkında fazla bilgim yok, ama aptalca sorular soracağım)

1) Veri nedir, ortalama neden preds'den değil?

2) Görünüşe göre gradyan bousting için gradyan ve hessian için formüller belirtmeniz gerekiyor?

Görünüşe göre evet, bir şeyi atlamışım. Resmi sitedeki şablonu kullandım https://catboost.ai/en/docs/concepts/python-usages-examples.

data - model tahminlerinin oluşturulan listesi, Sharpe'ın ortalaması için aritmetik ortalamalarını hesaplamak için negatif değerleri pozitif olanlara dönüştürdüm

 
Evgeni Gavrilovi #:

veri - model tahminlerinin oluşturulan listesi, negatif değerler Sharpe'ın ortalaması için aritmetik ortalamalarını hesaplamak üzere pozitif değerlere dönüştürüldü

Neden? Sharpe için orijinal işaretlerle ortalama hesaplanır.

 
Aleksey Nikolayev #:

Neden? Sharpe için, orijinal işaretlerle ortalama dikkate alınır.

Satış emirlerini de hesaba katmak için, diyelim ki -0,002 (20 pip) ve +0,003 (eksi - kısa, artı - uzun) olmak üzere 2 doğru tahmin var.

Kâr +0,005, ortalama 0,0025 ve işareti değiştirmeden 0,0005 olacaktır.


Özel bir metriğin kendi kayıp fonksiyonunu gerektirdiği ortaya çıktı, benzetme yoluyla sınıfRmseObjective(object )
 
Evgeni Gavrilovi #:

Görünüşe göre evet, bir şeyi atlamışım. Resmi sitedeki şablonu kullandım https://catboost.ai/en/docs/concepts/python-usages-examples.

İki tür metrik vardır loss_function ve eval_metric. Muhtemelen ilkine ihtiyacınız var, buraya bakın https://catboost.ai/en/docs/concepts/python-usages-examples#user-defined-loss-function

Ama yanılıyor olabilirim. Burada benden daha iyi python uzmanları ve python övücüleri var) Belki onlar size daha çok yardımcı olurlar.

 
Evgeni Gavrilovi #:

Satış emirlerini de hesaba katmak için, diyelim ki -0.002 (20 pip) ve +0.003 (eksi - kısa, artı - uzun) olmak üzere 2 doğru tahmin var.

Kar +0,005, ortalama 0,0025'tir ve işareti değiştirmeden 0,0005 olacaktır.

Bu bir Sharpe olmazdı. Ayrıca, belki de sadece modülü almak değil, onu tahminin işaretiyle çarpmak gerekir (satıyorsa eksi birle, alıyorsa birle).

 
Evgeni Gavrilovi catboost için özel ölçümlerin nasıl yapılacağını söyleyebilir mi, Sharp'a ihtiyacım var.

Benim versiyonumla bir modeli eğitmenin sonucu RMSE ile neredeyse aynı, bu yüzden kodun bir yerinde bir hata var.

preds ve target (a[i]-a[i+1]) olarak döndürülür

Aldığınız değerleri yazdırın ve diğer metrikle karşılaştırın. Her iterasyon için ikisini birden yazdırın. Catbust erken durdurmada, maksimum özel ölçütü ve "en iyi modeli kullan=True" seçeneğini eklemeyi unutmayın. Verbose'u açabilirsiniz, her yinelemede metrik değerlerini kendi başına yazdıracaktır.
 
Maxim Dmitrievsky #:
Aldığınız değerleri yazdırın ve diğer metrikle karşılaştırın. Her iterasyon için ikisini birden yazdırın. Catbusta early stop'ta max user criteria ve "use best model=True" seçeneklerini etkinleştirmeyi unutmayın. Verbose'u etkinleştirebilirsiniz, her iterasyonda metrik değerleri yazdıracaktır.

Araştırma amacıyla (oldukça karmaşık olsa da) özel bir kayıp fonksiyonu ile yapmak ilginç olacaktır. Bunun için bir olasılık vardır (sayfanın başına atılırsanız, en altta Kullanıcı tanımlı kayıp fonksiyonu bölümünü bulmanız gerekir).

Usage examples
Usage examples
  • catboost.ai
Regression CatBoostRegressor class with array-like data.
 
Aleksey Nikolayev #:

Araştırma amacıyla (oldukça karmaşık olmasına rağmen) özel bir kayıp fonksiyonu yapmak ilginç olacaktır. Bunun için bir olasılık var (sayfanın başına atılırsanız, en altta Kullanıcı tanımlı kayıp fonksiyonu bölümünü bulmalısınız).

Daha sonra deneyelim
 
Aleksey Nikolayev #:

Araştırma amacıyla (oldukça karmaşık olmasına rağmen) özel bir kayıp fonksiyonu yapmak ilginç olacaktır. Bunun için bir olasılık var (sayfanın başına atılırsanız, en altta Kullanıcı tanımlı kayıp işlevi bölümünü bulmanız gerekir).

Benim için xgboost.... ile çalışmadı
Daha doğrusu çalıştı, ancak eğitim işe yaramadı, orada gradyanlarla iyi arkadaş olmanız gerekiyor, fitness fonksiyonunu gradyan yapmanız gerekiyor, genetik ile çok daha basit