weka.core.neighboursearch.kdtrees
Class KMeansInpiredMethod
java.lang.Object
weka.core.neighboursearch.kdtrees.KDTreeNodeSplitter
weka.core.neighboursearch.kdtrees.KMeansInpiredMethod
- All Implemented Interfaces:
- java.io.Serializable, OptionHandler, RevisionHandler, TechnicalInformationHandler
public class KMeansInpiredMethod
- extends KDTreeNodeSplitter
- implements TechnicalInformationHandler
The class that splits a node into two such that the overall sum of squared distances of points to their centres on both sides of the (axis-parallel) splitting plane is minimum.
For more information see also:
Ashraf Masood Kibriya (2007). Fast Algorithms for Nearest Neighbour Search. Hamilton, New Zealand.
BibTeX:
@mastersthesis{Kibriya2007,
address = {Hamilton, New Zealand},
author = {Ashraf Masood Kibriya},
school = {Department of Computer Science, School of Computing and Mathematical Sciences, University of Waikato},
title = {Fast Algorithms for Nearest Neighbour Search},
year = {2007}
}
- Version:
- $Revision: 1.2 $
- Author:
- Ashraf M. Kibriya (amk14[at-the-rate]cs[dot]waikato[dot]ac[dot]nz)
- See Also:
- Serialized Form
Method Summary |
java.lang.String |
getRevision()
Returns the revision string. |
TechnicalInformation |
getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed
information about the technical background of this class, e.g., paper
reference or book this class is based on. |
java.lang.String |
globalInfo()
Returns a string describing this nearest neighbour search algorithm. |
void |
splitNode(KDTreeNode node,
int numNodesCreated,
double[][] nodeRanges,
double[][] universe)
Splits a node into two such that the overall sum of squared distances
of points to their centres on both sides of the (axis-parallel)
splitting plane is minimum. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
KMeansInpiredMethod
public KMeansInpiredMethod()
globalInfo
public java.lang.String globalInfo()
- Returns a string describing this nearest neighbour search algorithm.
- Returns:
- a description of the algorithm for displaying in the
explorer/experimenter gui
getTechnicalInformation
public TechnicalInformation getTechnicalInformation()
- Returns an instance of a TechnicalInformation object, containing detailed
information about the technical background of this class, e.g., paper
reference or book this class is based on.
- Specified by:
getTechnicalInformation
in interface TechnicalInformationHandler
- Returns:
- the technical information about this class
splitNode
public void splitNode(KDTreeNode node,
int numNodesCreated,
double[][] nodeRanges,
double[][] universe)
throws java.lang.Exception
- Splits a node into two such that the overall sum of squared distances
of points to their centres on both sides of the (axis-parallel)
splitting plane is minimum. The two nodes created after the whole
splitting are correctly initialised. And, node.left and node.right
are set appropriately.
- Specified by:
splitNode
in class KDTreeNodeSplitter
- Parameters:
node
- The node to split.numNodesCreated
- The number of nodes that so far have been
created for the tree, so that the newly created nodes are
assigned correct/meaningful node numbers/ids.nodeRanges
- The attributes' range for the points inside
the node that is to be split.universe
- The attributes' range for the whole
point-space.
- Throws:
java.lang.Exception
- If there is some problem in splitting the
given node.
getRevision
public java.lang.String getRevision()
- Returns the revision string.
- Specified by:
getRevision
in interface RevisionHandler
- Overrides:
getRevision
in class KDTreeNodeSplitter
- Returns:
- the revision