Время является неизменной ценностью на протяжении всей истории человечества, и мы стремимся не расходовать его понапрасну. Из этой статьи вы узнаете, как можно ускорить работу вашего эксперта, если у вашего компьютера многоядерный процессор. Причем, реализация описываемого метода не требует знания каких-либо еще языков кроме MQL5.
ありがとう :) 最後の一突きを。
むしろ、1つの実装を大事にして、完成度を高めようと思っています。
規模(明確な目標機能を持たないタスクのクラス)ではジェネティクスに敵わないかもしれませんが、使用効率や学習効率という点では......。
非常に正しい判断だ。ここに何らかのプロジェクトが 現れる頃には、すでに多くの下準備ができているだろうし、プロジェクトが現れなかったとしても、結果を出すことはできる。
プロジェクトを存続させる可能性が高くなるのです。
あきらめずに作品を投稿し、質問すれば、誰かが腰を据えてくれるかもしれません。
消えないで、仕事を入れて、質問すれば、他の誰がバックレるかわかるよ。
作品に込められた思い準備ができ次第、掲載します。
C++で実装しています。あとは、いくつかの配置を変えて、アップグレードするだけです。
吐いてほしいけど、無視されるだけだし。イエスかノーか、アドバイスを求められたのですね。
もし(YES)なら、賢い本を読みに行く。
を読んで、別の方向に蹴りを入れてきてください。
こんにちは、本題ではないのですが、アドバイスをお願いします。
私自身、課題を持っています。パラメータで設定するのではなく、現時点での適応的な時間窓を選択することが必要である。そして、選択されたウィンドウがどのクラスタに属しているかを知るために、履歴を詳細に調べる必要があります。ニューラルネットワークで対応できるのか、それとも他の方法が簡単なのか?差し支えなければ、ソーセージレベルのグリッドの本だけを送ってください。
リッチと言われるように、ソーセージレベルは分かりませんが。
ただ、クラスタリングや分類は、ネットワークが得意とする作業です。
近似値も悪くなりますが、それもOKですが、外挿一般ではきついです。すべては実装次第なんですけどね。
俗に言うソーセージレベルってやつか。
クラスタリングと分類は、ネットワークが最も得意とする作業です。
近似はもっとひどいですが、それもOKですが、外挿は難しいですね。すべては実装次第ですが。
...
学習はネットワーク自体の外部にあるプロセスである
...
それから、完全を期すために、学習は、重みだけでなく、中間計算データ、さらにトポロジー特性にもアクセスすることが多いので、外部プロセスだけでなく、内部的な性質も持っています。
そして、このような学習過程の特性から、しばしばネットワークの内部過程に起因するとされるのである。
彼らは、ネットワークは学習プロセスのために内部情報を公開し、環境からは一切隠蔽すべきだという結論に達した。
このような場合、必要であれば、ネットワーク自体をトレーニングシェルで包むのが論理的な行動となります。
こうして、メソッドを持つ外部ネットワーク・オブジェクトができあがりました。
ワークフローメソッドはネットをそのまま受け取り、トレーニングメソッドはトレーニングシェルに包まれたネットを受け取る。カプセル化を論理的に継続するには、ワークフローとトレーニングの2つのメソッドではなく、選択フラグを持つ1つのネット メソッドを与えればよいだろう。
というわけで、メソッドを持つ外部ネットワーク・ オブジェクトを用意しました。
ワークフローメソッドはネットワークをそのまま取得し、トレーニングメソッドはネットワークをトレーニングシェルに包んで取得します。カプセル化を論理的に拡張すると、ワークフローとトレーニングの2つのメソッドの代わりに、選択フラグを持つ1つのネット メソッドを提供することになるでしょう。
最も一般的なケースでは、ネットワークには 1 つの run() メソッドが必要です。
出力ニューロンの計算を行い、入力はすでに初期化されているものとする
教師」は別オブジェクトで、トレーニングパラメータで初期化され、トレーニングオブジェクトで制御されます
このメソッドでこのオブジェクトを教えられるかどうかをチェックするバリデーターが必要です。
しかし、これらのことは一般的なケースで形式化することは困難です
そのため、Network+Function+Teacherタイプの標準的な剛体設計をエンドユーザー向けに開発し、いくつかのパラメータ(例えば、層のニューロン数)のみを設定することができるのです。
ネットワークは、その内部情報を環境から隠しつつ、学習プロセスに公開する必要があります。
私もそう思います。学習方法の中には、ネットワーク内部へのほぼ完全なアクセスを必要とするものもあるが、すべてではない
yu-sha さん。
...
トレーニング方法の中には、ネットワーク内部へのほぼ完全なアクセスを必要とするものもありますが、すべてではありません。
それが問題なのです。メソッドによっては、ネットワークが公開されているだけでなく、そのメソッドに適した構造になっていることが必要なのです。
つまり、このメソッド自体が、ある特定のネットワーク向けに書かれたものなのです。これらのメソッドをユニバーサルエンジンに実装する意味はあるのでしょうか?
アンドリューに全部コーディングさせた方がいい。私は、普遍的なエンジンであるGAに対して、普遍的なトレーニング方法を1つ考えています。
残りの部分は、あらゆるトポロジーのための普遍的なエンジンのアイデア、あらゆるトポロジーのための普遍的な初期化方法のアイデア、そしてこれらすべての普遍的なトレーナーとしてのGAである。
プラス面では、新しいタイプのニューロン、標準的だがまだ記述されていないニューロン、非標準的なニューロンを簡単に実装することができます。
トレーニング方法が1つしかないのはマイナスです。
そこに他のトレーニング方法をはめ込む方法を誰かが考えてくれればいいのですが、今のところこんな感じです。
残りの部分は、あらゆるトポロジーのための普遍的なエンジンのアイデア、あらゆるトポロジーのための普遍的な初期化方法のアイデア、そしてこれらすべてのための普遍的なチューターとしてのGAである。
プラス面では、新しいタイプのニューロン、標準的だがまだ記述されていないニューロン、非標準的なニューロンを簡単に実装することができます。
デメリットは、トレーニング方法が1つしかないことです。
同じように考えてみると、ほぼ同じ結論に達しました))。
また、GAが主要な学習アルゴリズムとなるため、並列計算の 必要性が急務となっています。
そこで登場するのがGPUです。
同じように考えていたら、ほぼ同じ結論になりました ))
また、GAが主要な学習アルゴリズムとなるため、並列計算の 必要性が急務となっている
そこで、GPUの出番となるわけです
私が以前に書いたものを注意深く読めば、私の普遍的なネットワークのモデルでは、処理そのものが層に分かれていることに気づいたでしょう。したがって、ニューロンは形式的に(所有権によって)ではなく、実際に層に結合されています(層は記憶を持っていますが、ニューロンは持っていません、ニューロンは、どこで、なぜ、という情報を層に供給するだけの情報エンティティとして残ります)。つまり、エンジンの構造そのものが並列性を規定しているのです(レイヤー内の情報が並列処理される)。私はすでにGAで学習させたNSをやっていますが、生産性の最大の損失はまさにNSの計算でした(特に大規模なネットワークで)。そして宣伝ですが、jooさんの 提案するUGAにとって、NSの学習は楽勝です。
しかし、FFの計算も並列化できるのであれば(GAのNSはFFの一部ですし)、それに越したことはないですね。単純な作業ではないと思いますが、単純な動作はレイヤーで行い、FFの計算はかなり複雑なシーケンスを含む場合があります。