org.encog.util.normalize.output.zaxis
Class OutputFieldZAxis
java.lang.Object
org.encog.util.normalize.output.BasicOutputField
org.encog.util.normalize.output.OutputFieldGrouped
org.encog.util.normalize.output.zaxis.OutputFieldZAxis
- All Implemented Interfaces:
- Serializable, OutputField
public class OutputFieldZAxis
- extends OutputFieldGrouped
Both the multiplicative and z-axis normalization types allow a group of
outputs to be adjusted so that the "vector length" is 1. Both go about it in
different ways. Certain types of neural networks require a vector length of
1.
Z-Axis normalization is usually a better choice than multiplicative. However,
multiplicative can perform better than Z-Axis when all of the values are near
zero most of the time. This can cause the "synthetic value" that z-axis uses
to dominate and skew the answer.
Z-Axis gets its name from 3D computer graphics, where there is a Z-Axis
extending from the plane created by the X and Y axes. It has nothing to do
with z-scores or the z-transform of signal theory.
To implement Z-Axis normalization a scaling factor must be created to
multiply each of the inputs against. Additionally, a synthetic field must be
added. It is very important that this synthetic field be added to any z-axis
group that you might use. The synthetic field is represented by the
OutputFieldZAxisSynthetic class.
- Author:
- jheaton
- See Also:
- Serialized Form
Method Summary |
double |
calculate(int subfield)
Calculate the current value for this field. |
int |
getSubfieldCount()
|
void |
rowInit()
Not needed for this sort of output field. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
OutputFieldZAxis
public OutputFieldZAxis(OutputFieldGroup group,
InputField field)
- Construct a ZAxis output field.
- Parameters:
group
- The group this field belongs to.field
- The input field this is based on.
calculate
public double calculate(int subfield)
- Calculate the current value for this field.
- Parameters:
subfield
- Ignored, this field type does not have subfields.
- Returns:
- The current value for this field.
getSubfieldCount
public int getSubfieldCount()
- Returns:
- The subfield count, which is one, as this field type does not
have subfields.
rowInit
public void rowInit()
- Not needed for this sort of output field.
Copyright © 2014. All Rights Reserved.