Holds the output from each layer of the neural network. This is very useful for the propagation algorithms that need to examine the output of each individual layer.
Esempio n. 1
0
 /// <summary>
 /// Compute the output for a given input to the neural network. This method
 /// provides a parameter to specify an output holder to use.  This holder
 /// allows propagation training to track the output from each layer.
 /// If you do not need this holder pass null, or use the other
 /// compare method.
 /// </summary>
 /// <param name="input">The input provide to the neural network.</param>
 /// <param name="useHolder">Allows a holder to be specified, this allows
 /// propagation training to check the output of each layer.</param>
 /// <returns>The results from the output neurons.</returns>
 public virtual INeuralData Compute(INeuralData input,
                                    NeuralOutputHolder useHolder)
 {
     try
     {
         return(logic.Compute(input, useHolder));
     }
     catch (IndexOutOfRangeException ex)
     {
         throw new NeuralNetworkError(
                   "Index exception: there was likely a mismatch between layer sizes, or the size of the input presented to the network.",
                   ex);
     }
 }
Esempio n. 2
0
 /// <summary>
 /// Compute the output for a given input to the neural network. This method
 /// provides a parameter to specify an output holder to use.  This holder
 /// allows propagation training to track the output from each layer.
 /// If you do not need this holder pass null, or use the other 
 /// compare method.
 /// </summary>
 /// <param name="input">The input provide to the neural network.</param>
 /// <param name="useHolder">Allows a holder to be specified, this allows
 /// propagation training to check the output of each layer.</param>
 /// <returns>The results from the output neurons.</returns>
 public virtual INeuralData Compute(INeuralData input,
          NeuralOutputHolder useHolder)
 {
     try
     {
         return logic.Compute(input, useHolder);
     }
     catch (IndexOutOfRangeException ex)
     {
         throw new NeuralNetworkError(
                 "Index exception: there was likely a mismatch between layer sizes, or the size of the input presented to the network.",
                 ex);
     }
 }