org.encog.neural.rbf
Class RBFNetwork

java.lang.Object
  extended by org.encog.ml.BasicML
      extended by org.encog.neural.rbf.RBFNetwork
All Implemented Interfaces:
Serializable, MLError, MLInput, MLInputOutput, MLMethod, MLOutput, MLProperties, MLRegression, ContainsFlat

public class RBFNetwork
extends BasicML
implements MLError, MLRegression, ContainsFlat

RBF neural network.

See Also:
Serialized Form

Constructor Summary
RBFNetwork()
          Construct RBF network.
RBFNetwork(int inputCount, int hiddenCount, int outputCount, RBFEnum t)
          Construct RBF network.
RBFNetwork(int inputCount, int outputCount, RadialBasisFunction[] rbf)
          Construct RBF network.
 
Method Summary
 double calculateError(MLDataSet data)
          Calculate the error for this neural network.
 MLData compute(MLData input)
          Compute regression.
 FlatNetwork getFlat()
          
 int getInputCount()
          
 int getOutputCount()
          
 RadialBasisFunction[] getRBF()
          Get the RBF's.
 void randomizeRBFCentersAndWidths(double min, double max, RBFEnum t)
          Set the RBF components to random values.
 void setRBF(RadialBasisFunction[] rbf)
          Set the RBF's.
 void setRBFCentersAndWidths(double[][] centers, double[] widths, RBFEnum t)
          Array containing center position.
 void setRBFCentersAndWidthsEqualSpacing(double minPosition, double maxPosition, RBFEnum t, double volumeNeuronRBFWidth, boolean useWideEdgeRBFs)
          Equally spaces all hidden neurons within the n dimensional variable space.
 void setRBFFunction(int index, RBFEnum t, double[] centers, double width)
          Set an RBF function.
 void updateProperties()
          Update any objeccts when a property changes.
 
Methods inherited from class org.encog.ml.BasicML
getProperties, getPropertyDouble, getPropertyLong, getPropertyString, setProperty, setProperty, setProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RBFNetwork

public RBFNetwork()
Construct RBF network.


RBFNetwork

public RBFNetwork(int inputCount,
                  int hiddenCount,
                  int outputCount,
                  RBFEnum t)
Construct RBF network.

Parameters:
inputCount - The input count.
hiddenCount - The hidden count.
outputCount - The output count.
t - The RBF type.

RBFNetwork

public RBFNetwork(int inputCount,
                  int outputCount,
                  RadialBasisFunction[] rbf)
Construct RBF network.

Parameters:
inputCount - The input count.
outputCount - The output count.
rbf - The RBF type.
Method Detail

calculateError

public final double calculateError(MLDataSet data)
Calculate the error for this neural network.

Specified by:
calculateError in interface MLError
Parameters:
data - The training set.
Returns:
The error percentage.

compute

public final MLData compute(MLData input)
Compute regression.

Specified by:
compute in interface MLRegression
Parameters:
input - The input data.
Returns:
The output data.

getFlat

public final FlatNetwork getFlat()

Specified by:
getFlat in interface ContainsFlat
Returns:
The flat network associated with this neural network.

getInputCount

public final int getInputCount()

Specified by:
getInputCount in interface MLInput
Returns:
The input.

getOutputCount

public final int getOutputCount()

Specified by:
getOutputCount in interface MLOutput
Returns:
The output count.

getRBF

public final RadialBasisFunction[] getRBF()
Get the RBF's.

Returns:
The RBF's.

randomizeRBFCentersAndWidths

public final void randomizeRBFCentersAndWidths(double min,
                                               double max,
                                               RBFEnum t)
Set the RBF components to random values.

Parameters:
min - Minimum random value.
max - Max random value.
t - The type of RBF to use.

setRBF

public final void setRBF(RadialBasisFunction[] rbf)
Set the RBF's.

Parameters:
rbf - The RBF's.

setRBFCentersAndWidths

public final void setRBFCentersAndWidths(double[][] centers,
                                         double[] widths,
                                         RBFEnum t)
Array containing center position. Row n contains centers for neuron n. Row n contains x elements for x number of dimensions.

Parameters:
centers - The centers.
widths - Array containing widths. Row n contains widths for neuron n. Row n contains x elements for x number of dimensions.
t - The RBF Function to use for this layer.

setRBFCentersAndWidthsEqualSpacing

public final void setRBFCentersAndWidthsEqualSpacing(double minPosition,
                                                     double maxPosition,
                                                     RBFEnum t,
                                                     double volumeNeuronRBFWidth,
                                                     boolean useWideEdgeRBFs)
Equally spaces all hidden neurons within the n dimensional variable space.

Parameters:
minPosition - The minimum position neurons should be centered. Typically 0.
maxPosition - The maximum position neurons should be centered. Typically 1
volumeNeuronRBFWidth - The neuron width of neurons within the mesh.
useWideEdgeRBFs - Enables wider RBF's around the boundary of the neuron mesh.

setRBFFunction

public final void setRBFFunction(int index,
                                 RBFEnum t,
                                 double[] centers,
                                 double width)
Set an RBF function.

Parameters:
index - The index to set.
t - The function type.
centers - The centers.
width - The width.

updateProperties

public void updateProperties()
Update any objeccts when a property changes.

Specified by:
updateProperties in interface MLProperties
Specified by:
updateProperties in class BasicML


Copyright © 2012. All Rights Reserved.