In the last article, we got acquainted with the Autoencoder algorithm. Like any other algorithm, it has its advantages and disadvantages. In its original implementation, the autoenctoder is used to separate the objects from the training sample as much as possible. This time we will talk about how to deal with some of its disadvantages.
コードを挿入するには、対応するボタンを適用する必要があります。
ウラジミール
テストEAを通過するたびに、まるでモデルが以前のものすべてと異なるかのように、劇的に異なる結果が生成される。テストEAを通過するたびにモデルが進化するのは明らかですが、このEAの挙動は進化とは言い難いものです。
ここにいくつかの写真があります:
売買取引は、テストスクリプトやおそらくリサーチスクリプトでは十分に制御されていないようです。以下はそのメッセージの一部である:
2024.04.27 13:40:29.423 Core 01 2024.04.22 18:30:00 現在の口座の状態:残高: 9892.14, クレジット: 0.00, 手数料: 0.00, 累積:0.00, 資産: 0.00, 負債:0.00, エクイティ: 9892.14, マージン: 0.00, フリーマージン: 9892.14
2024.04.27 13:40:29.423 Core 01 2024.04.22 18:30:00 成行買い0.96 EURUSD.pro sl: 1.06306 tp: 1.08465[資金なし]に失敗しました。
証拠金超過が意図されていない限り、275 行目以降の buy_lot と 296 行目以降の sell_lot に単純な制限をかけるだけで、テスト・スクリプトのこのような動作はなくなります。
テストEAを通過するたびに、まるでモデルが以前のものすべてと異なるかのように、劇的に異なる結果が生成される。テストEAを通過するたびにモデルが進化するのは明らかですが、このEAの挙動は進化とは言い難いものです。
ここにいくつかの写真があります:
このモデルはアクターの確率的政治を使用している。そのため、研究の初期には、すべてのパスでランダムな取引を見ることができる。このパスを集め、モデルの研究を再開する。このプロセスを何度か繰り返す。アクターが良い政治的行動を見つける間に。
別の言い方をしよう。サンプルを収集(研究)し、それを処理(研究)した後、テストスクリプトを実行します。ResearchもStudyも行わず、何度か連続して実行すると、得られる結果は全く異なる。
テストスクリプトは OnInit サブルーチン(99 行目)で学習済みモデルをロードします。ここでは、テスト処理中に変化してはならないモデルを EA に与えます。私が理解する限り、それは安定しているはずです。そうすれば、最終的な結果は変わらないはずです。
その間、モデルのトレーニングは行いません。より多くのサンプルを集めることだけがテストによって行われる。
ランダム性はむしろResearchモジュールで観察され、場合によってはStudyモジュールでポリシーの最適化中に観察される。
アクターは、フィードフォワード結果を計算するために240行目で起動される。作成時にランダムに初期化されていないのであれば、ランダムに動作することはないはずです。
上記の推論に誤りはありませんか?
別の言い方をしよう。サンプルを収集(研究)し、それを処理(研究)した後、テストスクリプトを実行します。調査も研究もしていない状態で、何度か連続して実行すると、得られる結果はまったく異なるものになる。
テストスクリプトは OnInit サブルーチン(99 行目)で学習済みモデルをロードします。ここでは、テスト処理中に変化してはならないモデルを EA に与えます。私が理解する限り、それは安定しているはずです。そのため、最終的な結果は変化しないはずです。
その間、モデルのトレーニングは行いません。テストでは、サンプルの収集のみを行います。
ランダム性は、むしろリサーチ・モジュールで観察され、場合によっては、ポリシーの最適化中にスタディで観察される。
アクターは、フィードフォワード結果を計算するために240行目で起動される。もし生成時にランダムに初期化されていないのであれば、ランダムに動作することはないはずです。
上記の推論に誤りはありませんか?
アクターは確率的ポリシーを使っています。VAEで 実装しています。
レイヤCNeuronVAEOCLは前のレイヤのデータをガウス分布の平均と標準偏差として使用し、この分布から同じアクションをサンプリングする。最初にモデルにランダムな重みを入れる。そのため、ランダムな平均と標準偏差が生成される。最終的に、モデルテストのすべてのパスで、ランダムなアクションを持つ。学習時に、モデルはすべての状態についていくつかの平均を見つけ、STDはゼロになる傾向がある。