Based on different approaches we can categorise known clustering algorithms into: 根据不同的方法,我们可以将已知的聚类算法分为

    • Partitioning approach 分区的方法:
      • Construct various partitions and then evaluate them by some criterion, e.g., minimising the sum of square errors
      • Typical methods: k-means, k-medoids, CLARANS
    • Hierarchical approach 分层的方法:
      • Create a hierarchical decomposition of the set of data (or objects) using some criterion
      • Typical methods: Diana, Agnes, BIRCH, CAMELEON
    • Density-based approach:
      • Based on connectivity and density functions
      • Typical methods: DBSCAN (Density-based spatial clustering of applications with noise), OPTICS, DenClue
    • Grid-based approach:
      • based on a multiple-level granularity structure
      • Typical methods: STING, WaveCluster, CLIQUE
    • Model-based:
      • A model is hypothesised for each of the clusters and tries to find the best fit of that model to each other
      • Typical methods: EM, SOM, COBWEB
    • Frequent pattern-based:
      • Based on the analysis of frequent patterns
      • Typical methods: p-Cluster
    • User-guided or constraint-based:
      • Clustering by considering user-specified or application-specific constraints
      • Typical methods: COD (obstacles), constrained clustering
    • Link-based clustering:
      • Objects are often linked together in various ways
      • Massive links can be used to cluster objects: SimRank, LinkClus