トレーディングにおける機械学習:理論、モデル、実践、アルゴトレーディング - ページ 1605

 
mytarmailS:

GMDHの 用語では、あなたがやっていること(「第3の」サンプルでのテスト)を「予測力基準」と呼びます。

専門家としての腕の見せ所ですね。数学者でなくてもわかるように、GMDHのエッセンスを一言で表現してください。

 
secret:

あなたが優秀なスペシャリストであることがよくわかります。MGUAを数学者以外の人に向けて、一言で表現してください。

異なるカーネル(多項式、スプライン、その他)で変換された特徴の列挙を伴う回帰 モデル。最も単純で誤差の少ないモデルが望ましい。市場での過剰訓練から救われない。

大雑把に言えば、外的な基準で最も単純なものを選ぶブルートフォースモデルである

機械学習の基礎のようなものです。)

 
mytarmailS:

例えば、MSUA回帰は、最新のランダムフォレストアルゴリズムの回帰を単純に模倣したものであり、ブースティング...

ブーストは全てにおいて優れているので、MSUAのように機能を用意すればもっと良くなると思います。

を教えればいいのだ。

 
秘める

あなたが優秀なスペシャリストであることがよくわかります。数学者以外の方に向けて、MSUAのエッセンスをひと言で表現していただけますか?

私は全く専門家ではないのですが )) 残念ながら...。

ごく簡単に、大雑把に、不正確に言えば、MGUAの原理は自己組織化である...。


例えば、属性セット

x1,x2,x3....x20...

これらの属性から、候補となるモデルの集合を作成します。

m1,m2,m3......m10.............。

その中からベストなものを選び、ベストなものから新しいモデルを作り、また選び......。など...というように、新しいデータ(アルゴリズムにとって以前は未知)の誤差が小さくなるまで

ほら、アルゴリズムが自ら変化して、より複雑になり、自己組織化していく...。遺伝的アルゴリズムに ちょっと似ていますね。

 
マキシム・ドミトリエフスキー

異なるカーネル(多項式、スプライン、その他)で変換された特徴量の列挙を伴う回帰モデル。最も単純で誤差の少ないモデルが望ましい。市場での過剰訓練から救われない。

大雑把に言うと、外的な基準で最も単純なモデルを選ぶというブルートフォースメントです。

では、この方法論に新しさや独創性はないかというと、そうではありません。

 
mytarmailS:

その中から最適なモデルを選び、さらに最適なモデルを使って新しいモデルを作り、また選ぶ......。など...というように、新しいデータ(アルゴリズムには未知)の誤差が減少するまで、繰り返します。

ほら、アルゴリズムが自ら変化して、より複雑になり、自己組織化していく...。遺伝的アルゴリズムに ちょっと似ていますね。

それから、ここには数学は出てきません。もっと頭脳労働、まあ、コーディングですね。GAなんて些細なことです。

もし、その中に幼稚園の頃から直感的に理解できる原始的なものがあるのなら、それらを理解することが不可能なように、なぜ、すべての人がこのMGUAで走り回り、論文を書くのでしょうか。

 
マキシム・ドミトリエフスキー

ブーストは何でも得意なんだから、MGUAのように機能を用意すればもっと良くなるはずだ。

とはいえ、何を教えたらいいのかわからないのでは意味がない

私はそうは思わないが...。

目視で簡単にテストしてみましょう )


1000個の要素を持つ4つの変数(通常のランダム)をそれぞれ作成する

z1 <- rnorm(1000)

z2 <- rnorm(1000)

z3 <- rnorm(1000)

z4 <- rnorm(1000)

ターゲット変数yを 4つの合計として作成する。

y <- z1+z2+z3+z4


ブースティングとムグァを鍛えましょう、予測でもなく、ただ無理やり説明するために

サンプルを3つのチャンクに分け、1つのトレーニング2つをテストに使用しました


緑色の MGUAで

赤字:一般化 ブースト 回帰モデリング(GBM)

グレーはオリジナルデータ

ターゲットはすべての予測変数の素数和であることを忘れないでください。

http://prntscr.com/rawx14

このように、どちらのアルゴリズムも非常によくタスクに対処しています。


ここで、少し複雑な作業を行う

累積和やトレンドをデータに加える

z1 <-cumsum(rnorm(1000))

