Exemple #1
0
 public void AddInputs(NeuralNetworkLayer W)
 {
     foreach(Neuron N in W.Neurons)
     {
         AddInputs(N);
     }
 }
        public NeuralNetwork(int inputSize, int hiddenLayersSize, int outputSize,
            int hiddenLayersCount, iActivationFunction f)
        {
            // tworzenie odpowiednich warstw...

                  inputLayer = new NeuralNetworkLayer(inputSize, f); //****
                  outputLayer = new NeuralNetworkLayer(outputSize, f);
                  hiddenLayers = new NeuralNetworkLayer[hiddenLayersCount];

                  for (int i=0; i<hiddenLayersCount; i++)
                    { hiddenLayers[i] = new NeuralNetworkLayer(hiddenLayersSize, f); }

                  // ...i laczenie ich ze soba.

                  //wyjsciowej z ukrytymi
                  outputLayer.AttachToLayer(hiddenLayers[hiddenLayersCount-1]);

                  //ukrytych ze sob¹
                  for (int i=(hiddenLayersCount-1); i>0; i--)

                  {
                        hiddenLayers[i].AttachToLayer(hiddenLayers[i-1]);
                  }

                  //ukrytych z wejœciow¹
                  hiddenLayers[0].AttachToLayer(inputLayer);
        }
 public void AttachToLayer(NeuralNetworkLayer W)
 {
     //laczy z nizsza warstwa od tej ktora wywolywuje metode
     foreach(Neuron N in Neurons)
     {
         N.AddInputs(W);
     }
 }