seed()関数とその使用方法について教えてください。コード上では、seed()関数が使用されている箇所を見つけられませんでした。
しかし、シード数を42から他のものに変えると、トレーニングや結果に関する多くのことが変わってしまいます。
seed()関数をまったくコメントしなくても 結果には影響 しないのに、初期値を変えるとすべての 結果に影響 するとはどういうことですか?
このような関係や結果への影響を理解できなかったので、私はきっと何か見落としているのでしょう。42という数字に何か特別な意味があるのでしょうか?
よろしくお願いします。
......
シードの使用は擬似乱数の生成のためであり、その使用は結果の再現性を高めるためだけである。サンプルの生成は、シードによって制御される乱数生成 器に依存する。コマンド(rand (), MathRand ()) が呼び出されるたびに、サンプルの異なる要素が生成されます。通常、ユーザはこのメカニズムについて心配する必要はありません。しかし必要に応じて、_RandomSeed 関数を使用して乱数生成器の動作を制御することができます。この関数は、その後の乱数生成ごとに変更されるシードの現在の状態を定義します。つまり、同じサンプルを2つ生成するには、シードを定義するために数値を使用するだけです。
というのも、42という数字はカルシウムの原子質量であり、42は一次数であり、擬似完全数であり、数学オリンピックのトップスコアでもあるからだ。そして最もクールなのは、1979年に『銀河ヒッチハイク・ガイド』の著者ダグラス・アダムスが、異星人が「生命、宇宙、そしてすべて」に対する決定的な答えを提供するために、ディープ・ソートと呼ばれるコンピュータをどのようにプログラムしたかを描写していることだ。750万もの複雑な方程式と難しい計算の末、彼は42という答えを返した。ダグラス・アダムスはかつて、この数字の由来をこう説明した:
「答えはとても簡単だ。答えはとても簡単だ。普通の数字で、小さくて、この数字を選んだんだ」。二進法も、13進数も、チベット猿も、まったく意味がない。テーブルに座って庭を眺め、"42ならいける "と思って書いたんだ。歴史終了"
このように、42という数字をめぐるさまざまなゲームによって、私たちはシードの値を設定しようとするとき、42という数字が繰り返し選ばれるのだが、実際にはどんな数字でもいいのである。
こんにちは、ジョナサン、
あなたの記事を楽しく読ませてもらいました。MQL5でのニューラルネットワークの 実装を進める上で、とても役に立ちました。
ファイルが足りないと思います:
おそらくランダム関数があります。
それを含めてもらえますか?またはその中のランダム関数について説明してください。
いつもありがとうございます。あなたの記事を注意深く勉強しています。

- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「多層パーセプトロンとバックプロパゲーションアルゴリズム」はパブリッシュされました:
これら2つの手法の人気が高まり、Matlab、R、Python、C ++などで多くのライブラリが開発されています。これらのライブラリは、入力として訓練セットを受け取り、問題に適切なネットワークを自動的に作成します。基本的なニューラルネットワークタイプ(単一ニューロンパーセプトロンと多層パーセプトロンを含む)がどのように機能するかを理解してみましょう。ネットワークを訓練するためのエキサイティングなアルゴリズムである勾配降下法とバックプロパゲーションについて検討します。既存の複雑なモデルは、多くの場合、このような単純なネットワークモデルに基づいています。
最急降下法は、コスト関数の勾配の方向に関数を最小化するプロセスです。
これには、コスト形式と導関数がわかっていることが示唆されます。これにより、特定の点からの勾配を知ることができ、この方向、たとえば下向きに最小値に向かって移動できます。
機械学習では、確率的勾配降下法と呼ばれる、反復ごとに重みを評価および更新する手法を使用できます。その目的は、訓練データのモデルエラーを最小限に抑えることです。
このアルゴリズムの概念は、各訓練インスタンスが一度に1つずつモデルに表示されるということです。モデルは、訓練インスタンスの予測を作成します。次に、エラーが計算され、モデルが更新されて、次の予測でエラーが減少します。
この手順を使用して、エラーが最小になるモデルの重みのセットを見つけることができます。
作者: Jonathan Pereira