Training strategies can be added to training algorithms. Training strategies allow different additional logic to be added to an existing training algorithm. There are a number of different training strategies that can perform various tasks, such as adjusting the learning rate or momentum, or terminating training when improvement diminishes. Other strategies are provided as well.
For a list of all members of this type, see IStrategy Members .
| Type | Description |
|---|---|
| Greedy | A simple greedy strategy. If the last iteration did not improve training, then discard it. Care must be taken with this strategy, as sometimes a training algorithm may need to temporarily decrease the error level before improving it. |
| HybridStrategy | A hybrid stragey allows a secondary training algorithm to be used. Once the primary algorithm is no longer improving by much, the secondary will be used. Using simulated annealing in as a secondary to one of the propagation methods is often a very efficient combination as it can help the propagation method escape a local minimum. This is particularly true with backpropagation. |
| ResetStrategy | The reset strategy will reset the weights if the neural network fails to fall below a specified error by a specified number of cycles. This can be useful to throw out initially "bad/hard" random initializations of the weight matrix. |
| SmartLearningRate | Attempt to automatically set the learning rate in a learning method that supports a learning rate. |
| SmartMomentum | Attempt to automatically set a momentum in a training algorithm that supports momentum. |
| StopTrainingStrategy | This strategy will indicate once training is no longer improving the neural network by a specified amount, over a specified number of cycles. This allows the program to automatically determine when to stop training. |
Namespace: Encog.Neural.Networks.Training
Assembly: encog-core-cs (in encog-core-cs.dll)
IStrategy Members | Encog.Neural.Networks.Training Namespace