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:
- java.io.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.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor and Description OutputFieldZAxis(OutputFieldGroup group, InputField field)Construct a ZAxis output field.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description doublecalculate(int subfield)Calculate the current value for this field.intgetSubfieldCount()voidrowInit()Not needed for this sort of output field.-
Methods inherited from class org.encog.util.normalize.output.OutputFieldGrouped
getGroup, getSourceField
-
Methods inherited from class org.encog.util.normalize.output.BasicOutputField
isIdeal, setIdeal
-
-
-
-
Constructor Detail
-
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.
-
-
Method Detail
-
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.
-
-
DMelt 3.0 © DataMelt by jWork.ORG