Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.preprocessing
Class HiCOPreprocessor<V extends RealVector<V,?>>

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.preprocessing.HiCOPreprocessor<V>
All Implemented Interfaces:
Loggable, Preprocessor<V>, Parameterizable
Direct Known Subclasses:
KnnQueryBasedHiCOPreprocessor, RangeQueryBasedHiCOPreprocessor

public abstract class HiCOPreprocessor<V extends RealVector<V,?>>
extends AbstractParameterizable
implements Preprocessor<V>

Abstract superclass for preprocessors for HiCO correlation dimension assignment to objects of a certain database.

Author:
Elke Achtert

Field Summary
static String DEFAULT_PCA_CLASS
          The default PCA class name.
static String DEFAULT_PCA_DISTANCE_FUNCTION
          The default distance function for the PCA.
static String PCA_CLASS_D
          Description for parameter pca.
static String PCA_CLASS_P
          Parameter for PCA.
static String PCA_DISTANCE_FUNCTION_D
          Description for parameter pca distance function.
static String PCA_DISTANCE_FUNCTION_P
          Parameter for pca distance function.
protected  String pcaClassName
          The classname of the PCA to determine the strong eigenvectors.
protected  DistanceFunction<V,DoubleDistance> pcaDistanceFunction
          The distance function for the PCA.
private  String[] pcaParameters
          The parameter settings for the PCA.
 
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
 
Constructor Summary
HiCOPreprocessor()
          Provides a new Preprocessor that computes the correlation dimension of objects of a certain database.
 
Method Summary
 List<AttributeSettings> getAttributeSettings()
          Returns the parameter setting of the attributes.
protected abstract  List<Integer> objectIDsForPCA(Integer id, Database<V> database, boolean verbose, boolean time)
          Returns the ids of the objects stored in the specified database to be considerd within the PCA for the specified object id.
 void run(Database<V> database, boolean verbose, boolean time)
          This method determines the correlation dimensions of the objects stored in the specified database and sets the necessary associations in the database.
 String[] setParameters(String[] args)
          Sets the values for the parameters alpha, pca and pcaDistancefunction if specified.
 
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
addOption, checkGlobalParameterConstraints, deleteOption, description, description, description, getParameters, getParameterValue, getPossibleOptions, inlineDescription, isSet, setParameters
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, message, progress, progress, progress, verbose, 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, description, getParameters, getPossibleOptions, inlineDescription
 

Field Detail

DEFAULT_PCA_CLASS

public static final String DEFAULT_PCA_CLASS
The default PCA class name.


PCA_CLASS_P

public static final String PCA_CLASS_P
Parameter for PCA.

See Also:
Constant Field Values

PCA_CLASS_D

public static final String PCA_CLASS_D
Description for parameter pca.


DEFAULT_PCA_DISTANCE_FUNCTION

public static final String DEFAULT_PCA_DISTANCE_FUNCTION
The default distance function for the PCA.


PCA_DISTANCE_FUNCTION_P

public static final String PCA_DISTANCE_FUNCTION_P
Parameter for pca distance function.

See Also:
Constant Field Values

PCA_DISTANCE_FUNCTION_D

public static final String PCA_DISTANCE_FUNCTION_D
Description for parameter pca distance function.


pcaClassName

protected String pcaClassName
The classname of the PCA to determine the strong eigenvectors.


pcaParameters

private String[] pcaParameters
The parameter settings for the PCA.


pcaDistanceFunction

protected DistanceFunction<V extends RealVector<V,?>,DoubleDistance> pcaDistanceFunction
The distance function for the PCA.

Constructor Detail

HiCOPreprocessor

public HiCOPreprocessor()
Provides a new Preprocessor that computes the correlation dimension of objects of a certain database.

Method Detail

run

public void run(Database<V> database,
                boolean verbose,
                boolean time)
This method determines the correlation dimensions of the objects stored in the specified database and sets the necessary associations in the database.

Specified by:
run in interface Preprocessor<V extends RealVector<V,?>>
Parameters:
database - the database for which the preprocessing is performed
verbose - flag to allow verbose messages while performing the algorithm
time - flag to request output of performance time

setParameters

public String[] setParameters(String[] args)
                       throws ParameterException
Sets the values for the parameters alpha, pca and pcaDistancefunction if specified. If the parameters are not specified default values are set.

Specified by:
setParameters in interface Parameterizable
Overrides:
setParameters in class AbstractParameterizable
Parameters:
args - parameters to set the attributes accordingly to
Returns:
String[] an array containing the unused parameters
Throws:
ParameterException - in case of wrong parameter-setting
See Also:
Parameterizable.setParameters(String[])

getAttributeSettings

public List<AttributeSettings> getAttributeSettings()
Returns the parameter setting of the attributes.

Specified by:
getAttributeSettings in interface Parameterizable
Overrides:
getAttributeSettings in class AbstractParameterizable
Returns:
the parameter setting of the attributes
See Also:
Parameterizable.getAttributeSettings()

objectIDsForPCA

protected abstract List<Integer> objectIDsForPCA(Integer id,
                                                 Database<V> database,
                                                 boolean verbose,
                                                 boolean time)
Returns the ids of the objects stored in the specified database to be considerd within the PCA for the specified object id.

Parameters:
id - the id of the object for which a PCA should be performed
database - the database holding the objects
verbose - flag to allow verbose messages while performing the algorithm
time - flag to request output of performance time
Returns:
the list of the object ids to be considerd within the PCA

Release 0.1 (2008-07-10_1838)