
V - the type of NumberVector to compute the distances in betweenpublic class LocallyWeightedDistanceFunction<V extends NumberVector<?,?>> extends AbstractIndexBasedDistanceFunction<V,FilteredLocalPCAIndex<V>,DoubleDistance> implements FilteredLocalPCABasedDistanceFunction<V,FilteredLocalPCAIndex<V>,DoubleDistance>
| Modifier and Type | Class and Description |
|---|---|
static class |
LocallyWeightedDistanceFunction.Instance<V extends NumberVector<?,?>>
Instance of this distance for a particular database.
|
static class |
LocallyWeightedDistanceFunction.Parameterizer<V extends NumberVector<?,?>>
Parameterization class.
|
indexFactoryINDEX_ID| Constructor and Description |
|---|
LocallyWeightedDistanceFunction(LocalProjectionIndex.Factory<V,FilteredLocalPCAIndex<V>> indexFactory)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj) |
DoubleDistance |
getDistanceFactory()
Method to get the distance functions factory.
|
<T extends V> |
instantiate(Relation<T> database)
Instantiate with a database to get the actual distance query.
|
boolean |
isMetric()
Is this distance function metric (in particular, does it satisfy the
triangle equation?)
|
boolean |
isSymmetric()
Is this function symmetric?
|
getInputTypeRestrictionclone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetInputTypeRestrictionpublic LocallyWeightedDistanceFunction(LocalProjectionIndex.Factory<V,FilteredLocalPCAIndex<V>> indexFactory)
indexFactory - Index factorypublic DoubleDistance getDistanceFactory()
DistanceFunctiongetDistanceFactory in interface DistanceFunction<V extends NumberVector<?,?>,DoubleDistance>getDistanceFactory in class AbstractDatabaseDistanceFunction<V extends NumberVector<?,?>,DoubleDistance>public boolean isMetric()
DistanceFunctionisMetric in interface DistanceFunction<V extends NumberVector<?,?>,DoubleDistance>isMetric in class AbstractIndexBasedDistanceFunction<V extends NumberVector<?,?>,FilteredLocalPCAIndex<V extends NumberVector<?,?>>,DoubleDistance>true when metric.public boolean isSymmetric()
DistanceFunctionisSymmetric in interface DistanceFunction<V extends NumberVector<?,?>,DoubleDistance>isSymmetric in class AbstractIndexBasedDistanceFunction<V extends NumberVector<?,?>,FilteredLocalPCAIndex<V extends NumberVector<?,?>>,DoubleDistance>true when symmetricpublic <T extends V> LocallyWeightedDistanceFunction.Instance<T> instantiate(Relation<T> database)
FilteredLocalPCABasedDistanceFunctioninstantiate in interface DistanceFunction<V extends NumberVector<?,?>,DoubleDistance>instantiate in interface FilteredLocalPCABasedDistanceFunction<V extends NumberVector<?,?>,FilteredLocalPCAIndex<V extends NumberVector<?,?>>,DoubleDistance>database - The representation to use