|
|
|||||||||||||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object de.lmu.ifi.dbs.elki.logging.AbstractLoggable de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction<O,D> de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractDistanceFunction<O,D> de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractPreprocessorBasedDistanceFunction<V,P,BitDistance> de.lmu.ifi.dbs.elki.distance.distancefunction.correlation.ERiCDistanceFunction<V,P>
V
- the type of RealVector to compute the distances in betweenP
- the type of Preprocessor usedpublic class ERiCDistanceFunction<V extends RealVector<V,?>,P extends Preprocessor<V>>
Provides a distance function for building the hierarchiy in the ERiC algorithm.
Field Summary | |
---|---|
private double |
delta
Holds the value of DELTA_PARAM . |
static OptionID |
DELTA_ID
OptionID for DELTA_PARAM |
private DoubleParameter |
DELTA_PARAM
Parameter to specify the threshold for approximate linear dependency: the strong eigenvectors of q are approximately linear dependent from the strong eigenvectors p if the following condition holds for all stroneg eigenvectors q_i of q (lambda_q < lambda_p): q_i' * M^check_p * q_i <= delta^2, must be a double equal to or greater than 0. |
private double |
tau
Holds the value of TAU_PARAM . |
static OptionID |
TAU_ID
OptionID for TAU_PARAM |
private DoubleParameter |
TAU_PARAM
Parameter to specify the threshold for the maximum distance between two approximately linear dependent subspaces of two objects p and q (lambda_q < lambda_p) before considering them as parallel, must be a double equal to or greater than 0. |
Fields inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction |
---|
INFINITY_PATTERN |
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 | |
---|---|
ERiCDistanceFunction()
Provides a distance function for the ERiC algorithm, adding parameters DELTA_PARAM and {#TAU_PARAM}
to the option handler additionally to parameters of super class. |
Method Summary | |
---|---|
private boolean |
approximatelyLinearDependent(PCAFilteredResult pca1,
PCAFilteredResult pca2)
Returns true, if the strong eigenvectors of the two specified pcas span up the same space. |
BitDistance |
distance(V v1,
V v2)
Note, that the pca of o1 must have equal ore more strong eigenvectors than the pca of o2. |
BitDistance |
distance(V v1,
V v2,
PCAFilteredResult pca1,
PCAFilteredResult pca2)
Computes the distance between two given DatabaseObjects according to this distance function. |
AssociationID<?> |
getAssociationID()
Returns the association ID for the association to be set by the preprocessor. |
String |
getDefaultPreprocessorClassName()
Returns the name of the default preprocessor. |
String |
getPreprocessorDescription()
Returns the description for the preprocessor parameter. |
Class<P> |
getPreprocessorSuperClass()
Returns the super class for the preprocessor parameter. |
BitDistance |
infiniteDistance()
Provides an infinite distance. |
BitDistance |
nullDistance()
Provides a null distance. |
List<String> |
setParameters(List<String> args)
Calls the super method AbstractPreprocessorBasedDistanceFunction#setParameters(args)} and sets additionally the values of the parameters DELTA_PARAM and {#TAU_PARAM}. |
BitDistance |
undefinedDistance()
Provides an undefined distance. |
BitDistance |
valueOf(String pattern)
Provides a measurement suitable to this measurement function based on the given pattern. |
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractPreprocessorBasedDistanceFunction |
---|
getPreprocessor, setDatabase |
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractDistanceFunction |
---|
distance, distance, isInfiniteDistance, isNullDistance, isUndefinedDistance |
Methods inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction |
---|
getDatabase, matches, requiredInputPattern, setRequiredInputPattern, shortDescription |
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.distance.MeasurementFunction |
---|
isInfiniteDistance, isNullDistance, isUndefinedDistance, requiredInputPattern |
Methods inherited from interface de.lmu.ifi.dbs.elki.utilities.optionhandling.Parameterizable |
---|
checkGlobalParameterConstraints, collectOptions, getParameters, shortDescription |
Field Detail |
---|
public static final OptionID DELTA_ID
DELTA_PARAM
private final DoubleParameter DELTA_PARAM
Default value: 0.1
Key: -ericdf.delta
public static final OptionID TAU_ID
TAU_PARAM
private final DoubleParameter TAU_PARAM
Default value: 0.1
Key: -ericdf.tau
private double delta
DELTA_PARAM
.
private double tau
TAU_PARAM
.
Constructor Detail |
---|
public ERiCDistanceFunction()
DELTA_PARAM
and {#TAU_PARAM}
to the option handler additionally to parameters of super class.
Method Detail |
---|
public List<String> setParameters(List<String> args) throws ParameterException
DELTA_PARAM
and {#TAU_PARAM}.
setParameters
in interface Parameterizable
setParameters
in class AbstractPreprocessorBasedDistanceFunction<V extends RealVector<V,?>,P extends Preprocessor<V>,BitDistance>
args
- parameters to set the attributes accordingly to
ParameterException
- in case of wrong parameter-settingpublic String getDefaultPreprocessorClassName()
KnnQueryBasedHiCOPreprocessor
public String getPreprocessorDescription()
PreprocessorClient
public Class<P> getPreprocessorSuperClass()
PreprocessorClient
Preprocessor
public AssociationID<?> getAssociationID()
PreprocessorClient
AssociationID.LOCAL_PCA
public BitDistance valueOf(String pattern) throws IllegalArgumentException
MeasurementFunction
pattern
- a pattern defining a similarity suitable to this
measurement function
IllegalArgumentException
- if the given pattern is not compatible with the requirements
of this measurement functionpublic BitDistance infiniteDistance()
MeasurementFunction
public BitDistance nullDistance()
MeasurementFunction
public BitDistance undefinedDistance()
MeasurementFunction
public BitDistance distance(V v1, V v2)
v1
- first DatabaseObjectv2
- second DatabaseObject
public BitDistance distance(V v1, V v2, PCAFilteredResult pca1, PCAFilteredResult pca2)
v1
- first DatabaseObjectv2
- second DatabaseObjectpca1
- first PCApca2
- second PCA
private boolean approximatelyLinearDependent(PCAFilteredResult pca1, PCAFilteredResult pca2)
pca1
- first PCApca2
- second PCA
|
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |