Beispiel #1
0
        public NeuralNet(int inputs, int hidden, int outputs, Func <double, double> activationFc, Func <double, double> activationFc_derivitiv)
        {
            inputNodes  = inputs;
            hiddenNodes = hidden;
            outputNodes = outputs;

            HiddenLayer = new Layer(hiddenNodes, inputNodes)
            {
                ActivationFc = activationFc, ActivationFc_derivitiv = activationFc_derivitiv
            };
            OutputLayer = new Layer(outputNodes, hiddenNodes)
            {
                ActivationFc = activationFc, ActivationFc_derivitiv = activationFc_derivitiv
            };
            HiddenLayer.Weights.Randomize();
            OutputLayer.Weights.Randomize();

            HiddenLayer.Bias = new Matrix(hiddenNodes, 1);
            OutputLayer.Bias = new Matrix(outputNodes, 1);
            HiddenLayer.Bias.Randomize();
            OutputLayer.Bias.Randomize();

            HiddenLayer.ConnectTo(OutputLayer);
        }