ニューラルネットワーカーに嬉しい、MT4用のクイック&フリーライブラリ - ページ 13

 
Figar0 >> :

結果的にまともなものを使っているだけで、これがZZの良さだとは言えないのですが......)。

そこにコミットしていない発行され、ちょうどいくつかの(kol'tonセット)最小限の誤差で選択したネットが、そのStatistisuは準備されていないデータを供給すべきではないという妄想である。確かに、いろいろなことを試してみるのはいいことですが、すべてをグリッドに放り込んで煮詰めるようなやり方は通用しない、そう言う人はここにいるでしょうね。

そして、どのような方向で仕事をする価値があるのか、教えてください。もし、仕事の結果が一般から機密扱いになっていないのであれば。

 
Kharin >> :

皆さん、本当に図書館は「曲者」ではないのでしょうか?

状況はこうだ:エラーメッセージが定期的にポップアップし、ターミナルが閉じられること。

スレッドをお読みください。ロシア語で書かれています。

static bool Parallel = true;

Если параллельный режим не поддерживается процессором, то это может привести к тому, что терминал выгрузится с сообщением об ошибке
 
lasso >> :

クソ参議院議員。 書き換えて対応する必要はない。

ライブラリ自体の誤動作の疑いがあり、その有無の確認が必要です。そうでなければ、前に進む意味がありません。

あなたの状況をモデリングしてみました。実際、ann_trainを使用した場合、〜10,000個の信号でネットワークを訓練しても、応答は同じになります。ann_train_fastを使用したときのネットワークの応答は、異なるときとそうでないときがあります。

少なくともウェイトのランダム化については、本当に問題があると思います。

 

f2M_randomize_weights をコメントアウトしてみてください。ネットの答えが異なる場合、FANN2MQLにエラーが発生します。それでも同じであれば、FANNにエラーがあります。

デフォルトはランダム化(-0.1 ... 0.1)です。


UPD:自分で確認しました。どちらもランダム化されています。2~5個のネットが連続して同じ反応を示し、その後、他の同じネットが集まってくるという奇妙な現象があるのみです。つまり、16ネットあたり5種類の答えがあるわけです。もしエラーが修正されなければ、N人のメンバーからなる委員会は3*N個のネットが必要で、残りはバラストとなる。

 
Henry_White >> :

スレッドをお読みください。ロシア語で書かれています。

誰がパラレルモードを使うって言ったんだ!

なぜ、説教臭く「ウンコを投げる」必要があるのでしょうか?スタックに何が書かれているのか、具体的にどのようなエラーなのかが言えない場合。

何も言うなはい、これからテレパスの話など、この叫びを警告します:エラーメッセージが表示されました。

全文、使用する機能はYury Reshetovのものと同じで、パラレルモードは使用されていません。

THISメッセージの理由は何でしょうか?

 
Kharin >> :

それに、誰がパラレルモードを使っていると言ったんだ!

失礼しました ))

 
Kharin писал(а)>>

だから、最後のフレーズはナンセンスだと思うんです。

私は、このライブラリは強力なエラーハンドラを持っておらず、オブジェクトやそれへのポインタの不正な処理を許さない、と言いたかっただけなのに、あなたは個人的にそう思ったのですね。 だから、友達になりましょう! )))

ReshetovのExpert Advisorは試されましたか? 端末もバウンドするのでしょうか?

 
Dali писал(а)>>

UPD:自分で確認しました。どちらの場合も無作為化が行われています。ただ、2~5個のネットが連続して同じ答えを出し、その後、同じものが集まってくるという奇妙な現象があります。つまり、16ネットあたり5種類の答えがあるわけです。もしエラーが修正されなければ、N人のメンバーからなる委員会は3*N個のネットが必要となり、残りはバラストとなる。

注目される。ランダム化は-1から1まで、ネットワークプロファイルは-10.0e--003から10.0e-003までの重みがあります。

例(12, -7.35577636217311400e-003) (13, 7.63970005423449810000e-002)

これでよいのでしょうか?

.....

そう、最初の2~4個のネットの出力値が、それ以降のものと異なるというのは、同じことなのです。

入力に異なる係数を掛けてみた。これでは問題解決になりません。

 
lasso >> :

あなたが個人的にそう思ったからそう思ったのであって、私はライブラリが強力なエラーハンドラを持っておらず、オブジェクトやそれへのポインタの不正な処理を許さないことを言いたかっただけです。 だから、友達になりましょう! )))

ReshetovのExpert Advisorは試されましたか? 端末もバウンスするのでしょうか?

私は友情の方が好きです)))

レシェトフのExpert Advisorは、私が並列計算を廃止する前に、端末をノックアウトしてしまいました。

現在は、Expert Advisorを全方位で試し、Printで動作の成否を確認しています。

グリッドの作成に失敗することがある、という不具合に気づきました((

a = f2M_create_standard (nn_layer,nn_input,nn_hidden1,nn_hidden2,nn_output);

この行は非常に頻繁に -1 を返します。

より正確には、ある回数だけ-1ではなく、-1だけを返す。

コンピュータを再起動するしかない。前のメッシュが削除されず、新しいメッシュの置き場所がないのが理由だと思いました。

で、新しいものの行き場がないので、こんなコードを作りました。

for (int i=0;i<1024;i++)
{ann_destroy (ann[i]);}
int a=-1;
while(a<0)
{
a = f2M_create_standard (nn_layer,nn_input,nn_hidden1,nn_hidden2,nn_output);
Print(a);
}


これで確実に最初の1024個のネトゲは削除されるはずだ!(間違っているかもしれませんが)。

しかし、またしてもログに-1が書き込まれる。再起動する前に...

 

さて、FANNさんの奇策も追加しようかな・・・。

実験として、30/N/N/1次元の46個のネットの委員会をブルートフォースで訓練することにした(つまり、各バーで:〜300k)。1データチャネルにつき1NS。 タイムパターンが入力されます。次元をいじったので、N/Nを指定しています(いろいろ試しました)。レイヤーも少しやりました。
アクティベーター - FANN_SIGMOID_SYMMMETRIC_STEPWISE.他の製品も試しましたが、この製品ほど早くネットワークが収束することはありません。
私は1か-1しか教えません。イテレーションごとに学習する。
学習の正反復回数と負反復回数はほぼ等しい。正確には、132522/-112221となります。
データは1:-1の範囲で正規化されています。
トレーニングが終わる頃には、ほぼすべてのメッシュがRMS0.09以内に収束しています。 もちろん、これは多くの場合ですが、本題ではありません。

しかし、ここで奇妙なことに、テストセクションでは、委員会全体が-1に近い値を出してきたのです。これはNSにとって不健全な行為だと思います。もしかしたら、ライブラリにもアルゴリズムの間違いがあるのかも...。

もうひとつ、観察してみると...。通常のトレーニング(信号部のみ)では、ブルートフォースほど明確ではないものの、やはり委員会はマイナス値を積み上げる傾向にある。

ご自身で同様の現象を確認された方はいらっしゃいますか?何かアイデアがあるのでは?


入力データを可視化した例(下)。