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

 
エリブラリウス
あなたのブログにコピーしてください。もしかしたら誰かが必要としているかもしれません。ここで何かを探すというのは、現実的ではありません。

ブログにはこのコードもあります。でも、これは「Kfoldの作り方」という基本的なもので、具体的な作業に合わせて修正することはたくさんあります。さらに、遺伝学でマルチスレッドを有効にすると、elmnnはインストールされたgpsfold grainを無視し、各スレッドは異なるものを取得し、再現性がありません。このような場合(遺伝学でのマルチスレッド)には、Vladimir Perervenkoによる記事と彼のgpsfoldを制御する方法を参照してください。

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

余分な次元があり、それを通して何らかの形で曲線を描かなければならない、多分大きな誤差がある

ドロップアウトがあると誤差が大きくなるのでは?

ドロップアウトは、ニューロンを不活性化することに相当します。うるさければ、いいんです。
そして、なぜ誤差を大きくするようなものを発明するのでしょうか。誤差を小さくするのに役立つものであれば、すべて理にかなっています。
 
エリブラリウス
ドロップアウトは、神経細胞を停止させることに相当します。うるさければ、いいんです。
また、なぜ誤差を増やすようなことを考えるのでしょうか。誤差を減らすのに役立つのであれば、すべてが理にかなっています。

エヘン...誤差を大きくすることで、オーバートレーニングが解消されるはずなんだ。いつもというわけではありませんが、他にどのような方法がありますか?

だから、FXでは0.5が良いシバと言われるのです。私の場合、0.3〜0.4で多少なりとも機能し始め、それ以下の場合は原則としてオーバーフィットとなります。

自分たちはカッコイイと思ってるけど、実はモデルの育成が下手なだけで、半分レンタルで売買されてるから、ほとんど外には漏れないというジョークでしょう?

 
Dr.トレーダー

Pythonもそうであるべきです。

なるほど、pythonは全然自分には遠い存在なんですね...。NSと連動するGUIラッパーは誰も作らないの?

Dr.トレーダー

今夜アルゴリズムを実行して、明日何が出てきたかお見せします。

ありがとうございます、勉強になります。

Dr.トレーダー

100%の精度を達成し、モデルがうまく機能することを願うことは、FXでは通常不可能です。予測因子と、うまく適合するターゲットを選択するのに数ヶ月が必要です。通常、数十%以上の精度に達したモデルは、学習例から論理的なパターンを見つけるのではなく、学習例を記憶するようになる。だから、新しいデータでの結果はどんどん悪くなっていくのです。トレーニングデータとテストデータの結果がほぼ等しい場合ですが、より詳細な木の分割を行い、精度を上げると、新しいデータではforestはどんどん悪い結果を示すようになります。

何を急ぐのか、無駄にしないのであれば時間はある。

しかし、記憶と学習の違いがよくわかりません。私の考えでは、このMOはデータセットから特徴を見つけ、記憶した結果と予想される結果を照合し、データの変形を考慮した上で、変形に応じた予測をする必要があると思います。いろいろといじくり回すまでは、そんなイメージでしたね。

ただ、このツリーが異なる予測変数のセットで解かれていることに驚いています。つまり、すべてのデータと知識で作られているわけではないのです。

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

エヘン...誤差を大きくすることで、オーバートレーニングは解消されるようです。いつもというわけではありませんが、他にどのような方法があるのでしょうか?

それもそうだ。より正確には、それが主な仕事である。私は、ニューロンを取り除くことと、入力を取り除くことを結びつけて考えています。それはおかしいかもしれない。

そうですね、むしろ1層目のドロップコネクトは 入力を削除しているようなものです。

 
エリブラリウス

これも。正確には、これが主な仕事です。私は、ニューロンを取り除くことと、入力を取り除くことを結びつけて考えています。正しくないかもしれません。

ニューロンの除去は自由度の除去=誤差の増加、粗大化

回帰からいくつかの項を削除すると、入力を削除したのと同じことになり、フルコヒーレントNSでは、なぜか

ドロップコネクト、名前からしてそうです

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

ニューロンの除去は自由度の除去=誤差の増加、粗大化

を削除することは、入力の削除と等価であり、完全連結型NSでは、なぜ

dropconnect、名前からして、、、そうですね。

しかし、ドロップコネクトの場合も、その作業は複雑です...。例えば、50入力、50ニューロン。
1つの入力を削除することで、50ニューロン分の接続も削除される。
そして、1つの入力を削除するために、50の接続をすべて削除することは50倍難しいです。そして、この方法で50の入力をすべて通過させる......。ということは、50^50のバリエーションがあることになります。明らかに、絶望的な作業です。入力の扱いは簡単で、2^50しかありません))。
 
エリブラリウス

この質問は、あなただけでなく、すべての人に向けられたものです。

実際にはそうで、ノイズ予測器がある場合、NSは50~55%を切ることはできない。拾えば70%出ることもある。

しかし、なぜそうなのでしょうか。
1) さて、NSは学習中にノイズ予測器に対して0に近い重みを自動的に選択するはずです(選択から除外するのと同じです)。それは枝葉末節の問題で見た。
2)ウェイトを過小評価する訓練によるものでなければ、少なくともドロップアウトによってふるい落とされるはず...。

何度も書いていることですが、ノイズ予測器はよりモデルに優しいもので、ノイズの中には必ず学習結果を向上させる値があります。つまり、あなたの言うようにではなく、ノイズ予測因子がより重視されるという逆転現象が起きているのです。これは、特に1000観測値以下の小さなサンプルで顕著に現れます。5000以上のオブザベーションのサンプルはそれほど影響を受けないが、それでもノイズ予測因子を事前にスクリーニングする必要がある

 
エリブラリウス
でも、ドロップコネクトも難しい...。例えば、50入力、50ニューロン。
1つの入力を削除することで、50ニューロン分の接続も削除される。
そして、1つの入力を削除するために、50の接続をすべて削除するのは50倍大変です。そして、この方法で50の入力をすべて削除する...どうやら、それは絶望的な作業のようです。インプットに対応しやすくなりました。
モデルで遊ぶのはただのシャーマニズムであり、一般的なケースで大きな利益を得ることはできないはずです。私は足場のアンサンブルを作りましたが、個々の足場を落とした後、誤差(trainとtestの差)を0.05、時には0.1だけ改善することができます。これでは本題の解決にならない。高度なニューラルネットでは、どうしたらいいのかわからない。
 
サンサニッチ・フォメンコ

何度も書いていることですが、ノイズ予測器はよりモデルに優しいもので、ノイズの中には必ず学習結果を向上させる値があります。つまり、あなたの言うようにではなく、ノイズ予測因子がより重視されるという逆転現象が起きているのです。これは、特に1000観測値以下の小さなサンプルで顕著に現れます。5000以上のオブザベーションのサンプルはそれほど影響を受けないが、それでもノイズ予測因子を事前にスクリーニングする必要がある

NS/Tree/Forestで使用するプレディクターに、アナリストから見た重要度に応じて優先順位をつけられるような技術があるのでは?

理由: