ManhattanPropagation
org.encog.neural.networks.training.propagation.manhattan

Class ManhattanPropagation

  • All Implemented Interfaces:
    MLTrain, LearningRate, Train


    public class ManhattanPropagationextends Propagationimplements LearningRate
    One problem that the backpropagation technique has is that the magnitude of the partial derivative may be calculated too large or too small. The Manhattan update algorithm attempts to solve this by using the partial derivative to only indicate the sign of the update to the weight matrix. The actual amount added or subtracted from the weight matrix is obtained from a simple constant. This constant must be adjusted based on the type of neural network being trained. In general, start with a higher constant and decrease it as needed. The Manhattan update algorithm can be thought of as a simplified version of the resilient algorithm. The resilient algorithm uses more complex techniques to determine the update value.
    • Constructor Detail

      • ManhattanPropagation

        public ManhattanPropagation(ContainsFlat network,                    MLDataSet training,                    double learnRate)
        Construct a Manhattan propagation training object.
        Parameters:
        network - The network to train.
        training - The training data to use.
        learnRate - The learning rate.
    • Method Detail

      • getLearningRate

        public final double getLearningRate()
        Specified by:
        getLearningRate in interface LearningRate
        Returns:
        The learning rate that was specified in the constructor.
      • setLearningRate

        public final void setLearningRate(double rate)
        Set the learning rate.
        Specified by:
        setLearningRate in interface LearningRate
        Parameters:
        rate - The new learning rate.
      • canContinue

        public final boolean canContinue()
        This training type does not support training continue.
        Specified by:
        canContinue in interface MLTrain
        Returns:
        Always returns false.
      • pause

        public final TrainingContinuation pause()
        This training type does not support training continue.
        Specified by:
        pause in interface MLTrain
        Returns:
        Always returns null.
      • resume

        public final void resume(TrainingContinuation state)
        This training type does not support training continue.
        Specified by:
        resume in interface MLTrain
        Parameters:
        state - Not used.

SCaVis 2.1 © jWork.ORG