記事「ニューラルネットワークが簡単に(第34部):FQF(Fully Parameterized Quantile Function、完全にパラメータ化された分位数関数)」についてのディスカッション

 

新しい記事「ニューラルネットワークが簡単に(第34部):FQF(Fully Parameterized Quantile Function、完全にパラメータ化された分位数関数)」はパブリッシュされました:

分散型Q学習アルゴリズムの研究を続けます。以前の記事では、分散型の分位数Q学習アルゴリズムについて検討しました。最初のアルゴリズムでは、与えられた範囲の値の確率を訓練しました。2番目のアルゴリズムでは、特定の確率で範囲を訓練しました。それらの両方で、1つの分布のアプリオリな知識を使用し、別の分布を訓練しました。この記事では、モデルが両方の分布で訓練できるようにするアルゴリズムを検討します。

この方法により、「分位数」ハイパーパラメータの影響を受けにくいモデルの訓練が可能になります。それらのランダムな分布により、近似関数の範囲を不均一に分布する関数に拡張できます。

データがモデルに入力される前に、以下の式に従って、ランダムに生成された分位数の埋め込みが作成されます。

結果の埋め込みを元のデータのテンソルと組み合わせるには、さまざまなオプションがあります。これは、2つのテンソルの単純な連結、または2つの行列のアダマール(要素ごと)積のいずれかです。

以下は、記事の著者らによって提示された、考慮されたアーキテクチャの比較です。


モデルの有効性は、57のアタリゲームで実施されたテストによって確認されています。以下は、元の記事[8]にある比較表です。 


仮説的には、モデルのサイズに制限がない場合、この方法により、予測された報酬の分布を学習できます。

作者: Dmitriy Gizlyk

 

ありがとう。

これを試してみたところ、エラーもなく、すべてのコンパイルに成功しました。

eurusdで テストしたところ、以下のエラーが出ました。

何か心当たりはありますか?


2022.11.30 11:51:46.689 Core 08 genetic pass (0, 286) tested with error "OnInit returned non-zero code 1" at 0:00:00.000


サンクス


 
Arjang Aghlara #:

ありがとう。

これを試してみたところ、エラーもなく、すべてうまくコンパイルすることができた。

eurusdでテストしたところ、以下のエラーが出ました。

何か心当たりはありますか?


2022.11.30 11:51:46.689 Core 08 genetic pass (0, 286) tested with error "OnInit returned non-zero code 1" at 0:00:00.000


サンクス


テスターでEAを実行するには、nnwファイルを "MetaQuotesTerminalCommonFiles "ディレクトリにコピーする必要があります。

 

ありがとう!

あなたの "生産性 "には驚かされる。立ち止まるな!

あなたのような人がいるから、すべてがうまくいくのです!

追伸

ニューロネットのニュースを読んでいて...。

"Нейросети тоже нуждаются в состояниях, напоминающих сны.

ロスアラモス国立研究所の研究者が出した結論はこうだ。

 

こんにちは。

あなたのコードを使ってNeuroNetworkの同じような "Sleep "を作りました。

予測」の割合が3%増加した。私の "Supercomp "は宇宙への飛行です!

//+------------------------------------------------------------------+
//| 夢|
//+------------------------------------------------------------------+
int  Dream(int dream = 0)
{
   Comment("!!! Dream !!! ");
   int sleep = (dream==0 ? 7 : dream);

   for(int j=0;j<sleep;j++)
     {
         TempData.Clear();
         for(int b=0; b<(int)HistoryBars; b++) 
           {
            if(
               !TempData.Add(0.0) || !TempData.Add(0.0) || !TempData.Add(0.0) || 
               !TempData.Add(0)   || !TempData.Add(0)   || !TempData.Add(0)   ||
               !TempData.Add(0.0) || !TempData.Add(0.0) ||
               !TempData.Add(0.0) || !TempData.Add(0.0) || 
               !TempData.Add(0.0) || !TempData.Add(0.0)
              )
               break;
           }
         if(TempData.Total()<(int)HistoryBars*12)
            return(0);
         Net.feedForward(TempData);
         Net.getResults(TempData);
               //-- ニューロネットの "Dreams "を見てみるといい。
                  switch(TempData.Maximum(0,3))
                    {
                     case 0:
                        dPrevSignal=TempData[0];  
                        break;
                     case 1:
                        dPrevSignal=-TempData[1];
                        break;
                     default:
                        dPrevSignal=0;
                        break;
                    }
               //-- ...しかし、それは必須ではない。
        //--???
         TempData.Clear();
         TempData.Add(0.0);
         TempData.Add(0.0);
         TempData.Add(0.0);
         Net.backProp(TempData);
        //--???
      }
   return(0);
}

この機能は、各トレーニング・エポックの最後に適用しました:

      if(add_loop)
         count++;
      if(!stop)
        {
         dError=Net.getRecentAverageError();
         if(add_loop)
           {
            Net.Save(FileName+".nnw",dError,dUndefine,dForecast,dtStudied,true);
            printf("Era %d -> error %.2f %% forecast %.2f",count,dError,dForecast);
           }
         ChartScreenShot(0,(string)FileName+(string)IntegerToString(count)+".png",750,400);
        }
      Dream(SleepPeriod); //-- 眠る。
      printf("夢の期間 = %.2f !",SleepPeriod);
     }

テストして、どうやったかコメントしてくれる?突然の "夢 "がAIを助けるかも?

追伸

SleepPerriod=1;

に追加しました。

SleepPeriod
SleepPeriod  + (Delta++)

に追加しました。しかし、私のコンピューターはとてもとても弱い...。:-(

Обсуждение статьи "Нейросети — это просто (Часть 34): Полностью параметризированная квантильная функция"
Обсуждение статьи "Нейросети — это просто (Часть 34): Полностью параметризированная квантильная функция"
  • 2022.11.29
  • www.mql5.com
Опубликована статья Нейросети — это просто (Часть 34): Полностью параметризированная квантильная функция : Автор: Dmitriy Gizlyk...
 
ニューラルネットワークの 最後の層としてFQF層を追加するか。
 
nnのアーキテクチャは、最後のレイヤーを除いて、前回の記事と似ていますか?
 
happy side #:
nnのアーキテクチャは、最後のレイヤーを除いて、前回の記事と似ていますか?

はい