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); }