ベイズ回帰 - このアルゴリズムを使ってEAを作った方はいらっしゃいますか? - ページ 51

 
Дмитрий:
また、「最適」な組み合わせはどのように決めるのでしょうか?
5回の反復によるクロスバリデーション。しかし、ランダムに例を選ぶような通常のものではなく、時系列に 適応したもの、つまり時間によって例を分離したものです。ブログにはその様子が書かれています。

5つのテストファウルにおけるターゲットメトリクスの平均値が、学習パラメータの最適な組み合わせを示します。

その後、モデルはWhole training sampleで学習され、別のサンプルで検証される。
 
  • 実験では他に何を変えればいいのか悩んでいます。クロスバリデーションのケースインデックスのロジックを変更してみたが、改善されない。
  • インプットをディスクリートの形にすることを考える。
  • また、複雑なモデルからシンプルなモデルに降りていくという選択肢もあります。複雑なモデルは、意思決定の森を加速させる。よりシンプルなのは加速度線形回帰モデルで、正則化パラメータを調整することも可能である。
  • しかし、要は設計上の何かを変えただけで55%の精度を60%に向上させるのは難しいということなのです。
  • 建築委員会モデルも、せいぜい数パーセントの改善で済むでしょう。アーキテクチャーを開発し、育成するのに時間がかかる。
  • 重要な予測因子を見て、それがウィンドウの端(724分)にあることが多ければ、ウィンドウを1日1440分まで広げるという考え方もありますね。しかし、その場合は、1440 +-ランダム項単位で取るので、サンプル数は半分になります。
  • また、別のターゲット、例えば価格レベルのブレークダウン(テイクプロフィット/ストップロス)または一般的な「方向」、例えば線形回帰 係数を予測することができます。
何事も時間がかかるものです。でも、あと2、3ヶ月は必ず実験に専念します。もしかしたら、何か出てくるかもしれません。
 
基本的な問題は、予測変数のリストの問題である。予測変数のリストが正当化されたので、残りの部分に移ることができる。
 
СанСаныч Фоменко:
基本的な問題は、予測変数のリストの問題である。予測変数のリストが正当化されたので、残りの要素に移ることができます。
ありがとうございます。私も、プレディクター(予測因子)を増やす方向に傾いています。
 
Alexey Burnakov:
ありがとうございます。私もプレディクターを増やす方向に傾いています。
使用する予測変数の数が足りないと思いませんか?
 
Алексей Тарабанов:
使用する予測変数の数が不足していると思いませんか?
確かなことはわからない。

あるいは、利用可能な予測変数が十分な情報を持っていない。
時間の経過とともに関係が大きく変化し、一般性が低下するか
予測因子自体が時間の経過とともに分布パラメータを変化させるかのどちらかである。

1点目については、さらに追加することが可能であり、最適なものを選択することが常に可能である。
一方、データを加工することは有効かもしれませんが、100%ではありません。

私は、これらの複合的な要素に傾倒しています。ポイントは、クロスバリデーションでも精度は55~60%で、予測地平線が長くなるにつれて低下することです。だから、予測因子も学習サンプルの情報をあまり与えない。

それは、テストでは精度が高く、検証では急激に落ちるということを、実験を正しく構築して、依存関係が非定常であることを確認した場合の話です。
 
Alexey Burnakov:
確かなことはわからない。

利用可能な予測変数が十分な情報を持っていないかのどちらかです。
時間の経過とともに関係が大きく変化し、一般性が低下するか
予測因子自体が時間の経過とともに分布パラメータを変化させるかのどちらかである。

1点目については、さらに追加することが可能であり、最適なものを選択することが常に可能である。
一方、データを加工することは有効かもしれませんが、100%ではありません。

私は、これらの複合的な要素に傾倒しています。ポイントは、クロスバリデーションでも精度は55~60%で、予測地平線が長くなるにつれて低下することです。だから、予測因子も学習サンプルの情報をあまり与えない。

つまり、テストでは高い精度が出たのに、検証ではそれが急激に落ちるということは、実験を正しく組み立てた場合、依存関係が非定常であるということです。
ほとんどの場合、そうでしょう。
 
Alexey Burnakov:
確かなことはわかりません。

