Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.math.linearalgebra.pca
Class LimitEigenPairFilter

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
          extended by de.lmu.ifi.dbs.elki.math.linearalgebra.pca.LimitEigenPairFilter
All Implemented Interfaces:
EigenPairFilter, Parameterizable

public class LimitEigenPairFilter
extends AbstractParameterizable
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.

Author:
Elke Achtert

Field Summary
private  boolean absolute
          Indicates whether delta is an absolute or a relative value.
private  Flag ABSOLUTE_FLAG
          "absolute" Flag
static double DEFAULT_DELTA
          The default value for delta.
private  double delta
          Threshold for strong eigenpairs, can be absolute or relative.
private  DoubleParameter DELTA_PARAM
          Parameter delta
static OptionID EIGENPAIR_FILTER_ABSOLUTE
          OptionID for ABSOLUTE_FLAG
static OptionID EIGENPAIR_FILTER_DELTA
          OptionID for DELTA_PARAM
 
Fields inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
optionHandler
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug, logger
 
Constructor Summary
LimitEigenPairFilter()
          Provides a new EigenPairFilter that marks all eigenpairs having an (absolute) eigenvalue below the specified threshold (relative or absolute) as weak eigenpairs, the others are marked as strong eigenpairs.
 
Method Summary
 FilteredEigenPairs filter(SortedEigenPairs eigenPairs)
          Filters the specified eigenpairs into strong and weak eigenpairs, where strong eigenpairs having high variances and weak eigenpairs having small variances.
 List<String> setParameters(List<String> args)
          Calls the super method and sets additionally the values of the flag ABSOLUTE_FLAG and the parameter DELTA_PARAM.
 String shortDescription()
          Returns a short description of the class.
 
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
addOption, addParameterizable, addParameterizable, checkGlobalParameterConstraints, collectOptions, getAttributeSettings, getParameters, rememberParametersExcept, removeOption, removeParameterizable
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, progress, verbose, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.utilities.optionhandling.Parameterizable
checkGlobalParameterConstraints, collectOptions, getParameters
 

Field Detail

EIGENPAIR_FILTER_ABSOLUTE

public static final OptionID EIGENPAIR_FILTER_ABSOLUTE
OptionID for ABSOLUTE_FLAG


EIGENPAIR_FILTER_DELTA

public static final OptionID EIGENPAIR_FILTER_DELTA
OptionID for DELTA_PARAM


ABSOLUTE_FLAG

private final Flag ABSOLUTE_FLAG
"absolute" Flag


DEFAULT_DELTA

public static final double DEFAULT_DELTA
The default value for delta.

See Also:
Constant Field Values

DELTA_PARAM

private final DoubleParameter DELTA_PARAM
Parameter delta


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.

Constructor Detail

LimitEigenPairFilter

public LimitEigenPairFilter()
Provides a new EigenPairFilter that marks all eigenpairs having an (absolute) eigenvalue below the specified threshold (relative or absolute) as weak eigenpairs, the others are marked as strong eigenpairs.

Method Detail

filter

public FilteredEigenPairs filter(SortedEigenPairs eigenPairs)
Description copied from interface: EigenPairFilter
Filters the specified eigenpairs into strong and weak eigenpairs, where strong eigenpairs having high variances and weak eigenpairs having small variances.

Specified by:
filter in interface EigenPairFilter
Parameters:
eigenPairs - the eigenPairs (i.e. the eigenvectors and
Returns:
the filtered eigenpairs

setParameters

public List<String> setParameters(List<String> args)
                           throws ParameterException
Calls the super method and sets additionally the values of the flag ABSOLUTE_FLAG and the parameter DELTA_PARAM.

Specified by:
setParameters in interface Parameterizable
Overrides:
setParameters in class AbstractParameterizable
Parameters:
args - parameters to set the attributes accordingly to
Returns:
a list containing the unused parameters
Throws:
ParameterException - in case of wrong parameter-setting

shortDescription

public String shortDescription()
Description copied from class: AbstractParameterizable
Returns a short description of the class.

Specified by:
shortDescription in interface Parameterizable
Overrides:
shortDescription in class AbstractParameterizable
Returns:
Description of the class

Release 0.2 (2009-07-06_1820)