Class KDTreeFilteringKMeans<V extends NumberVector>

  • Type Parameters:
    V - vector datatype
    All Implemented Interfaces:
    Algorithm, ClusteringAlgorithm<Clustering<KMeansModel>>, KMeans<V,​KMeansModel>

    @Title("K-d-tree K-means with Filtering")
    @Reference(authors="D. Pelleg, A. Moore",title="Accelerating Exact k-means Algorithms with Geometric Reasoning",booktitle="Proc. ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining",url="https://doi.org/10.1145/312129.312248",bibkey="DBLP:conf/kdd/PellegM99") @Reference(authors="T. Kanungo, D. M. Mount, N. S. Netanyahu, C. D. Piatko, R. Silverman, A. Y. Wu",title="Computing Nearest Neighbors for Moving Points and Applications to Clustering",booktitle="Proc. 10th ACM-SIAM Symposium on Discrete Algorithms (SODA\'99)",url="http://dl.acm.org/citation.cfm?id=314500.315095",bibkey="DBLP:conf/soda/KanungoMNPSW99") @Reference(authors="T. Kanungo, D. M. Mount, N. S. Netanyahu, C. D. Piatko, R. Silverman, A. Y. Wu",title="An Efficient k-Means Clustering Algorithm: Analysis and Implementation",booktitle="IEEE Transactions on Pattern Analysis and Machine Intelligence 24(7)",url="https://doi.org/10.1109/TPAMI.2002.1017616",bibkey="DBLP:journals/pami/KanungoMNPSW02")
    public class KDTreeFilteringKMeans<V extends NumberVector>
    extends KDTreePruningKMeans<V>
    Filtering or "blacklisting" K-means with k-d-tree acceleration.

    This is an implementation of the slightly later (1999) variant of Pelleg and Moore respectively Kanungo et al. using hyperplanes for filtering instead of a similar approach using minimum and maximum distances published in 1997 by Alsabti et al., see KDTreePruningKMeans.

    References:

    D. Pelleg and A. Moore
    Accelerating Exact k-means Algorithms with Geometric Reasoning
    Proc. ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining

    T. Kanungo, D. M. Mount, N. S. Netanyahu, C. D. Piatko, R. Silverman, A. Y. Wu
    Computing Nearest Neighbors for Moving Points and Applications to Clustering
    Proc. 10th ACM-SIAM Symposium on Discrete Algorithms (SODA'99)

    A more detailed analysis appeared later in:

    T. Kanungo, D. M. Mount, N. S. Netanyahu, C. D. Piatko, R. Silverman, A. Y. Wu
    An Efficient k-Means Clustering Algorithm: Analysis and Implementation
    IEEE Transactions on Pattern Analysis and Machine Intelligence 24(7)

    Since:
    0.8.0
    Author:
    Cedrik Lüdicke (initial version), Erich Schubert (optimizations, rewrite)