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

 
Aleksey Nikolayev #:

Belirlenen kutularla ne yapılacağı sorusunun karmaşık olduğunu ve olası tüm durumlar için açık ve net kurallara sahip olmadığını düşünüyorum. İyi, iyi düşünülmüş bir algoritma muhtemelen oldukça gizli bir "know-how "dır).

Vakalar aynı tahmin ediciler kümesinde elde edilmişse, kesişmemeleri muhtemelen yeterlidir. Bir kesişme varsa, ayrı bir kutuya tahsis edilebilir ve tamamlayıcıları birkaç kutuya bölünebilir. Ancak, çok fazla sayıda kutu örneği çok fazla parçalayacaktır. Bu nedenle, kutu kavramını genelleştirebiliriz - kurallar dilinde bu, VE'ye olumsuzluk ve VEYA eklemek anlamına gelir.

Kutular tamamen farklı tahmin edicilerle elde edilirse (örneğin, rastgele orman yöntemiyle), o zaman yalnızca örneklemin içlerine düşen kısımları anlamında örtüşebilirler. Burada muhtemelen bazı portföye yakın fikirlere ihtiyaç vardır.

Tahmin kümeleri kısmen örtüşüyorsa, o zaman yaklaşımların bir karışımı olmalı, kesin olarak söylemek zor.

Bunun birleşik bir şemaya nasıl yerleştirilebileceği benim için açık değil. Karar ağaçlarını basit ve "güzel" bir şekilde oluşturmanın standart yolu bu sorunları atlatır, bu da onu bizim amaçlarımız için pek uygun kılmaz. Bir budama algoritması seçerek bunu iyileştirmek mümkün olabilir, ancak bence kural oluşturma algoritmasını yaratıcı bir şekilde yeniden işlemek daha iyidir.

En akıllıca sonuçlar...

Kullanıma hazır algoritmalar sadece yaklaşık kurallara sahiptir, yani aşağıdaki gibi aptalca kurallar:

X[1]>0.5 && X[3]> -0.2 &...

Yalnızca değişkenleri (matrisin sütunları veya X1.....X10 çerçevesi) ve sınıflarda sınırlar oluşturmayı öğrenme sürecinde kendisinin icat ettiği soyut sınırları (X[1]>0.5 rakamları) vardır.

Peki ya önemsiz X1 > X2

veya X1 !> X2'nin olumsuzlaması.

Peki ya X1> (X2*X3)?

Ve durağan olmayan piyasada çalışmayan endekslere bağlanma?


Şu ifadeyi kastediyorum: "A" varsa ama " B" yoksa o zaman " C".

Bu sadece kutudan çıkan algoritmalar için değil.

Algoritma aynı forrest sadece yüzlerce kural yaratıyor ve bunların sınıf olasılıkları toplamına bakıyor. Piyasada nadir olaylarla ilgileniyoruz, bu yüzden kural sayısına değil, kural sayısına geçmemiz gerekiyor.

 

Boyutsallık azaltma algoritmasının normalizasyonlu ve normalizasyonsuz farklı veri türlerine sahip örnekleri nasıl gördüğünü merak ediyorum

Örneğin, string ve digits veri tipleri var.

q1           q2
1    c -1.630015623
2    c  1.781979246
3    b -0.598134088
4    a -0.611477494
5    b -0.347432530
6    b -0.474427356
7    e -1.048827859
.....

Önce q1'i rakamlara dönüştürüyorum.

q1           q2
1    3 -1.630015623
2    3  1.781979246
3    2 -0.598134088
4    1 -0.611477494
5    2 -0.347432530
6    2 -0.474427356
7    5 -1.048827859

.... 

bitti

Şimdi bunu UMAP algoritmasına gönderiyoruz ve özvektörleri elde ediyoruz.

                  [,1]         [,2]
    [1,]   6.762433406   9.08787260
    [2,] -21.488330368  10.67183802
    [3,]   6.810413818   9.35273386
    [4,] -20.950310976  15.20258097
    [5,]  32.100723691  -9.74704393
    [6,]   6.892939805  16.84639975
    [7,] -17.096480607  -6.63144430