利用可能な予測変数が十分な情報を持っていないかのどちらかです。
時間の経過とともに関係が大きく変化し、一般性が低下するか
予測因子自体が時間の経過とともに分布パラメータを変化させるかのどちらかである。

1点目については、さらに追加することが可能であり、最適なものを選択することは常に可能です。
一方、データを加工することは有効かもしれませんが、100%ではありません。

私は、これらの複合的な要素に傾倒しています。ポイントは、クロスバリデーションでも精度は55~60%で、予測地平線が長くなるにつれて低下することです。だから、予測因子も学習サンプルの情報をあまり与えない。

それは、テストでは精度が高く、検証では劇的に落ちるということを、実験を正しく構築して、依存関係が非定常であることを確認した場合です。

すでに書いたが、もう一度言う。

予測変数の選択 に関する作業は、オンデマンドも含めて何度か行いました。結果は以下の通りです。

だから

50個以上100個以下の予測変数の集合を考えてみましょう。

私が扱った(つまり一般化を主張しない)予測変数のセットはすべて2つに分けることができる。

  • ターゲット変数に関連する 予測変数の部分
  • 予測変数のうち、目的変数とは無関係 な部分、つまりノイズ

私は「関係」と書くとき、非常に注意深く、かなり意図的に用語を使わないようにしています。

予測因子の例。

  • waving - ターゲット変数ZZとは関係ありません。
  • ラスプカからの価格乖離は、ターゲット変数ZZに関連する

ターゲット変数を指定していることに注意してください。もう一つのターゲット変数については、その逆かもしれません

この2つのグループの予測変数が元の予測変数のセットにあることの問題は、重要性を決定するための標準的なツールが機能しないことです。そのため、ノイズ予測器を粗く選別するためのツールが必要で、私はそれを開発し、使っています。ここで注意しなければならないのは、一義性がないことです。このアルゴリズムは、有効予測因子と名目予測因子について別々に定量化する。2(ある程度の相対値)以下は確実にノイズです。2と3の間:使えるが、使わない方が良い...。

ノイズの問題は、ノイズに関連する予測変数が、ノイズに関連しない予測変数を妨害することである。例えば、randomforest、ada、svmのアルゴリズムは、何らかの理由でこれらのノイズ予測因子に基づいてモデルを構築しています。

私のセットでは約80%(!)のノイズの多い予測変数があったので、残りの予測変数のリストにRのツールを適用し、変数の重要性を決定します。モデルを学習するために使用される実際の予測変数の数は、NOTノイズ予測変数の約半分、つまり、元のセットの約10%です。

窓の中の予測変数の重要性を判断しています。ウィンドウが移動すると、基本20%からの予測変数のリストが常に変化する。すなわち、12~15個の予測変数がモデルを構築するために使用されるが、それらは引用に続いてウィンドウが移動するにつれて異なる。

その理由は何ですか?

要は、予測変数からノイズを取り除くと、再学習されない モデルが出来上がるということですね。

数字で見ると

予測変数のフルセットで、3%~5%の予測誤差のモデルを構築することが可能です。そして、サンプルを分割するアルゴリズム、いわゆる「サンプル外」-OOVは、この結果を確認する。これはraatleによく現れていて、いつも元のサンプルを分割して、その結果にとても満足しているのです。

でも。

初期サンプルにノイズ予測変数が含まれている場合、実際の「サンプル外」、つまり例えば2015.06.01から2016.01.01までの学習用サンプルを採取し、1月1日以降のサンプルで計算すると、3%~5%ではなく、50%、70%の誤差が簡単に得られてしまうのです!しかも、1月1日から遠ざかれば遠ざかるほど、その結果は悪くなる。

モデルが再トレーニングされる

ノイズ予測変数の元のセットをクリーンアップすると、結果は以下のようになり、randomforest、ada SVMだけでなく、他のいくつかのモデルでも同じです - つまり、モデルは私のケースで何も解決しませんでした、結果は:予測誤差はどのセットでも約30%です。Rの予測変数の重要度ツールを適用することで、さらに誤差を25%程度に抑えることができます。ターゲット変数ZZについては、この結果を改善することはできなかった。

 
СанСаныч Фоменко:

すでに書いたが、もう一度言う。

予測因子の選定作業は、委託を含めて何度かやっている。結果は以下の通りです。

だから

50個以上、できれば100個以上の予測変数の集合を取ろう。

私が扱った(つまり一般化を主張しない)予測変数のセットはすべて2つに分けることができる。

  • ターゲット変数に関連する 予測変数の部分
  • 予測変数のうち、目的変数とは無関係 な部分、つまりノイズ

私は「関係」と書くとき、非常に注意深く、かなり意図的に用語を使わないようにしています。

予測因子の例。

  • waving - ターゲット変数ZZとは関係ありません。
  • ラスプカからの価格乖離は、ターゲット変数ZZに関連する

ターゲット変数を指定していることに注意してください。もう一つのターゲット変数については、その逆かもしれません

この2つのグループの予測変数が元の予測変数のセットにあることの問題は、重要性を決定するための標準的なツールが機能しないことです。そのため、ノイズ予測器を粗く選別できるツールが必要であり、私はそれを開発し使用しています。ここで注意しなければならないのは、一義性がないことです。このアルゴリズムは、有効予測因子と名目予測因子について別々に定量化する。2(ある程度の相対値)以下は確実にノイズです。2と3の間:使えるが、使わない方が良い...。

ノイズの問題は、ノイズに関連する予測変数が、ノイズに関連しない予測変数を妨害することである。例えば、randomforest、ada、svmのアルゴリズムは、何らかの理由でこれらのノイズ予測因子に基づいてモデルを構築しています。

私のセットでは約80%(!)のノイズの多い予測変数があったので、残りの予測変数のリストにRのツールを適用し、変数の重要性を決定します。モデルを学習するために使用される実際の予測変数の数は、NOTノイズ予測変数の約半分、つまり、元のセットの約10%です。

窓の中の予測変数の重要性を判断しています。ウィンドウが移動すると、基本20%からの予測変数のリストが常に変化する。すなわち、12~15個の予測変数がモデルを構築するために使用されるが、それらは引用に続いてウィンドウが移動するにつれて異なる。

その理由は何ですか?

要は、予測変数からノイズを取り除くと、再学習されない モデルが出来上がるということですね。

数字で見ると

予測変数のフルセットで、3%~5%の予測誤差のモデルを構築することが可能です。そして、サンプルを分割するアルゴリズム、いわゆる「サンプル外」-OOVは、この結果を確認する。これはraatleによく現れていて、いつも元のサンプルを分割して、その結果にとても満足しているのです。

でも。

初期サンプルにノイズ予測変数が含まれている場合、実際の「サンプル外」、つまり例えば2015.06.01から2016.01.01までの学習用サンプルを採取し、1月1日以降のサンプルで計算すると、3%~5%ではなく、50%、70%の誤差が簡単に得られてしまうのです!しかも、1月1日から遠ざかれば遠ざかるほど、その結果は悪くなる。

モデルが再トレーニングされる

ノイズ予測器の元のセットをクリーンアップすると、結果は以下のようになり、randomforest、ada SVMだけでなく、他のいくつかのモデルでも同じです - つまり、モデルは私のケースでは何も解決しませんでした、結果は以下のようになります:予測エラーはどのセットでも約30%です。Rの予測変数の重要度ツールを適用することで、さらに誤差を25%程度に抑えることができます。ターゲット変数ZZについては、この結果を改善することはできなかった。

ありがとうございます。

なるほど、そういう考え方もあるのか。以上のことから、学習サンプルのいくつかの部分について予測因子の重要度を計算し、リストを比較して重複するものを選択する可能性があると考えました。

手動選択については何とも言えません、すぐに使える方が良いですね。

SZZ:ディシジョンフォレストからの変数の重要度に加えて、相互情報関数をベースにした自作の手法を適用してみますね。結果は後ほどお見せします。

 
СанСаныч Фоменко:


ノイズの問題は、ノイズに関連する予測変数が、それに関連しない予測変数を詰まらせてしまうことである。例えば、randomforest、ada、svmのアルゴリズムは、何らかの理由でこれらのノイズ予測因子に基づいてモデルを構築しています。


質問:SVMは変数間の相互作用を考慮しているのか、それとも単に個々の成分を重み付けして合計しているのか?