public static Func <ActivationFunc, Random, double> GetInitFunction(InitializationFunction initializationFunction) { switch (initializationFunction) { default: case InitializationFunction.Random: return(RandomInitialization); } }
/// <summary> /// Initializes a new instance of <see cref="Dense"/> /// </summary> /// <param name="units">Kernel size of the layer</param> /// <param name="activation">Activation function to use (default sigmoid)</param> /// <param name="input">Input layer to connect to</param> /// <param name="biasInitializer">Initialization function for the bias vector (default random normal)</param> /// <param name="weightsInitializer">Initialization function for the weights matrix (default random normal)</param> /// <param name="useBias">Whether or a bias term should be included in the layer</param> /// <param name="name">Name of the layer</param> /// <remarks> /// When no name is provided for a layer, one will be generated when you compile the model. /// </remarks> public Dense(int units, Layer input, ActivationFunction activation = null, InitializationFunction weightsInitializer = null, InitializationFunction biasInitializer = null, bool useBias = true, string name = null) : base(name) { if (units <= 0) { throw new ArgumentException("Invalid layer size. Should be greater than zero", nameof(units)); } _units = units; _useBias = useBias; _activation = activation ?? new Sigmoid(); _weightsInitializer = weightsInitializer ?? new RandomNormal(); _biasInitializer = biasInitializer ?? new RandomNormal(); _input = input ?? throw new ArgumentNullException(nameof(input)); }
public INeuralNetworkBuilderCreateInput SetInitMethod(InitializationFunction initializationFunction) { InitializationFunction = initializationFunction; return(this); }
public Neuron(ActivationFunc activationFunc, InitializationFunction initializationFunction, int inputCount) { ActivationFunc = activationFunc; InputDendrites = new double[inputCount]; InitializationFunc = initializationFunction; }
public NeuralNetworkBuilder(InitializationFunction initializationFunc) { InitializationFunction = initializationFunc; }