public class KDTreeDoubleEuclideanAssigner extends Object implements HardAssigner<double[],double[],IntDoublePair>
HardAssigner that uses a DoubleNearestNeighboursKDTree to
generate approximately correct cluster assignments.| Modifier and Type | Field and Description |
|---|---|
protected DoubleNearestNeighboursKDTree |
nn |
| Constructor and Description |
|---|
KDTreeDoubleEuclideanAssigner(CentroidsProvider<double[]> provider)
Construct the assigner using the given cluster data.
|
KDTreeDoubleEuclideanAssigner(double[][] data)
Construct the assigner using the given cluster data.
|
| Modifier and Type | Method and Description |
|---|---|
int |
assign(double[] data)
Assign a single point to a cluster.
|
int[] |
assign(double[][] data)
Assign data to a cluster.
|
IntDoublePair |
assignDistance(double[] data)
Assign a single point to a cluster.
|
void |
assignDistance(double[][] data,
int[] indices,
double[] distances)
Assign data to clusters.
|
int |
numDimensions()
Get the number of dimensions of the input vectors.
|
int |
size()
The number of centroids or unique ids that can be generated.
|
protected DoubleNearestNeighboursKDTree nn
public KDTreeDoubleEuclideanAssigner(CentroidsProvider<double[]> provider)
provider - the cluster data providerpublic KDTreeDoubleEuclideanAssigner(double[][] data)
data - the cluster datapublic int[] assign(double[][] data)
HardAssignerassign in interface HardAssigner<double[],double[],IntDoublePair>data - the data.public int assign(double[] data)
HardAssignerassign in interface HardAssigner<double[],double[],IntDoublePair>data - datum to assign.public void assignDistance(double[][] data, int[] indices, double[] distances)
HardAssignerassignDistance in interface HardAssigner<double[],double[],IntDoublePair>data - the data.indices - the cluster index for each data point.distances - the distance to the closest cluster for each data point.public IntDoublePair assignDistance(double[] data)
HardAssignerassignDistance in interface HardAssigner<double[],double[],IntDoublePair>data - point to assign.public int size()
HardAssignersize in interface HardAssigner<double[],double[],IntDoublePair>public int numDimensions()
AssignernumDimensions in interface Assigner<double[]>