org.encog.neural.cpn.training

## Class TrainOutstar

- java.lang.Object
- - org.encog.ml.train.BasicTraining
  - - org.encog.neural.cpn.training.TrainOutstar

- All Implemented Interfaces:
    MLTrain, LearningRate

      public class TrainOutstar
      extends BasicTraining
      implements LearningRate

  Used for Instar training of a CPN neural network. A CPN network is a hybrid supervised/unsupervised network. The Outstar training handles the supervised portion of the training.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TrainOutstar(CPN theNetwork, MLDataSet theTraining, double theLearningRate)` Construct the outstar trainer.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canContinue()`
    `double` | `getLearningRate()`
    `MLMethod` | `getMethod()` Get the current best machine learning method from the training.
    `void` | `iteration()` Perform one iteration of training.
    `TrainingContinuation` | `pause()` Pause the training to continue later.
    `void` | `resume(TrainingContinuation state)` Resume training.
    `void` | `setLearningRate(double rate)` Set the learning rate.

    - ### Methods inherited from class org.encog.ml.train.BasicTraining

      `addStrategy, finishTraining, getError, getImplementationType, getIteration, getStrategies, getTraining, isTrainingDone, iteration, postIteration, preIteration, setError, setIteration, setTraining`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TrainOutstar

          public TrainOutstar(CPN theNetwork,
                      MLDataSet theTraining,
                      double theLearningRate)

      Construct the outstar trainer.
      Parameters:
        `theNetwork` - The network to train.
        `theTraining` - The training data, must provide ideal outputs.
        `theLearningRate` - The learning rate.

  - ### Method Detail

    - #### canContinue

          public boolean canContinue()

      Specified by:
        `canContinue` in interface `MLTrain`
      Returns:
        True if the training can be paused, and later continued.

    - #### getLearningRate

          public double getLearningRate()

      Specified by:
        `getLearningRate` in interface `LearningRate`
      Returns:
        The learning rate.

    - #### getMethod

          public MLMethod getMethod()

      Get the current best machine learning method from the training.
      Specified by:
        `getMethod` in interface `MLTrain`
      Returns:
        The best machine learningm method.

    - #### iteration

          public void iteration()

      Perform one iteration of training.
      Specified by:
        `iteration` in interface `MLTrain`

    - #### pause

          public TrainingContinuation pause()

      Pause the training to continue later.
      Specified by:
        `pause` in interface `MLTrain`
      Returns:
        A training continuation object.

    - #### resume

          public void resume(TrainingContinuation state)

      Resume training.
      Specified by:
        `resume` in interface `MLTrain`
      Parameters:
        `state` - The training continuation object to use to continue.

    - #### setLearningRate

          public void setLearningRate(double rate)

      Set the learning rate.
      Specified by:
        `setLearningRate` in interface `LearningRate`
      Parameters:
        `rate` - The new learning rate

Copyright © 2014. All Rights Reserved.