Package elki.index.lsh.hashfamilies
Interface LocalitySensitiveHashFunctionFamily<V>
-
- Type Parameters:
V
- Object type
- All Known Implementing Classes:
AbstractProjectedHashFunctionFamily
,CosineHashFunctionFamily
,EuclideanHashFunctionFamily
,ManhattanHashFunctionFamily
public interface LocalitySensitiveHashFunctionFamily<V>
LSH family of hash functions.- Since:
- 0.6.0
- Author:
- Erich Schubert
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.ArrayList<? extends LocalitySensitiveHashFunction<? super V>>
generateHashFunctions(Relation<? extends V> relation, int l)
Generate hash functions for the given relation.TypeInformation
getInputTypeRestriction()
Get the input type information.boolean
isCompatible(Distance<?> df)
Check whether the given distance function can be accelerated using this hash family.
-
-
-
Method Detail
-
getInputTypeRestriction
TypeInformation getInputTypeRestriction()
Get the input type information.- Returns:
- Input type information.
-
generateHashFunctions
java.util.ArrayList<? extends LocalitySensitiveHashFunction<? super V>> generateHashFunctions(Relation<? extends V> relation, int l)
Generate hash functions for the given relation.- Parameters:
relation
- Relation to indexl
- Number of hash tables to use- Returns:
- Family of hash functions
-
isCompatible
boolean isCompatible(Distance<?> df)
Check whether the given distance function can be accelerated using this hash family.- Parameters:
df
- Distance function.- Returns:
true
when appropriate.
-
-