noktaları görselleştirin

Güzel solucanlarımız var ))

Noktaları q1 değişkeni ile renklendirmeye çalışalım.


Gördüğümüz gibi q1 değişkeni bu solucanların yapısını oluşturuyor, bir nevi önemi kendi üzerine çekiyor ve q2 değişkeninin katkısını azaltıyor.

Bunun nedeni q1 değişkeninin büyük değerlere sahip olması ve verilerin normalize edilmemiş olmasıdır.

Verileri normalize edersek, her değişken aynı katkıyı yapacak ve şu sonuçları elde edeceğiz

Bazı katılımcılar için bunun bariz bir şey olduğunu anlıyorum, normalleşmemiz gerekiyor falan filan,

Ancak değişkenlerin katkısını artırarak veya azaltarak kümelenmeyi kontrol edebileceğinizi hiç düşündünüz mü?

 
mytarmailS #:

noktaları görselleştirin


Parazitlere benziyor :)

 
mytarmailS #:

Peki değişkenlerin katkısını artırarak veya azaltarak kümelenmenin kontrol edilebileceğini hiç düşündünüz mü?

Evet, önemi kasıtlı olarak fazla ya da az göstererek.
Ama bu bir sanat, analiz etmesi zor.
Fiyatların durağan olmaması durumu daha da kötüleştiriyor, uzun süredir işaretlerle savaşıyorum: ölçeği veya normalleştirmeyi değiştirirseniz, eğitilmiş modelin özellikleri değişiyor.
 
Maxim Dmitrievsky #:
Sabit olmayan fiyatlarla, uzun zamandır işaretlerle savaş halindeyim.
Hepimiz savaşıyoruz.
 
mytarmailS Boyutsallık azaltma algoritmasının normalizasyonlu ve normalizasyonsuz farklı veri türlerine sahip örnekleri nasıl gördüğünü merak ediyorum

Örneğin, veri, dize ve rakam türleri vardır.

Önce q1'i rakamlara dönüştürüyorum

Dizeleri sayısal yerine kategorik forma dönüştürmek daha iyidir. Tabii ki UMAP'ınız bunları işleyebiliyorsa.

a=1, e=5'ten 5 kat farklı değildir. Sadece farklıdırlar, sıcak ve yumuşak gibi. Ve onları sayısallaştırarak, daha sıcak ve daha sıcak hale getirdiniz.

 
elibrarius #:

a=1, e=5'ten beş kat farklı değildir. Sadece farklıdırlar,

Hmm, evet, kesinlikle haklısın, aptallık ettim.

Tek bir sıcak dönüşüm ya da onun gibi bir şey yapmalısın.
 
Aleksey Nikolayev #:

Belirlenen kutularla ne yapılacağı sorusunun karmaşık olduğunu ve olası tüm durumlar için açık ve net kurallara sahip olmadığını düşünüyorum. İyi, iyi düşünülmüş bir algoritma muhtemelen oldukça gizli bir "know-how "dır).

Vakalar aynı tahmin ediciler kümesinde elde edilmişse, kesişmemeleri muhtemelen yeterlidir. Bir kesişme varsa, ayrı bir kutuya tahsis edilebilir ve tamamlayıcıları birkaç kutuya bölünebilir. Ancak, çok fazla sayıda kutu örneği çok fazla parçalayacaktır. Bu nedenle, kutu kavramını genelleştirebiliriz - kurallar dilinde bu, VE'ye olumsuzluk ve VEYA eklemek anlamına gelir.

Kutular tamamen farklı tahmin edicilerle elde edilirse (örneğin, rastgele orman yöntemiyle), o zaman yalnızca örneklemin içlerine düşen kısımları anlamında örtüşebilirler. Burada muhtemelen bazı portföye yakın fikirlere ihtiyaç vardır.

Tahmin kümeleri kısmen örtüşüyorsa, o zaman yaklaşımların bir karışımı olmalı, kesin olarak söylemek zor.

Bunun birleşik bir şemaya nasıl yerleştirilebileceği benim için açık değil. Karar ağaçlarını basit ve "güzel" bir şekilde oluşturmanın standart yolu bu sorunları atlatır, bu da onu bizim amaçlarımız için pek uygun kılmaz. Bir budama algoritması seçerek bunu iyileştirmek mümkün olabilir, ancak bence kural oluşturma algoritmasını yaratıcı bir şekilde yeniden işlemek daha iyidir.

Ayrıntıları anlamadan mantıkta değişiklik yapmak zordur.

Şahsen ben, kutunun ek 2 koordinatının ne olduğunu anlamadım (2 - kuantum sınırları) - bunun bir örnek kırpma olduğunu varsaydım.

Sadece yöntemimi geliştirmek için yararlı bir şey arıyorum. Ben de "kutuları" yapıştırıyorum - ama algoritma mükemmel değil.

 
Aleksey Vyazmikin #:

İşte böyle, ayrıntıları anlamadan mantıkta değişiklik yapmak zordur.

Şahsen ben, kutunun ilave 2 koordinatının ne olduğunu anlamadım (2 - kuantum sınırları) - bunun bir örnek kırpma olduğunu varsaydım.

Sadece yöntemimi geliştirmek için faydalı bir şey arıyorum. Ben de "kutuları" yapıştırıyorum - ama algoritma mükemmel değil.

Özellikle PRIM'den bahsediyorsanız, verdiğim bağlantıda x1 ve x2 olmak üzere iki tahmin edici için nasıl çalıştığına dair bir örnek verilmiştir. Buna göre, (a1<x1<b1)&(a2<x2<b2) şeklinde bir kutu seçilir. Kutunun dışında kalanların, içinde kalanlardan farklı bir sınıfa ait olduğu düşünülmektedir.Algoritmanın özünü basit bir örnekle gösterme girişimi vardı- her adımda kutudan küçük bir parça kesmek (soymak). Hangi parçanın kesileceği ve hangi tahmincinin kullanılacağı "yörünge" adımının optimal olma koşuluna göre belirlenir.

Bu algoritma, kurallar oluşturmak için standart bir algoritmanın (bir çözüm ağacı için) kişinin ihtiyaçlarına uyacak şekilde nasıl değiştirilebileceğinin ve değiştirilmesi gerektiğinin bir örneği olarak ilgimi çekti.

 
Aleksey Nikolayev #:

Özellikle PRIM'den bahsediyorsanız, verdiğim bağlantıda x1 ve x2 olmak üzere iki tahmin edici için nasıl çalıştığına dair bir örnek verilmiştir. Buna göre, (a1<x1<b1)&(a2<x2<b2) şeklinde bir kutu seçilir. Kutunun dışında kalanların, içinde kalanlardan farklı bir sınıfa ait olduğu düşünülmektedir.Algoritmanın özünü basit bir örnekle gösterme girişimi vardı- her adımda kutudan küçük bir parça kesmek (soymak). Hangi parçanın kesileceği ve hangi tahmincinin kullanılacağı "yörünge" adımının optimal olma koşuluna göre seçilmektedir.

Bu algoritma, kurallar oluşturmak için standart bir algoritmanın (bir çözüm ağacı için) kişinin ihtiyaçlarına uyacak şekilde nasıl değiştirilebileceğinin ve değiştirilmesi gerektiğinin bir örneği olarak ilgimi çekti.

Bunu çözmüş olmanız güzel - ilk başta anlamamıştım, açıklama için teşekkürler.

Ancak, daha sonra ilk aşamadaki algoritmanın kutulara daha iyi ayrılacak tahminci çiftlerini bulması ve ardından bunlara "soyma" uygulaması gerektiği ortaya çıktı.