public interface ThresholdingAlgorithm
Whilst a differential algorithm may not be used there is a very large chance of it happening - any capable backpropagation algorithm will attempt to minimise error by trying to locate the direction to move in which will reduce error gradient descent), and this is far easier if the differential is given more accurately, and this can be done best by hand. Extend ThreePointRuleDifferentiation if you wish to use numerical methods, although at the tiny descent levels usually used this is very inaccurate. If at all possible work out and code a differential algorithm manually, ThreePointRuleDifferentiation is very very bad by comparison.
SinusoidalThresholdModel,
LinearThresholdModel,
HyperbolicTangentThresholdModel,
SigmoidThresholdModel| Modifier and Type | Method and Description |
|---|---|
double |
differentialValue(Edge[] edges)
Returns the first differential of the value.
|
boolean |
validateInput(double value)
Returns true if the provided number is within reasonable input bounds for this algorithm.
|
double |
value(Edge[] edges)
Returns the value of a neuron.
|
double value(Edge[] edges)
edges - All of the edges leading into this neuronboolean validateInput(double value)
value - The number to validatedouble differentialValue(Edge[] edges)
edges - The edges from which the value will be calculated