Обсуждение статьи "Матрицы и векторы в MQL5: функции активации"

 

Опубликована статья Матрицы и векторы в MQL5: функции активации:

В данной статье мы опишем только один из аспектов машинного обучения - функции активации. В искусственных нейронных сетях функция активации нейрона вычисляет значение выходного сигнала на основе значений входного сигнала или набора входных сигналов. Мы покажем, что находится "под капотом".

В качестве иллюстраций были подготовлены графики функции активации и их производных в монотонно возрастающей последовательности от -5 до 5. Был подготовлен скрипт, выводящий график функции на ценовом графике. Нажатием клавиши клавиши Page Down выводится диалог открытия файла для указания имени сохраняемой картинки.

Сохранение png-файла


По клавише ESC производится завершение работы скрипта. Мы не приводим текст этого скрипта здесь - он приложен к статье.

Автор: MetaQuotes

 

круто

спасибо за статью!

 

Удобный сценарий, спасибо.

Я тоже кое-что испек:

ReLu + Sigmoid + Shift для захвата от 0.0 до 1.0 на выходе (вход -12 до 12)

double activationSigmoid(double x){
return(1/(1+MathExp(-1.0*x)));
}
double derivativeSigmoid(double activation_value){
return(activation_value*(1-activation_value));
}
double activationReLuShiSig(double x,double shift=-6.0){
if(x>0.0){
  return(activationSigmoid(x+shift));
  }
return(0.0);
}
double derivativeReLuShiSig(double output){
if(output>0.0){
  return(derivativeSigmoid(output));
  }
return(0.0);
}

Ограниченный экспоненциальный.af=f' (вход от -5.0 до 5.0)

double activationLimitedExponential(double x){
return(MathExp(x)/149.00);
}

//и производная сама по себе
double derivativeLimitedExponential(double x){
return(x);
}

👨‍🔧