jacobian

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 23bfc8c623e178121b92e404cf1292e87d53d3e7
parent 04e7ca9bdc0c176e2a42682fb3feb339450eaa3e
Author: David Freifeld <freifeld.david@gmail.com>
Date:   Wed, 29 Jul 2020 18:01:17 -0700

New activations are now allowed to be added

Diffstat:
Msrc/bpnn.cpp | 17+++++++++++++++++
1 file changed, 17 insertions(+), 0 deletions(-)

diff --git a/src/bpnn.cpp b/src/bpnn.cpp @@ -84,6 +84,7 @@ void Network::init_decay(char* type, float a_0, float k) } } +// Gross code inbound void Network::add_layer(int nodes, char* name) { length++; @@ -121,6 +122,22 @@ void Network::add_layer(int nodes, char* name) layers[length-1].activation = rectifier(linear); layers[length-1].activation_deriv = rectifier(linear_deriv); } + else if (strcmp(name, "leaky_relu") == 0) { + layers[length-1].activation = leaky_relu; + layers[length-1].activation_deriv = leaky_relu_deriv; + } + else if (strcmp(name, "bipolar_sigmoid") == 0) { + layers[length-1].activation = bipolar_sigmoid; + layers[length-1].activation_deriv = bipolar_sigmoid_deriv; + } + else if (strcmp(name, "tanh") == 0) { + layers[length-1].activation = tanh(); + layers[length-1].activation_deriv = [](float x) -> float {1.0/cosh(x)}; + } + else if (strcmp(name, "hard_tanh") == 0) { + layers[length-1].activation = hard_tanh(); + layers[length-1].activation_deriv = hard_tanh_deriv(); + } else if (strcmp(name, "resig") == 0) { layers[length-1].activation = rectifier(sigmoid); layers[length-1].activation_deriv = rectifier(sigmoid_deriv);