|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.encog.ml.train.BasicTraining
org.encog.neural.networks.training.anneal.NeuralSimulatedAnnealing
public class NeuralSimulatedAnnealing
This class implements a simulated annealing training algorithm for neural networks. It is based on the generic SimulatedAnnealing class. It is used in the same manner as any other training class that implements the Train interface. There are essentially two ways you can make use of this class. Either way, you will need a score object. The score object tells the simulated annealing algorithm how well suited a neural network is. If you would like to use simulated annealing with a training set you should make use TrainingSetScore class. This score object uses a training set to score your neural network. If you would like to be more abstract, and not use a training set, you can create your own implementation of the CalculateScore method. This class can then score the networks any way that you like.
Field Summary | |
---|---|
static double |
CUT
The cutoff for random data. |
Constructor Summary | |
---|---|
NeuralSimulatedAnnealing(MLEncodable network,
CalculateScore calculateScore,
double startTemp,
double stopTemp,
int cycles)
Construct a simulated annleaing trainer for a encodable MLMethod. |
Method Summary | |
---|---|
boolean |
canContinue()
|
double[] |
getArray()
Get the network as an array of doubles. |
double[] |
getArrayCopy()
|
CalculateScore |
getCalculateScore()
|
MLEncodable |
getMethod()
Get the current best machine learning method from the training. |
void |
iteration()
Perform one iteration of simulated annealing. |
TrainingContinuation |
pause()
Pause the training to continue later. |
void |
putArray(double[] array)
Convert an array of doubles to the current best network. |
void |
randomize()
Randomize the weights and bias values. |
void |
resume(TrainingContinuation state)
Resume training. |
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 |
Field Detail |
---|
public static final double CUT
Constructor Detail |
---|
public NeuralSimulatedAnnealing(MLEncodable network, CalculateScore calculateScore, double startTemp, double stopTemp, int cycles)
network
- The neural network to be trained.calculateScore
- Used to calculate the score for a MLMethod.startTemp
- The starting temperature.stopTemp
- The ending temperature.cycles
- The number of cycles in a training iteration.Method Detail |
---|
public boolean canContinue()
public double[] getArray()
public double[] getArrayCopy()
public CalculateScore getCalculateScore()
public MLEncodable getMethod()
public void iteration()
public TrainingContinuation pause()
MLTrain
public void putArray(double[] array)
array
- An array.public void randomize()
public void resume(TrainingContinuation state)
state
- The training continuation object to use to continue.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |