O
- the type of database objects the preprocessor can be applied toD
- the type of distance the used distance function will return@Title(value="Partitioning Approximate kNN Preprocessor") @Description(value="Caterializes the (approximate) k nearest neighbors of objects of a database by partitioning and only computing kNN within each partition.") public class PartitionApproximationMaterializeKNNPreprocessor<O,D extends Distance<D>> extends AbstractMaterializeKNNPreprocessor<O,D,KNNList<D>>
LOF
.Modifier and Type | Class and Description |
---|---|
static class |
PartitionApproximationMaterializeKNNPreprocessor.Factory<O,D extends Distance<D>>
The parameterizable factory.
|
Modifier and Type | Field and Description |
---|---|
private static Logging |
LOG
Logger to use
|
private int |
partitions
Number of partitions to use.
|
private RandomFactory |
rnd
Random generator
|
distanceFunction, distanceQuery, k
storage
relation
Constructor and Description |
---|
PartitionApproximationMaterializeKNNPreprocessor(Relation<O> relation,
DistanceFunction<? super O,D> distanceFunction,
int k,
int partitions,
RandomFactory rnd)
Constructor
|
Modifier and Type | Method and Description |
---|---|
protected Logging |
getLogger()
Get the classes static logger.
|
String |
getLongName()
A "pretty" name for the result, for use in titles, captions and menus.
|
String |
getShortName()
A short name for the result, useful for file names.
|
void |
logStatistics()
Send statistics to the logger, if enabled.
|
protected void |
preprocess()
Perform the preprocessing step.
|
createStorage, get, getDistanceFactory, getDistanceQuery, getK, getKNNQuery, initialize
private static final Logging LOG
private final int partitions
private final RandomFactory rnd
public PartitionApproximationMaterializeKNNPreprocessor(Relation<O> relation, DistanceFunction<? super O,D> distanceFunction, int k, int partitions, RandomFactory rnd)
relation
- Relation to processdistanceFunction
- the distance function to usek
- query kpartitions
- Number of partitionsrnd
- Random number generatorprotected void preprocess()
AbstractMaterializeKNNPreprocessor
preprocess
in class AbstractMaterializeKNNPreprocessor<O,D extends Distance<D>,KNNList<D extends Distance<D>>>
protected Logging getLogger()
AbstractPreprocessorIndex
public String getLongName()
Result
getLongName
in interface Result
getLongName
in class AbstractIndex<O>
public String getShortName()
Result
getShortName
in interface Result
getShortName
in class AbstractIndex<O>
public void logStatistics()
Index