記事"強化学習におけるランダム決定フォレスト"についてのディスカッション - ページ 9

 
Maxim Dmitrievsky:

大人になればわかるよ。

少なくとも手始めに、ニューラルネットワークでどんなソルバーが使われているのか、なぜ誰も遺伝学を使ってトレーニングしないのかを読んでみてほしい。
やっぱりソルバーが大事なんだ。
 
Evgeniy Scherbina:
やっぱり、ソルバーが大事なんですね。

入力が50で、1層あたり15ニューロンの2層NSであっても、おおよその重みの数を計算する。このようなプリミティブをオプティマイザーで最適化するには、永遠に時間がかかりそうだ。そして、これはまだ非常に単純な設計である。

この50個の入力を私の例に当てはめれば、すぐに理解できるだろう。違いはこの程度だ。

 
Maxim Dmitrievsky:

入力が50で、1層あたり15ニューロンの2層NSであっても、おおよその重みの数を計算する。このようなプリミティブをオプティマイザーで最適化するには、永遠に時間がかかるだろう。そして、これはまだ非常に単純な構造である。

この50個の入力を私の例に入れれば、即座に学習できるだろう。それくらいの違いだ。

そういうことなんだ。あなたはそれを複雑にしすぎて、それが正しい方法だと思っている。それは間違った方法だ。複雑だからいいというわけではないんだ。

4つの入力、3つのニューロン、それぞれの信号に1つのレイヤー。信号は2つしかないが、各シンボルに個別化されている。シンボルの数は多い。1年間のトレーニングの後、1ヶ月間トレードした場合、ニューラルネットワークを 使用しない場合より、使用した場合の方が良い。その結果がこれだ!最近開封し、嬉しさに震えながら、他にどんなものが出てくるか見ている。実際の取引の確認を待っている。

 
Evgeniy Scherbina:

そういうことだ。あなたはそれを複雑にしすぎて、それが正しい方法だと思い込んでいる。それは間違った方法だ。複雑だから良いというわけではないんだ。

4つの入力、3つのニューロン、それぞれの信号に1つのレイヤー。信号は2つしかないが、それぞれ1つの記号に対応する。シンボルの数は多い。1年間のトレーニングの後、1ヶ月のトレードは、ニューラルネットワークを使わない場合より、使った場合の方が良い。その結果がこれだ!最近開封し、嬉しさに震えながら、他にどんなものが出てくるか見ている。実際の取引の確認を待っている。

複雑なことは何もない、古典的なMOモデルだ。

オプティマイザーを通して学ぶことはさらに複雑だ。何百、何千といううまくいかないものの中から、自分が好きで、フォワードでうまくいくバリアントを選ぶからだ。これは精神的な罠で、あなたは学習プロセスがあると思っている。機能するモデルの数を、フォワード最適化リストで機能しないモデルの数で割ると、選択されたモデルの中から何かが将来実際に機能する確率が得られる。通常は1~5%の確率である。

だから、震える必要はない。99%の確率でオーバーフィットする。

いずれにせよ:幸運を祈る。
 
Maxim Dmitrievsky:

複雑なことではなく、MoDの典型的なモデルだ。

オプティマイザーを使って学習することは、さらに大きな調整となる。何百、何千ものうまくいかないバリエーションから、自分が気に入り、フォワードでうまくいくものを選ぶからだ。これは精神的な罠で、あなたは学習プロセスがあると思っている。機能するモデルの数を、順方向最適化リストで機能しないモデルの数で割ると、選択されたモデルの中から何かが将来実際に機能する確率が得られる。通常は1~5%の確率である。

だから、震える必要はない。99%の確率でオーバーフィットする。

いずれにせよ:幸運を祈る。

いや、いや、いや、いや。フィッティングはなかった。次のコントロールセットに依存しない学習があった。入力パラメーターを増やしてみても改善しない。結局、ネットを分割することにした。公平を期すために、1つのシステムに3つの入力(2つのオープン+1つのクローズ)があり、合計11の入力がある。だから、いろいろと変えているんだ。

つまり、当月は過去にテストを行ったのと同じコントロールセットです。コントロール月の調整はなかった。

 
Evgeniy Scherbina:
いや、いや、いや、いや。フィッティングはなかった。次のコントロールセットとは無関係にトレーニングが行われた。入力パラメーターを増やしてみても改善しない。結局、ネットを分割することにした。公平を期すために、1つのシステムに3つ(オープン2つ+クローズ1つ)、合計11の入力があります。だから震えているんだ。

もしかしたら奇跡が起こるかもしれない。

あるいは、予測変数自体に意味があるのかもしれない。
 
n-aryツリーを構築する方法を教えてください。mass[0].mass[1].mass[n]...mass[n]という構造体の配列でやってみたのですが、うまくいきません。奥行きがダイナミックであるべきで、この場合新しいノードを追加する方法がわかりませんし、一般的にアドレスが非常に長くなります)。
 
VANDER:
n-aryツリーの作り方を教えてください。mass[0].mass[1].mass[n]...mass[n]という構造体の配列で作ってみたのですが、しっくりきません。奥行きがダイナミックであるべきで、この場合新しいノードを追加する方法がわかりませんし、一般的にアドレスが非常に長くなります)。

マルチクラスの意味でn-ary?同じライブラリを使って、木の本数を1本とすることができます。

 
Maxim Dmitrievsky:

マルチクラスの意味でn-ary?同じライブラリを使って、木の本数を1本とすることができます。

バイナリではなく、各ノードに任意の数の子孫を持つようにするには、次のようにします:

 
VANDER:

バイナリではなく、各ノードに任意の数の子孫を持つようにするには、次のようにする:

まあ、設定すればいくつかのクラスになるのだが、こんな感じになる。任意の数のランダムな特徴を置くことができ、異なるシードを置くとその順序が変わる。分類なのか回帰なのか、タスクが何なのかはっきりしない。それに、森は1本の木よりも優れている。