記事についてのディスカッション

 

新しい記事「ニューラルネットワークが簡単に(第11部): GPTについて」はパブリッシュされました:

GPT-3は現在存在する言語ニューラルネットワークの中でおそらく最も高度なモデルの1つであり、その最大バリアントには1,750億個のパラメータが含まれています。もちろん、家庭にあるようなPCでそのような怪物を作成するつもりはありませんが、どのアーキテクチャソリューションを作業に使用し、それらからどのように利益を得ることができるかは確認することができます。

ニューラルネットワークの新しいクラスは、以前のテストで使用されたものと同じデータセットでテストされました(H1時間枠のEURUSD、最後の20個のローソク足の履歴データをニューラルネットワークに供給)。

テスト結果で、より多くのパラメータがより長い訓練期間を必要とするという仮定が確認されました。最初の訓練エポックでは、パラメータが少ないエキスパートアドバイザーがより安定した結果を示していますが、訓練期間が延長されると、多数のパラメータを持つエキスパートアドバイザーがより良い値を示すようになります。一般に、33エポック後、Fractal_OCL_AttentionMLMH_v2のエラーはFractal_OCL_AttentionMLMH EAのエラーレベルを下回り、さらに低いままでした。

作者: Dmitriy Gizlyk

 
これをどう使うか
 
パワフル!落ちこぼれはまだか?
 

いつも記事をありがとうございます。彼のアルゴリズムは非常に優れており、私にとっては、mql5 のニューラル・ネットワークの中で最高のアルゴリズムです。私はブラジルの先物市場で彼のアルゴリズムをテストしていますが、結果は有望で、予測は直近の100バーで80%以上の効率に達し、前向きな取引につながっています。次回の記事を楽しみにしている。 デモ口座でExpert Advisorがアルゴリズムを使用して実行した取引の結果

 

興味深い内容だが、コードがすべて巨大なスパゲッティボウルになっていて、理解するのがかなり難しい。1つのファイルに1つのクラスがあればもっと簡単だっただろう。

すべてのクラスがどのようにまとまっているかを示す図があるといいと思う。

今のところ、Objectから派生したNeuronBaseを使用しているが、NeuronBaseから派生したNeuronProofや、定義されているほぼすべてのタイプのNeuronクラスを使用しているLayerも使用している。

すべてを別々のファイルにして使いこなすには、たくさんの前方宣言が必要です。

おそらく、最初から何も考えず、各章で説明されているコンセプトを使う方が簡単だろう。

スパゲッティ・ボウルを動かしてみたが、GPUが煙に巻かれ、残念ながら何の役にも立たなかった。

とにかく、素晴らしい資料をありがとう。

:-)

 
Anthony Eric Gillon Dawson:

興味深い素材だが、コードがすべて巨大なスパゲッティ・ボウルにまとまっていて、それを理解するのはかなり難しい。つのファイルに1つのクラスがあれば、もっと簡単だっただろう。

すべてのクラスがどのようにまとまっているかを示す図があるといい。

今のところ、Objectから派生したNeuronBaseを使用しているが、NeuronBaseから派生したNeuronProofや、定義されているほぼすべてのタイプのNeuronクラスを使用しているLayerも使用している。

すべてを別々のファイルにして使いこなすためには、たくさんの前方宣言が必要だ。

おそらく、最初から何も考えず、各章で説明されているコンセプトを使う方が簡単だろう。

スパゲッティ・ボウルを動かしてみたが、GPUが煙に巻かれ、残念ながら何の役にも立たなかった。

ともあれ、素晴らしい資料をありがとう。

:-)

こんにちは、
NN.chmをチェックして ください。多分、それはあなたの助けになるでしょう。

 
Dmitriy Gizlyk:

こんにちは、
Check NN.chm。多分、それはあなたの助けになるでしょう。

こんにちは、


ありがとう。

コードも悪くなくなったし、必要に応じてネット・アーキテクチャを変更する方法もはっきりわかりました。

mt5では定義と実装の両方が同じファイルにあるので、私はすべてを別々のクラスファイルにして、さらにずっと小さなスパゲッティボウルも必要です。

そのままのコードでGBPUSDのトレーニングをしてみましたが、結果は思わしくなく、エラーは自然な50%から70%に上昇し、その後のエポックでも改善されずそのままです。

どこから手を加えたらいいでしょうか?


ちなみにこの行は

#define  FileName        Symb.Name()+"_"+EnumToString((ENUM_TIMEFRAMES)Period())+"_"+IntegerToString(HistoryBars,3)+StringSubstr(__FILE__,0,StringFind(__FILE__,".",0))

に修正する必要がある:

#define  FileName        Symb.Name()+"_"+EnumToString((ENUM_TIMEFRAMES)Period())+"_"+IntegerToString(HistoryBars)+StringSubstr(__FILE__,0,StringFind(__FILE__,".",0))
さもないと正しく動作しません。少なくともMT5の最新バージョンではそうなっていませんでした。また、ファイル名にスペースがあることは誰も意図していないはずです。
 
こんにちは。)ソースをダウンロードし、エラーなしでコンパイルしました。ターミナルでエキスパートがエラーメッセージを出して終了してしまいます。 走り始めて、少し練習して、そしてエラーする。
 
再びこんにちは :)問題を見つけました。というのも、僕のシステムをテストしたところ、GPUがコードをサポートしていなかったんだ。
 

最初は、記事の主旨がよく理解できませんでした。

ChatGPT本人にこの文章について 質問したところ、かなり明確にしてくれたので、読んでいる内容のほとんどを理解することができました:


"Transformerアルゴリズムは自然言語、つまりテキストを処理するために使用されるモデルです。このモデルは、テキストを一連の単語(または「トークン」)に分割し、その意味をよりよく理解するために、これらの単語のそれぞれに対して一連の操作を実行する。

このモデルが実行する操作のひとつが自己注意であり、シーケンス内の他の単語との関係において各単語が持つ重要度を計算することからなる。これを行うために、モデルは3つのベクトル(クエリーベクトル、キーベクトル、バリューベクトル)を使用し、各単語について計算する。

そして、各単語がシーケンス内の他の単語との関係で持つ重要度である注目度を計算する。注目度の係数を正規化するために、ソフトマックスと呼ばれる数学的関数を使用する。

最後に、このモデルはすべての自己アテンション演算を組み合わせて最終的な結果を生成し、これをテキストの意味の予測に使用する。

要するに、Transformerアルゴリズムは複雑な数学的演算を使ってテキストの意味を理解するのである。"

 
Gergely Szabó #:
再びこんにちは :)問題を見つけました。インクルードフォルダでOpenclのコンフィグが失敗していたんだ。
同じエラーが出ているのですが、解決方法を教えてください。