|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.encog.persist.BasicPersistedObject
org.encog.neural.networks.BasicNetwork
public class BasicNetwork
This class implements a neural network. This class works in conjunction the Layer classes. Layers are added to the BasicNetwork to specify the structure of the neural network. The first layer added is the input layer, the final layer added is the output layer. Any layers added between these two layers are the hidden layers. The network structure is stored in the structure member. It is important to call: network.getStructure().finalizeStructure(); Once the neural network has been completely constructed.
| Field Summary | |
|---|---|
static String |
DEFAULT_CONNECTION_LIMIT
|
static String |
TAG_INPUT
Tag used for the input layer. |
static String |
TAG_LIMIT
Tag used for the connection limit. |
static String |
TAG_OUTPUT
Tag used for the output layer. |
| Constructor Summary | |
|---|---|
BasicNetwork()
Construct an empty neural network. |
|
BasicNetwork(NeuralLogic logic)
Construct a basic network using the specified logic. |
|
| Method Summary | |
|---|---|
void |
addLayer(Layer layer)
Add a layer to the neural network. |
void |
addLayer(Layer layer,
SynapseType type)
Add a layer to the neural network. |
double |
calculateError(NeuralDataSet data)
Calculate the error for this neural network. |
int |
calculateNeuronCount()
Calculate the total number of neurons in the network across all layers. |
void |
clearContext()
Clear any data from any context layers. |
void |
clearLayerTags()
Remove all layer tags. |
Object |
clone()
Return a clone of this neural network. |
void |
compute(double[] input,
double[] output)
Compute output for the given input. |
NeuralData |
compute(NeuralData input)
Compute the output for a given input to the neural network. |
NeuralData |
compute(NeuralData input,
NeuralOutputHolder useHolder)
Compute the output for a given input to the neural network. |
Persistor |
createPersistor()
Create a persistor for this object. |
static int |
determineWinner(NeuralData output)
Determine which member of the output is the winning neuron. |
String |
dumpWeights()
|
void |
enableConnection(Synapse synapse,
int fromNeuron,
int toNeuron,
boolean enable)
Enable, or disable, a connection. |
boolean |
equals(BasicNetwork other)
Compare the two neural networks. |
boolean |
equals(BasicNetwork other,
int precision)
Determine if this neural network is equal to another. |
int |
getInputCount()
|
Layer |
getLayer(String tag)
Get the layer specified by the tag. |
Map<String,Layer> |
getLayerTags()
|
NeuralLogic |
getLogic()
|
int |
getOutputCount()
|
Map<String,String> |
getProperties()
|
double |
getPropertyDouble(String name)
Get the specified property as a double. |
long |
getPropertyLong(String name)
Get the specified property as a long. |
String |
getPropertyString(String name)
Get the specified property as a string. |
NeuralStructure |
getStructure()
|
Collection<String> |
getTags(Layer layer)
Get a list of all of the tags on a specific layer. |
int |
getWeightMatrixSize()
|
int |
hashCode()
Generate a hash code. |
boolean |
isConnected(Synapse synapse,
int fromNeuron,
int toNeuron)
Determine if the specified connection is enabled. |
void |
reset()
Reset the weight matrix and the bias values. |
void |
setBiasActivation(double activation)
Sets the bias activation for every layer that supports bias. |
void |
setLogic(NeuralLogic logic)
Set the type of logic this network should use. |
void |
setProperty(String name,
double d)
Set a property as a double. |
void |
setProperty(String name,
long l)
Set a property as a long. |
void |
setProperty(String name,
String value)
Set a property as a double. |
void |
tagLayer(String tag,
Layer layer)
Tag a layer. |
String |
toString()
|
int |
winner(NeuralData input)
Determine the winner for the specified input. |
| Methods inherited from class org.encog.persist.BasicPersistedObject |
|---|
getCollection, getDescription, getName, setCollection, setDescription, setName |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.encog.neural.networks.Network |
|---|
getDescription, getName, setDescription, setName |
| Methods inherited from interface org.encog.persist.EncogPersistedObject |
|---|
getCollection, setCollection |
| Field Detail |
|---|
public static final String TAG_INPUT
public static final String TAG_OUTPUT
public static final String TAG_LIMIT
public static final String DEFAULT_CONNECTION_LIMIT
| Constructor Detail |
|---|
public BasicNetwork()
public BasicNetwork(NeuralLogic logic)
logic - The logic to use with the neural network.| Method Detail |
|---|
public static int determineWinner(NeuralData output)
output - The output from the neural network.
public void addLayer(Layer layer)
addLayer in interface Networklayer - The layer to be added.
public void addLayer(Layer layer,
SynapseType type)
addLayer in interface Networklayer - The layer to be added to the network.type - What sort of synapse should connect this layer to the last.public double calculateError(NeuralDataSet data)
calculateError in interface Networkdata - The training set.
public int calculateNeuronCount()
calculateNeuronCount in interface Networkpublic void clearContext()
clearContext in interface ContextClearablepublic void clearLayerTags()
public Object clone()
clone in interface Networkclone in class Object
public void compute(double[] input,
double[] output)
compute in interface EngineMachineLearninginput - An array of doubles for the input.output - An array of doubles for the output.public NeuralData compute(NeuralData input)
compute in interface Networkinput - The input to the neural network.
public NeuralData compute(NeuralData input,
NeuralOutputHolder useHolder)
compute in interface Networkinput - The input provide to the neural network.useHolder - Allows a holder to be specified, this allows propagation
training to check the output of each layer.
public Persistor createPersistor()
createPersistor in interface NetworkcreatePersistor in interface EncogPersistedObjectcreatePersistor in class BasicPersistedObjectpublic String dumpWeights()
public void enableConnection(Synapse synapse,
int fromNeuron,
int toNeuron,
boolean enable)
synapse - The synapse that contains the connection.fromNeuron - The source neuron.toNeuron - The target connection.enable - True to enable, false to disable.public boolean equals(BasicNetwork other)
equals in interface Networkother - The other neural network.
public boolean equals(BasicNetwork other,
int precision)
equals in interface Networkother - The other neural network.precision - The number of decimal places to compare to.
public int getInputCount()
getInputCount in interface EngineMachineLearningpublic Layer getLayer(String tag)
tag - The tag.
public Map<String,Layer> getLayerTags()
public NeuralLogic getLogic()
public int getOutputCount()
getOutputCount in interface EngineMachineLearningpublic Map<String,String> getProperties()
public double getPropertyDouble(String name)
name - The name of the property.
public long getPropertyLong(String name)
name - The name of the specified property.
public String getPropertyString(String name)
name - The name of the property.
public NeuralStructure getStructure()
getStructure in interface Networkpublic Collection<String> getTags(Layer layer)
layer - The layer to check.
public int getWeightMatrixSize()
getWeightMatrixSize in interface Networkpublic int hashCode()
hashCode in interface NetworkhashCode in class Object
public boolean isConnected(Synapse synapse,
int fromNeuron,
int toNeuron)
synapse - The synapse.fromNeuron - The source neuron.toNeuron - THe target neuron.
public void reset()
reset in interface Networkpublic void setBiasActivation(double activation)
activation - THe new activation.public void setLogic(NeuralLogic logic)
logic - The logic used by the network.
public void setProperty(String name,
double d)
name - The name of the property.d - The value of the property.
public void setProperty(String name,
long l)
name - The name of the property.l - The value of the property.
public void setProperty(String name,
String value)
name - The name of the property.value - The value of the property.
public void tagLayer(String tag,
Layer layer)
tag - The tag name.layer - THe layer to tag.public String toString()
toString in interface NetworktoString in class Objectpublic int winner(NeuralData input)
winner in interface Networkinput - The input patter to present to the neural network.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||