z2 <-cumsum(rnorm(1000))

z3 <- rnorm(1000)

z4 <- rnorm(1000)

という形でターゲットを変更します。

y <- z1+z2+z3

ということで、トレンドのある予測因子2つと通常の予測因子1つを足し合わせると、z4は対象yに 含まれないのでノイズであることがわかります。

ということで、次のような結果が得られます。

http://prntscr.com/rax81b

ブーストがめちゃくちゃだしMSUAは関係ないだろ。


このワイルドなターゲットでMSUAだけを「殺す」ことに成功しました。

y <- ((z1*z2)/3)+((z3*2)/z4)

また、それでも完全ではありませんが、ブーストはどうでしょうか?)))

http://prntscr.com/raxdnz


ゲームコード

set.seed(123)
z1 <- cumsum(rnorm(1000))
z2 <- cumsum(rnorm(1000))
z3 <- rnorm(1000)
z4 <- rnorm(1000)

y <- ((z1*z2)/3)+((z3*2)/z4)

x <- cbind.data.frame(z1,z2,z3,z4) ; colnames(x) <- paste0("z",1:ncol(x))

tr <- 1:500
ts <- 501:800
ts2<- 801:1000

library(gbm)
rf <- gbm(y[tr] ~ ., data = x[tr,],
          distribution = "gaussian", n.trees = 1000,
           cv.folds = 5)
best.iter.max <- gbm.perf(rf, method = "cv")
prg <- predict(rf,x[c(tr,ts,ts2),],n.trees = best.iter.max)

library(GMDHreg)
gmd <- gmdh.gia(X = as.matrix(x[tr,]),y = y[tr],prune = 5,
                    criteria = "PRESS")
prh <- predict(gmd,as.matrix(x[c(tr,ts,ts2),]))

par(mfrow=c(1,3))
plot(head(y[tr],30),t="l",col=8,lwd=10,main = "train ")
lines(head(prg[tr],30),col=2,lwd=2)
lines(head(prh[tr],30),col=3,lwd=2)
plot(head(y[ts],30),t="l",col=8,lwd=10,main = "test ")
lines(head(prg[ts],30),col=2,lwd=2)
lines(head(prh[ts],30),col=3,lwd=2)
plot(head(y[ts2],30),t="l",col=8,lwd=10,main = "test2 ")
lines(head(prg[ts2],30),col=2,lwd=2)
lines(head(prh[ts2],30),col=3,lwd=2)


Скриншот
Скриншот
  • prnt.sc
Снято с помощью Lightshot
 
秘める

それから、ここには数学は出てきません。もっと頭脳労働、まあ、コーディングですね。GAなんて些細なことです。

もし、その中に幼稚園の頃から直感的に理解していた原始的なものがあるのなら、なぜみんなこのMSUAを持って走り回り、理解できないように論文を書いているのだろうか。

わからないが、データをよりよく記述している、ポストが書かれた、コードが投稿された

 
mytarmailS:

私はそうは思わないが...。

小さなテストをしてみましょう、素早く、目で見て )

Rをいじりたくない(pythonを使っている)、MSUAがfey regressorを作るから、それが合うから、という理由かもしれません。ブースティングで同じ選択をした場合、差は生じません

以下は、ある森のMSUA列挙である。

https://www.mql5.com/ru/code/22915

RL algorithms
RL algorithms
  • www.mql5.com
Данная библиотека имеет расширенный функционал, позволяющий создавать неограниченное количество "Агентов". Использование библиотеки: Пример заполнения входных значений нормированными ценами закрытия: Обучение происходит в тестере...
 
マキシム・ドミトリエフスキー

Rをいじりたくない(pythonを使っている)、多分理由はMSUAがfey regressorを作るからフィットするのだろう。ブースティングで同じ選択をした場合、差はありません

以下は、ある森のMSUA列挙である。

https://www.mql5.com/ru/code/22915

まず、他のフェイのリグレッサーは? なんてくだらない、なんで難しくなるとMSUAも出るんだ?

次に、例としてあげたデータは、MSUAもブーストも同じものでした。

第三に、何もしなくても、pythonで4つのランダムな値で行列を作って、それを累算することはできないのでしょうか。自分でブーストを確認するには?

2行のコード )))


自分でも何が入っているのか気になります。

理由: