public float activation(bool derivate = false) { if (type == PerceptronType.Type.input || type == PerceptronType.Type.bias) { return(state); } if (activation_type == ActivationType.Type.sigmoid) { return(ActivationFunctions.Sigmoid(state, derivate)); } else if (activation_type == ActivationType.Type.relu) { return(ActivationFunctions.RelU(state, derivate)); } else if (activation_type == ActivationType.Type.tanh) { return(ActivationFunctions.TanH(state, derivate)); } else if (activation_type == ActivationType.Type.identity) { return(ActivationFunctions.Identity(state, derivate)); } else if (activation_type == ActivationType.Type.lrelu) { return(ActivationFunctions.LeakyReLU(state, derivate)); } else { return(ActivationFunctions.Sigmoid(state, derivate)); } }