Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.preprocessing
Class KnnQueryBasedLocalPCAPreprocessor<V extends NumberVector<V,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.preprocessing.LocalPCAPreprocessor<V>
          extended by de.lmu.ifi.dbs.elki.preprocessing.KnnQueryBasedLocalPCAPreprocessor<V>
Type Parameters:
V - the type of NumberVector handled by this Preprocessor
All Implemented Interfaces:
Preprocessor<V>, Parameterizable

@Title(value="Knn Query Based Local PCA Preprocessor")
@Description(value="Materializes the local PCA and the locally weighted matrix of objects of a database. The PCA is based on k nearest neighbor queries.")
public class KnnQueryBasedLocalPCAPreprocessor<V extends NumberVector<V,?>>
extends LocalPCAPreprocessor<V>
implements Parameterizable

Provides the local neighborhood to be considered in the PCA as the k nearest neighbors of an object.

Author:
Elke Achtert
See Also:
LocalPCAPreprocessor

Field Summary
private  Integer k
          Holds the value of K_PARAM.
static OptionID K_ID
          OptionID for K_PARAM
private  IntParameter K_PARAM
          Optional parameter to specify the number of nearest neighbors considered in the PCA, must be an integer greater than 0.
 
Fields inherited from class de.lmu.ifi.dbs.elki.preprocessing.LocalPCAPreprocessor
DEFAULT_PCA_DISTANCE_FUNCTION, PCA_DISTANCE_ID, PCA_DISTANCE_PARAM, pcaDistanceFunction
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug, logger
 
Constructor Summary
KnnQueryBasedLocalPCAPreprocessor(Parameterization config)
          Constructor, adhering to Parameterizable
 
Method Summary
protected  List<DistanceResultPair<DoubleDistance>> objectsForPCA(Integer id, Database<V> database)
          Returns the objects to be considered within the PCA for the specified query object.
 
Methods inherited from class de.lmu.ifi.dbs.elki.preprocessing.LocalPCAPreprocessor
run
 
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
 

Field Detail

K_ID

public static final OptionID K_ID
OptionID for K_PARAM


K_PARAM

private final IntParameter K_PARAM
Optional parameter to specify the number of nearest neighbors considered in the PCA, must be an integer greater than 0. If this parameter is not set, k is set to three times of the dimensionality of the database objects.

Key: -localpca.k

Default value: three times of the dimensionality of the database objects


k

private Integer k
Holds the value of K_PARAM.

Constructor Detail

KnnQueryBasedLocalPCAPreprocessor

public KnnQueryBasedLocalPCAPreprocessor(Parameterization config)
Constructor, adhering to Parameterizable

Parameters:
config - Parameterization
Method Detail

objectsForPCA

protected List<DistanceResultPair<DoubleDistance>> objectsForPCA(Integer id,
                                                                 Database<V> database)
Description copied from class: LocalPCAPreprocessor
Returns the objects to be considered within the PCA for the specified query object.

Specified by:
objectsForPCA in class LocalPCAPreprocessor<V extends NumberVector<V,?>>
Parameters:
id - the id of the query object for which a PCA should be performed
database - the database holding the objects
Returns:
the list of the objects (i.e. the ids and the distances to the query object) to be considered within the PCA

Release 0.3 (2010-03-31_1612)