IZEL_add_layer

学習モデルに隠れ層を1つ追加します。この関数を呼んだ順で学習モデルの左から右へ隠れ層を追加します。

最後にIZEL_set_output_layer()を呼ぶことで学習モデルは完成となります。これ以後にIZEL_add_layer()を呼んだ場合はエラーとなり、学習モデルに隠れ層の追加は行われません。

void  IZEL_add_layer(int handle, unsigned int length, int activation_function)

引数

  引数名

I/O                説明
handle In ハンドラ値
length In 隠れニューロンの数を指定します。
activation_function In

活性化関数を指定します。以下の活性化関数を指定できます。

   E_ACTIVATION_FUNCTION_ReLU        : ReLU

   E_ACTIVATION_FUNCTION_SOFTMAX   : softmax

   E_ACTIVATION_FUNCTION_STEP          : step

   E_ACTIVATION_FUNCTION_SIGMOID    : sigmoid

この引数は省略することもできます。省略した場合はReLUがセットされます。

戻り値

0 : 正常

-1: エラー

サンプルソース

#include <Izel.mqh>

void sample()
{
   int handle;

   //   オープン
   handle = IZEL_open();

   if( handle < 0 ) {
      // エラー処理;
   }

   // 学習モデルの定義 
   IZEL_add_layer(handle, 100);
   IZEL_add_layer(handle, 200);
   IZEL_set_output_layer(handle, 2);

   // トレーニングデータのセット
   IZEL_open_x_train(handle);
   IZEL_append_x_train(handle, 1.0);
   IZEL_append_x_train(handle, 2.0);
   IZEL_close_x_train(handle);
   IZEL_set_y_train(handle, 1);

   /*
      データのセットを繰り返す。
      ・
  ・
  ・
 */
   // トレーニング
   IZEL_fit(handle, 100, 32);
   

   // クローズ
   IZEL_close(handle);
}
Copyright (C) izel.cloud-line.com All Rights Reserved.