Class LimitEigenPairFilter
- java.lang.Object
-
- elki.math.linearalgebra.pca.filter.LimitEigenPairFilter
-
- All Implemented Interfaces:
EigenPairFilter
@Title("Limit-based Eigenpair Filter") @Description("Filters all eigenvalues, which are lower than a given value.") public class LimitEigenPairFilter extends java.lang.Object implements EigenPairFilter
The LimitEigenPairFilter marks all eigenpairs having an (absolute) eigenvalue below the specified threshold (relative or absolute) as weak eigenpairs, the others are marked as strong eigenpairs.- Since:
- 0.1
- Author:
- Elke Achtert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLimitEigenPairFilter.ParParameterization class.
-
Field Summary
Fields Modifier and Type Field Description private booleanabsoluteIndicates whether delta is an absolute or a relative value.static doubleDEFAULT_DELTAThe default value for delta.private doubledeltaThreshold for strong eigenpairs, can be absolute or relative.-
Fields inherited from interface elki.math.linearalgebra.pca.filter.EigenPairFilter
PCA_EIGENPAIR_FILTER
-
-
Constructor Summary
Constructors Constructor Description LimitEigenPairFilter(double delta, boolean absolute)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intfilter(double[] eigenValues)Filters the specified eigenvalues into strong and weak eigenvalues, where strong eigenvalues have high variance and weak eigenvalues have small variance.
-
-
-
Field Detail
-
DEFAULT_DELTA
public static final double DEFAULT_DELTA
The default value for delta.- See Also:
- Constant Field Values
-
delta
private double delta
Threshold for strong eigenpairs, can be absolute or relative.
-
absolute
private boolean absolute
Indicates whether delta is an absolute or a relative value.
-
-
Method Detail
-
filter
public int filter(double[] eigenValues)
Description copied from interface:EigenPairFilterFilters the specified eigenvalues into strong and weak eigenvalues, where strong eigenvalues have high variance and weak eigenvalues have small variance.- Specified by:
filterin interfaceEigenPairFilter- Parameters:
eigenValues- the array of eigenvalues, must be sorted descending- Returns:
- the number of eigenvectors to keep
-
-