|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.encog.neural.neat.NEATNetwork
public class NEATNetwork
NEAT networks relieve the programmer of the need to define the hidden layer structure of the neural network. The output from the neural network can be calculated normally or using a snapshot. The snapshot mode is slower, but it can be more accurate. The snapshot handles recurrent layers better, as it takes the time to loop through the network multiple times to "flush out" the recurrent links. NeuroEvolution of Augmenting Topologies (NEAT) is a genetic algorithm for the generation of evolving artificial neural networks. It was developed by Ken Stanley while at The University of Texas at Austin. http://www.cs.ucf.edu/~kstanley/ The following Journal articles were used to implement NEAT/HyperNEAT in Encog. Provided in BibTeX form. Article{stanley:ec02,title={Evolving Neural Networks Through Augmenting Topologies}, author={Kenneth O. Stanley and Risto Miikkulainen}, volume={10}, journal={Evolutionary Computation}, number={2}, pages={99-127}, url= "http://nn.cs.utexas.edu/?stanley:ec02" , year={2002}} MISC{Gauci_abstractgenerating, author = {Jason Gauci and Kenneth Stanley}, title = {ABSTRACT Generating Large-Scale Neural Networks Through Discovering Geometric Regularities}, year = {}} INPROCEEDINGS{Whiteson05automaticfeature, author = {Shimon Whiteson and Kenneth O. Stanley and Risto Miikkulainen}, title = {Automatic feature selection in neuroevolution}, booktitle = {In Genetic and Evolutionary Computation Conference}, year = {2005}, pages = {1225--1232}, publisher = {ACM Press} }
Constructor Summary | |
---|---|
NEATNetwork(int inputNeuronCount,
int outputNeuronCount,
List<NEATLink> connectionArray,
ActivationFunction[] theActivationFunctions)
Construct a NEAT network. |
Method Summary | |
---|---|
double |
calculateError(MLDataSet data)
Calculate the error for this neural network. |
MLData |
compute(MLData input)
Compute the output from this synapse. |
int |
getActivationCycles()
|
ActivationFunction[] |
getActivationFunctions()
|
int |
getInputCount()
|
NEATLink[] |
getLinks()
|
int |
getOutputCount()
|
int |
getOutputIndex()
|
double[] |
getPostActivation()
|
double[] |
getPreActivation()
|
double |
getRelaxationThreshold()
|
boolean |
isHasRelaxed()
|
void |
setActivationCycles(int activationCycles)
Set the number of activation cycles to use. |
void |
setHasRelaxed(boolean hasRelaxed)
Set true, if the network has relaxed and values no longer changing. |
void |
setRelaxationThreshold(double relaxationThreshold)
The amount of change allowed before the network is considered to have relaxed. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public NEATNetwork(int inputNeuronCount, int outputNeuronCount, List<NEATLink> connectionArray, ActivationFunction[] theActivationFunctions)
inputNeuronCount
- The input neuron count.outputNeuronCount
- The output neuron count.connectionArray
- The links.theActivationFunctions
- The activation functions.Method Detail |
---|
public double calculateError(MLDataSet data)
calculateError
in interface MLError
data
- The training set.
public MLData compute(MLData input)
compute
in interface MLRegression
input
- The input to this synapse.
public int getActivationCycles()
public ActivationFunction[] getActivationFunctions()
public int getInputCount()
getInputCount
in interface MLInput
public NEATLink[] getLinks()
public int getOutputCount()
getOutputCount
in interface MLOutput
public int getOutputIndex()
public double[] getPostActivation()
public double[] getPreActivation()
public double getRelaxationThreshold()
public boolean isHasRelaxed()
public void setActivationCycles(int activationCycles)
activationCycles
- The number of activation cycles.public void setHasRelaxed(boolean hasRelaxed)
hasRelaxed
- True if the network has relaxed.public void setRelaxationThreshold(double relaxationThreshold)
relaxationThreshold
- The relaxation threshold.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |