Class CoverTree<K,V> 
java.lang.Object
smile.neighbor.CoverTree<K,V> 
- Type Parameters:
 K- the type of keys.V- the type of associated objects.
- All Implemented Interfaces:
 Serializable, KNNSearch<K,V>, RNNSearch<K, V> 
Cover tree is a data structure for generic nearest neighbor search, which
is especially efficient in spaces with small intrinsic dimension. The cover
tree has a theoretical bound that is based on the dataset's doubling constant.
The bound on search time is O(c12 log node) where c is the expansion
constant of the dataset.
By default, the query object (reference equality) is excluded from the
neighborhood. You may change this behavior with
setIdenticalExcluded. Note that you may observe weird behavior
with String objects. JVM will pool the string literal objects. So the below
variables
    String a = "ABC";
    String b = "ABC";
    String c = "AB" + "C";
are actually equal in reference test a == b == c. With toy data
that you type explicitly in the code, this will cause problems. Fortunately,
the data would be generally read from secondary storage in production.
References
- Alina Beygelzimer, Sham Kakade, and John Langford. Cover Trees for Nearest Neighbor. ICML 2006.
 
- See Also:
 
- 
Constructor Summary
ConstructorsConstructorDescriptionConstructor.Constructor.Constructor.Constructor. - 
Method Summary
Modifier and TypeMethodDescriptionstatic <T> CoverTree<T, T> Return a cover tree of the data.static <T> CoverTree<T, T> Return a cover tree of the data.static <T> CoverTree<T, T> Return a cover tree of the data.static <T> CoverTree<T, T> Return a cover tree of the data.voidRetrieves the neighbors in a fixed radius of query object, i.e.Retrieves the k nearest neighbors to the query key.toString() 
- 
Constructor Details
- 
CoverTree
 - 
CoverTree
 - 
CoverTree
 - 
CoverTree
 
 - 
 - 
Method Details
- 
of
Return a cover tree of the data.- Type Parameters:
 T- the type of keys and values.- Parameters:
 data- the data objects, which are also used as key.distance- a metric distance measure for nearest neighbor search.- Returns:
 - Cover tree.
 
 - 
of
Return a cover tree of the data.- Type Parameters:
 T- the type of keys and values.- Parameters:
 data- the data objects, which are also used as key.distance- a metric distance measure for nearest neighbor search.base- the base of the expansion constant.- Returns:
 - Cover tree.
 
 - 
of
Return a cover tree of the data.- Type Parameters:
 T- the type of keys and values.- Parameters:
 data- the data objects, which are also used as key.distance- a metric distance measure for nearest neighbor search.- Returns:
 - Cover tree.
 
 - 
of
Return a cover tree of the data.- Type Parameters:
 T- the type of keys and values.- Parameters:
 data- the data objects, which are also used as key.distance- a metric distance measure for nearest neighbor search.base- the base of the expansion constant.- Returns:
 - Cover tree.
 
 - 
toString
 - 
search
Description copied from interface:KNNSearchRetrieves the k nearest neighbors to the query key. - 
search
Description copied from interface:RNNSearchRetrieves the neighbors in a fixed radius of query object, i.e.d(q, v) <= radius. 
 -