|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.joone.engine.ExtendedKalmanFilterFFN
public class ExtendedKalmanFilterFFN
Implements the extended Kalman filter (EKF) as described in "Using an extended Kalman filter learning algorithm for feed-forward neural networks to describe tracer correlations" by Lary and Mussa (2004) in order to train a feed-forward neural network. This requires some matrix algebra for which colt is utilised.
| Field Summary | |
|---|---|
protected double |
kalmanBoost
A boost factor used to dampen the Kalman gain |
protected java.util.List<NodesAndWeights.Node> |
nodes
The list of nodes we use in the filter |
protected NodesAndWeights |
nodesAndWeights
The network structure |
protected DoubleMatrix2D |
P
The P matrix |
protected double |
p0
The initial (diagonal) values to enter into the P matrix |
protected int |
patternCount
The current pattern count |
protected int |
processorCount
Number of processors to use, 2 or more indicates SMP |
protected DoubleMatrix2D |
Q
The Q matrix |
protected double |
qDecay
The Q decay factor |
protected DoubleMatrix2D |
R
The R matrix |
protected double |
rDecay
The R decay factor |
protected int |
verbose
Zero for no verbosity, otherwise the number of patterns after which we croak |
protected DoubleMatrix1D |
W
The weight estimate |
protected java.util.List<NodesAndWeights.Weight> |
weights
The list of weights that we use in the filter |
| Constructor Summary | |
|---|---|
ExtendedKalmanFilterFFN(NodesAndWeights nodesAndWeights,
double kalmanBoost,
int verbose)
Create a new instance of the filter |
|
ExtendedKalmanFilterFFN(NodesAndWeights nodesAndWeights,
double kalmanBoost,
int verbose,
int processorCount)
Create a new instance of the filter - use for SMP |
|
| Method Summary | |
|---|---|
protected void |
init()
Initialise the filter |
void |
update(double[] error)
Update the filter. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected NodesAndWeights nodesAndWeights
protected DoubleMatrix1D W
protected DoubleMatrix2D P
protected double p0
protected DoubleMatrix2D Q
protected double qDecay
protected DoubleMatrix2D R
protected double rDecay
protected int patternCount
protected double kalmanBoost
protected java.util.List<NodesAndWeights.Node> nodes
protected java.util.List<NodesAndWeights.Weight> weights
protected int verbose
protected int processorCount
| Constructor Detail |
|---|
public ExtendedKalmanFilterFFN(NodesAndWeights nodesAndWeights,
double kalmanBoost,
int verbose)
nodesAndWeights - the network to be optimised's structurekalmanBoost - the boost factor (multiplier) to useverbose - zero for no verbosity or the number of patterns after which we croak
public ExtendedKalmanFilterFFN(NodesAndWeights nodesAndWeights,
double kalmanBoost,
int verbose,
int processorCount)
nodesAndWeights - the network to be optimised's structurekalmanBoost - the boost factor (multiplier) to useverbose - zero for no verbosity or the number of patterns after which we croakprocessorCount - number of processors to use| Method Detail |
|---|
protected void init()
public void update(double[] error)
error - the most recently seen error pattern
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||