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

 
Sihirbaz_ :
"Gopher" bulamadım, berbat ettim))) Ve tüm bu egzersizler ne için ... "kalça" kim anlayacak.
Dürüst olmak gerekirse, anlamıyorum.........
 
mytarmailS :

peki, evet, ama kahretsin, bir şekilde doğru değil, bir kalite tahmincisi, hedefi iyi açıklayandır ve kendini açıklayan değil, xs, tahmin edicinin kalitesini karşılaştırmadan nasıl bulacağınız bana açık değil hedefle, benim için net değil ... .

Soruna hangi taraftan yaklaşılacağına bağlı. Başlangıçta istenen tahmin edicileri bilmiyoruz ve hedef değişken bilinmiyor. Ve başarılı ticaret için her ikisini de öğrenmeniz gerekir. Her ikisini de aynı anda bulmak işe yaramaz, bu nedenle hedef değişkeniniz için tahmin edicileri seçmeniz gerekir. Veya yüksek kaliteli tahminciler toplamak ve daha sonra bunlarla nelerin tahmin edilebileceğine dair deneyimlere bakmak.

İlk yaklaşım. Örneğin, bir hedef değişkenim var - bir sonraki çubuk için fiyat artışı/düşüş. İyi bir hedef değişken olduğu için değil, bir yerden başlamam gerektiği için ve daha kolay bir şey aldığım için aldım :) Sonra bir sürü gösterge aldım ve şimdi modele "büyümeyi/ "bir grup göstergeye" düşmek" . En azından bir şeyin ortaya çıkmasına sevindim, çünkü rastgele seçilen hedef değişkenin hiç tahmin edilebilir olduğuna dair bir garanti yok ve tahmincilerimin onu tahmin etmek için yeterli bilgi taşıdığına dair bir garanti yok. Bu durumda ForeCA, verileri nöronun öğrenmesinin daha kolay olacağı bir forma getirmek için yalnızca verileri önceden işlemeye hizmet eder. Örneğin, bunun yerine veriler normalleştirilebilir veya bitişik değerlerin deltaları alınabilir veya bunlardan PCA bileşenleri yapılabilir vb. Bütün bunlar nöronun çalışmasını kolaylaştırır, bu tür önceden işlenmiş verilerden öğrenmek daha kolaydır. Bu durumda, ForeCA'nın aynı sınıfları bir şekilde gruplaması gerekir. Ancak ForeCA'nın bu konuda yardımcı olacağı bir gerçek değil, zaten şanslı, mevcut tahmin edicilere ve hedef değişkene bağlı.
Kısacası, bu durumda, hep birlikte mucizevi bir şekilde en azından bir miktar tahmin yeteneğine sahip olan hedef değişken için bir model ve tahmin ediciler seçilir.

Başka bir yaklaşım. Bir sürü tahminci alın, bunları "güvenilirliğe" göre sıralayın ve gereksiz ve önemli olmayanları kaldırın. Örneğin, gösterge her zaman sabit bir değere sahipse, açıkça işe yaramaz. Tahmin edici, random() işlevi tarafından oluşturulmuşsa, o da işe yaramaz. Ve böylece, gerçekten biraz bilgi taşıyan bu tahmin edicileri bırakmak önemlidir. Bu konuda çok az şey biliyorum, hatırladığım tek şey, yeterli bir tahmin gibi görünen PCA bileşeni (şapkadaki pruneSig parametresi) için öngörücünün önemini nasıl bulacağım. Bu durumda ForeCA, pirzolalardan sinekleri ayıklamalı ve güvenilir tahmin ediciler bulmaya yardımcı olacaktır. Tüm bu paketlerin neyin önemli olup neyin olmadığını nasıl bildiği bir muammadır, ancak gürültülü ve rastgele tahmin ediciler bulup onları reddederler. İyi bir tahmin edici, rastgele olmayan ve gürültü olmayan bir tahmin edici olacaktır.
Ayrıca, bir dizi yüksek kaliteli tahminciye sahip olmak, bir şeyi tahmin etmek için onları denemeniz gerekir. Örneğin, bir kohonen haritası oluşturabilir, kohonen haritasında piyasa davranışının sınıfa bağımlılığını bulabilirsiniz. Hangi sınıfların ticaretinin yapılacağı ve hangilerinin yapılmayacağı hakkında sonuçlar çıkarın ve böylece kendiniz için yeni bir hedef değişken oluşturun. Hedef değişken, mevcut tahminciler tarafından oldukça tahmin edilebilir olacaktır, çünkü üzerlerine inşa edilmiştir, her şey kulağa hoş geliyor, ancak burada çok fazla sorun ve hile olacağını düşünüyorum.

 
Dr.Tüccar :

