public class VPTree extends Object implements Serializable
Modifier and Type | Class and Description |
---|---|
protected class |
VPTree.HeapObjectComparator |
static class |
VPTree.Node |
protected class |
VPTree.NodeBuilder |
Modifier | Constructor and Description |
---|---|
protected |
VPTree() |
|
VPTree(INDArray items) |
|
VPTree(INDArray points,
boolean invert) |
|
VPTree(INDArray points,
boolean invert,
int workers) |
|
VPTree(INDArray items,
String similarityFunction) |
|
VPTree(INDArray items,
String similarityFunction,
boolean invert) |
|
VPTree(INDArray items,
String similarityFunction,
int workers,
boolean invert) |
|
VPTree(List<DataPoint> items) |
|
VPTree(List<DataPoint> items,
String similarityFunction) |
|
VPTree(List<DataPoint> items,
String similarityFunction,
int workers,
boolean invert) |
Modifier and Type | Method and Description |
---|---|
static INDArray |
buildFromData(List<DataPoint> data)
Create an ndarray
from the datapoints
|
void |
calcDistancesRelativeTo(INDArray basePoint,
INDArray distancesArr) |
void |
calcDistancesRelativeTo(INDArray items,
INDArray basePoint,
INDArray distancesArr) |
double |
distance(INDArray arr1,
INDArray arr2)
Euclidean distance
|
void |
search(@NonNull INDArray target,
int k,
List<DataPoint> results,
List<Double> distances) |
void |
search(@NonNull INDArray target,
int k,
List<DataPoint> results,
List<Double> distances,
boolean filterEqual) |
void |
search(@NonNull INDArray target,
int k,
List<DataPoint> results,
List<Double> distances,
boolean filterEqual,
boolean dropEdge) |
void |
search(VPTree.Node node,
INDArray target,
int k,
PriorityQueue<HeapObject> pq,
double cTau) |
public static final String EUCLIDEAN
protected VPTree()
public VPTree(INDArray points, boolean invert)
points
- invert
- public VPTree(INDArray points, boolean invert, int workers)
points
- invert
- workers
- number of parallel workers for tree building (increases memory requirements!)public VPTree(INDArray items, String similarityFunction, boolean invert)
items
- the items to usesimilarityFunction
- the similarity function to useinvert
- whether to invert the distance (similarity functions have different min/max objectives)public VPTree(List<DataPoint> items, String similarityFunction, int workers, boolean invert)
items
- the items to usesimilarityFunction
- the similarity function to useworkers
- number of parallel workers for tree building (increases memory requirements!)invert
- whether to invert the metric (different optimization objective)public VPTree(INDArray items, String similarityFunction)
items
- similarityFunction
- public VPTree(INDArray items, String similarityFunction, int workers, boolean invert)
items
- similarityFunction
- workers
- number of parallel workers for tree building (increases memory requirements!)invert
- public VPTree(List<DataPoint> items, String similarityFunction)
items
- similarityFunction
- public VPTree(INDArray items)
items
- public static INDArray buildFromData(List<DataPoint> data)
data
- public void calcDistancesRelativeTo(INDArray items, INDArray basePoint, INDArray distancesArr)
basePoint
- distancesArr
- public void calcDistancesRelativeTo(INDArray basePoint, INDArray distancesArr)
public double distance(INDArray arr1, INDArray arr2)
public void search(@NonNull @NonNull INDArray target, int k, List<DataPoint> results, List<Double> distances)
public void search(@NonNull @NonNull INDArray target, int k, List<DataPoint> results, List<Double> distances, boolean filterEqual)
public void search(@NonNull @NonNull INDArray target, int k, List<DataPoint> results, List<Double> distances, boolean filterEqual, boolean dropEdge)
target
- k
- results
- distances
- public void search(VPTree.Node node, INDArray target, int k, PriorityQueue<HeapObject> pq, double cTau)
node
- target
- k
- pq
- Copyright © 2020. All rights reserved.