Exemplo n.º 1
0
 public void SetLayerActivationHidden(ref FeedForwardNetLayer layer, FeedForwardNetLayer previousLayer)
 {
     for (int fromNo = 0; fromNo < layer.GetFromUnitCount(); fromNo++)
     {
         layer.SetFromUnitActivation(fromNo, previousLayer.GetToUnitActivation(fromNo));
     }
 }
Exemplo n.º 2
0
        ErrorMeasure ForwardPassError(ITrainingSetItemRepository trainingSetItem)
        {
            ErrorMeasure errorMeasure;
            double       sumError = 0.0;
            double       localError;
            Boolean      hasLearned = true;

            FeedForwardNetLayer outputLayer = feedForwardNet.GetOutputLayer();

            for (int outputNo = 0; outputNo < outputLayer.GetToUnitCount(); outputNo++)
            {
                localError = Math.Abs(trainingSetItem.GetOutputNodeValue(outputNo) - outputLayer.GetToUnitActivation(outputNo));
                if (localError > backPropagationConstants.OutputTolerance)
                {
                    hasLearned = false;
                }
                sumError += localError;
            }
            errorMeasure = new ErrorMeasure(hasLearned, sumError);
            return(errorMeasure);
        }
Exemplo n.º 3
0
        public void ShowWeights()
        {
            for (int layerCount = 0; layerCount < LayerCount(); layerCount++)
            {
                FeedForwardNetLayer currentLayer = GetLayer(layerCount);

                for (int fromNo = 0; fromNo < currentLayer.GetFromUnitCount(); fromNo++)
                {
                    Console.WriteLine("act layer {0} fromNo {1} = {2} ", layerCount, fromNo, currentLayer.GetFromUnitActivation(fromNo).ToString());
                }

                for (int toNo = 0; toNo < currentLayer.GetToUnitCount(); toNo++)
                {
                    Console.WriteLine("act layer {0} toNo {1} = {2} ", layerCount, toNo, currentLayer.GetToUnitActivation(toNo).ToString());
                }

                for (int toNo = 0; toNo < currentLayer.GetToUnitCount(); toNo++)
                {
                    for (int fromNo = 0; fromNo < currentLayer.GetFromUnitCount(); fromNo++)
                    {
                        Console.WriteLine("layer {0} From {1} To {2} Weight {3}", layerCount, fromNo, toNo, currentLayer.GetLayerWeight(fromNo, toNo).ToString());
                    }
                    Console.WriteLine("layer {0} To {1} bias {2} ", layerCount, toNo, currentLayer.GetLayerBias(toNo).ToString());

                    Console.WriteLine("--------");
                }
            }
        }