de.lmu.ifi.dbs.elki.algorithm.statistics
Class RankingQualityHistogram<V extends RealVector<V,?>,D extends NumberDistance<D,?>>
java.lang.Object
de.lmu.ifi.dbs.elki.logging.AbstractLoggable
de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<O,R>
de.lmu.ifi.dbs.elki.algorithm.DistanceBasedAlgorithm<V,D,CollectionResult<DoubleVector>>
de.lmu.ifi.dbs.elki.algorithm.statistics.RankingQualityHistogram<V,D>
- Type Parameters:
V
- Vector type
- All Implemented Interfaces:
- Algorithm<V,CollectionResult<DoubleVector>>, Parameterizable
public class RankingQualityHistogram<V extends RealVector<V,?>,D extends NumberDistance<D,?>>
- extends DistanceBasedAlgorithm<V,D,CollectionResult<DoubleVector>>
Evaluate a distance function with respect to kNN queries. For each point, the
neighbors are sorted by distance, then the ROC AUC is computed. A score of 1
means that the distance function provides a perfect ordering of relevant
neighbors first, then irrelevant neighbors. A value of 0.5 can be obtained by
random sorting. A value of 0 means the distance function is inverted, i.e. a
similarity.
TODO: Make number of bins configurable
TODO: Add sampling
- Author:
- Erich Schubert
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable |
addOption, addParameterizable, addParameterizable, checkGlobalParameterConstraints, collectOptions, getAttributeSettings, getParameters, rememberParametersExcept, removeOption, removeParameterizable, shortDescription |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
result
private CollectionResult<DoubleVector> result
RankingQualityHistogram
public RankingQualityHistogram()
- Empty constructor. Nothing to do.
runInTime
protected CollectionResult<DoubleVector> runInTime(Database<V> database)
throws IllegalStateException
- Run the algorithm.
- Specified by:
runInTime
in class AbstractAlgorithm<V extends RealVector<V,?>,CollectionResult<DoubleVector>>
- Parameters:
database
- the database to run the algorithm on
- Returns:
- the Result computed by this algorithm
- Throws:
IllegalStateException
- if the algorithm has not been initialized
properly (e.g. the setParameters(String[]) method has been failed
to be called).
getDescription
public Description getDescription()
- Describe the algorithm and it's use.
- Returns:
- a description of the algorithm
getResult
public CollectionResult<DoubleVector> getResult()
- Return a result object
- Returns:
- the result of the algorithm