Soruna hangi taraftan yaklaşılacağına bağlı. Başlangıçta istenen tahmin edicileri bilmiyoruz ve hedef değişken bilinmiyor. Ve başarılı ticaret için her ikisini de öğrenmeniz gerekir. Her ikisini de aynı anda bulmak işe yaramaz, bu nedenle hedef değişkeniniz için tahmin edicileri seçmeniz gerekir. Veya yüksek kaliteli tahminciler toplamak ve daha sonra bunlarla nelerin tahmin edilebileceğine dair deneyimlere bakmak.

İlk yaklaşım.....

Başka bir yaklaşım....

Çeşitli yaklaşımlar var ama ticaret yapacak mıyız?

Neyin ticaretini yapacağız?

akım?

Sapma?

Seviye?

Aynı zamanda sadece iki siparişimiz olduğunu da unutmayız - AL/SAT. Ya da biraz çeşitlilik? AL pazarına girin / AL pazarından çıkın / SAT pazarına girin / SAT pazarından çıkın

İşte hedef değişkenin varyantları.

Daha ileri.

Ticaret yaptığımız şey için bir hedef değişken oluşturabilir miyiz?

Yoksa hedef ile ticaret sistemi fikri arasında bir hata mı var, bir tür boşluk mu var?

Vb.

Ama ticarete NE ile başlamalıyız.

 
Michael Marchukajtes :
v2 değişkenini gecikmenizle çarpmanız ve v3 ile bölmeniz gerekir.
Bu tür sütunlarla (v2; gecikme v2 (Gecikme1_v2); v3; v11 (hedef) ve v2*Gecikme1_v2/v3 formülüne sahip bir sütun içeren 10 satır göster)

v2;Gecikme1_v2;v3;v11(hedef);v2*Gecikme1_v2/v3

Dosya içeren arşivin yüklenmesi gerekmez.
 
Michael Marchukajtes :
Gecikme ağı görmüyor.
boş satırları kes ve istediğin yere koy...
 

San Sanych Fomenko :

Tam olarak ne ticaret yapacağınızı bilin. Pek çok seçenek var, ancak yine öngörülemeyen bir şey seçebilir ve öngörülemezliği öğrenmek için çok zaman harcayabilirsiniz. Mevcut tahmin edicilerde tahmin edilmesi daha kolay bir şey seçmeniz gerekir. Bunu nasıl yapacağınız hakkında çok düşünmelisiniz.

ForeCA ile tahmin yapmak için bir test kodu yaptım. Son sütunda hedef değişkeni olan bir trainData tablosuna ihtiyacımız var. Eğitim / doğrulama için çizgilerle 2 parçaya bölünecektir (kesinlikle ortadan bölünecektir). Tahmini model lm tarafından alındı, nedense örneklerde her zaman PCA ile birlikte kullanılıyor, burada da yapacağını düşünüyorum. Koddaki lm(...) işlevini başka bir modelle değiştirmek mümkündür.
ForeCA, cov()'dan sonra tam sıralı bir matriste veri gerektirir. Bunu önceden kontrol eden ve düşük özdeğer sütunlarını kaldıran bir kod ekledim. Orada her şey bir döngü içinde ve uzun zaman alıyor ve muhtemelen daha basit hale getirilebilirdi. Bazı tahmincilerim bu şekilde elendi, bu iyi mi kötü mü bilmiyorum.
Henüz bir sonuç alamadım, paket 5 konser opreative yedi ve uzun bir süre düşündüm, dene, belki birileri iyi bir tahmin verebilir.

Dosyalar:
 
Sihirbaz_ :
Bu tür sütunlarla (v2; gecikme v2 (Gecikme1_v2); v3; v11 (hedef) ve v2*Gecikme1_v2/v3 formülüne sahip bir sütun içeren 10 satır göster)

v2;Gecikme1_v2;v3;v11(hedef);v2*Gecikme1_v2/v3

Arşiv dosyasının yüklenmesi gerekmez.
Dürüst olmak gerekirse, bu oyunun amacını anlamıyorum .... Girdi verilerinin aldatıcı olmayan dönüşümlerine dayalı bir çıktı değişkeni oluşturmak hiç mantıklı değil. Araç iyi çalışıyorsa, ağa ihtiyaç yoktur. Beni düşündüren başka bir şey de, optimizer eğitim dosyasını satır satır değil de karmaşık bir şekilde ele alırsa ne olur? Yalnızca sütunlar arasında değil, aynı zamanda herhangi bir sütunun geçmiş değerlerinde de bir ilişki aranır. Sonuç olarak, oldukça ilginç bir şey olduğu ortaya çıkabilir. Veri normalleştirmeye ek olarak, yalnızca normalleştirme formülünü değil, aynı zamanda aşağıdaki gibi ön işleme formülünü de veren veri ön işlemesi de gerçekleşecektir: Normalleştirmeden önce v2'yi lag1 v5 ile çarpmak gerekir, vb. O zaman aramanın çok daha ilginç olacağını düşünüyorum. Bunun yerine, ön işleme, bir tür ön optimize edici olan dönüşüm formülleri üretir. Sonra bu formülleri verilere uygularız, başka bir veri seti alırız ve modeli oluşturmak için zaten optimize ediciye göndeririz .... Bu senaryoyu nasıl beğendiniz .....???? Yalnızca sütunlar arasında değil, aynı zamanda geçmiş değerlerle ilişkiler arasında da bir tür çok boyutlu bağımlılık araması. Biri bana bunu MKUL'da nasıl organize edeceğimi söyleyebilir mi ???? deneyeceğim :-)
 
Örneğin, bir model oluşturmadan önce, girdilerin her birini MKUL optimizer tarafından çıktıya optimize ediyorum. Yani, bir fare kullanırsam, bir model oluşturmadan önce, eğitim aralığında makinenin bu tür parametrelerini mümkün olduğunca çok karlı sinyal verecek şekilde seçerim ve böylece her girişte hepsini içeri iterim. optimizer.... iiiiii.... model daha kararlı hale gelir. Girişte ve çıkışta çöple ilgili mesaj tamamen kayboluyor. model kararlı bir şekilde değiştirilir, ancak genellemenin yaklaşık %50'si veya biraz daha yüksektir, çünkü tahmin edicilerin her biri, MCL'de optimize edildiğinde, nadir bir durumda, %50'den fazla karlı işlem sayısı verir. Ama bunu her girdiyle ayrı ayrı yapıyorum ve temelde bu katılım için ortalama parametresi ve gecikme seçiliyor ve kesinlikle diğer girdilerle olan ilişki değil. Ancak, optimize edici ve yukarıda yazdıklarım tarafından bu bağlantı için bir arama düzenlemeyi varsayarsak. Ardından, veriler arasındaki ilişkinin parametrelerini alın. Bunları verilere uygulayın ve ancak bundan sonra hepsini optimize ediciye aktarın. O zaman mantıklı olacağını ve modelin uygun bir genelleme düzeyiyle sonuçlanması gerektiğini düşünüyorum. Ama henüz nasıl organize edeceğimi bilmiyorum ... Sanırım ... Herhangi bir fikri dinleyeceğim ...... MKUL'daki basit bir sinir ağının burada yardımcı olacağını düşünüyorum, bu da böyle bir şey inşa edecek. test setindeki tüm sinyalleri mümkün olduğunca doğru bir şekilde tanımlayacak ve böylece ana Reshetov optimize edicide (burada, kim ne üzerinde oturuyor) iyi bir model oluşturmaya yardımcı olacak bir eğri. MKUL'da basit ızgaralar var mı????
 
Dr.Tüccar :

ForeCA ile tahmin yapmak için bir test kodu yaptım.....

ben de .. Çabuk yapmaya karar verdim, süsen aldım, gürültülü 10 tahmin edici ekledim

ve sadece ormanı eğitti, ardından gürültülerle aynı tarihi aldı ve foreCA'yı kullanmak, boyutu 4 öngörücüye indirdi ve ormanı onlar üzerinde tekrar eğitti

sonuç:

sadece yeni verilerde orman

Prediction   setosa versicolor virginica

  setosa         16            0          0
  versicolor       0          15          1
  virginica       0            0          18

Overall Statistics

Accuracy : 0.98     

orman, verilerde gürültü olduğunu bile fark etmedi ...

ve foreca ile işler daha kötü

Prediction   setosa versicolor virginica
  setosa           6            6          4
  versicolor       5          10          1
  virginica       8            5          5

Overall Statistics
                                          
               Accuracy : 0.42 
Dosyalar:
code.txt  1 kb
 
mytarmailS :

ben de .. Çabuk yapmaya karar verdim, süsen aldım, gürültülü 10 tahmin edici ekledim

ve sadece ormanı eğitti, ardından gürültülerle aynı tarihi aldı ve foreCA'yı kullanmak, boyutu 4 öngörücüye indirdi ve ormanı onlar üzerinde tekrar eğitti

sonuç:

sadece yeni verilerde orman

orman, verilerde gürültü olduğunu bile fark etmedi ...

ve foreca ile işler daha kötü

Gerçek iyidir, ama mutluluk daha iyidir!

Doğru = %42, oh-oh-oh, depo üzerinde olumlu bir etkisi var.

Mutlu yaşayabilirsiniz ama sıfır depo ile

Neden: