<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>KDDClus: A Simple Method for Multi-Density Clustering</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sushmita Mitra</string-name>
          <email>sushmita@isical.ac.in</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jay Nandy</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Machine Intelligence Unit, Indian Statistical Institute</institution>
          ,
          <addr-line>Kolkata 700 108</addr-line>
          ,
          <country country="IN">INDIA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Automated clustering of multi-density spatial data is developed. The algorithm KDDClus serves as an enhancement to the wellknown DBSCAN. Averaging the distances of a pattern to all k of its nearest neighbours allows a smoothing out of noise while automatically detecting the \knees" from the k-distance plot. The use of the KD-tree data structure enables e±cient computation of the k-nearest neighbours (k-NN) of a pattern point, particularly for large data. Experimental results on synthetic data, involving nested multiple densities of di®erent shapes, demonstrates the superiority of KDDClus.</p>
      </abstract>
      <kwd-group>
        <kwd>Density-based clustering</kwd>
        <kwd>DBSCAN</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Often we come across spatial data consisting of a mixture of pattern
distributions involving di®erent densities, which may or may not be nested within each
other, in the presence of background noise. Clusters of di®erent densities can,
therefore, be modeled as belonging to point processes having di®erent
intensities. Clustering of such data is a challenging problem in data mining [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. It
becomes imperative to detect the number of point processes (or cluster type of
a certain density) while also assigning the patterns to these di®erent clusters.
One needs to estimate a number of thresholds in order to discriminate between
these di®erent density distributions. Automatic estimation of such parameters
is a di±cult task. The complexity of searching the neighbourhood is also large
in high-dimensions.
      </p>
      <p>
        The density-based approach addresses this issue, while detecting clusters of
di®ering densities having arbitrary shape and size. It is non-parametric, and
requires no prior information regarding the number of clusters or their underlying
density. The algorithms detect the di®erence in densities among regions of
contiguous patterns in a spatial database, and accordingly assign them to di®erent
clusters. Noise and outliers are treated as low-density regions, and are removed
in terms of certain density criteria. The earliest research in this direction was
reported in Refs. [
        <xref ref-type="bibr" rid="ref4 ref9">4, 9</xref>
        ]. Some of the interesting studies of e±cient density-based
clustering, in the context of databases and large datasets, are DBSCAN [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ],
OPTICS [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], DENCLUE [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], CLIQUE [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and WaveCluster [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>Typically these algorithms require user-speci¯cation of certain parameters,
related to density-level thresholds, to be provided as input. Often this becomes
all the more di±cult when clusters in di®erent regions of the feature space have
considerably di®erent densities or clusters with di®erent density levels are nested.
In such cases the partitioning might not be proper with one single density
threshold.</p>
      <p>
        In this article we describe a new and simple algorithm KDDClus which
clusters multiple pattern distributions of di®erent densities in the presence of noise. It
is able to distinguish between di®erent density regions, which may or may not be
nested and are generally of non-convex shape. The algorithm automatically
estimates a number of thresholds to optimally identify the di®erent density regions,
without any prior knowledge about the data. While conventional density-based
clustering algorithms like DBSCAN typically resort to visual determination of a
single threshold to distinguish between two density regions, algorithm KDDClus
may be considered as an enhancement to it. The space-partitioning KD-tree data
structure [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is utilized to e±ciently determine the k-nearest neighbours (k-NN)
of a pattern for large data. The sorted average k-NN distances for the patterns
is clustered (i) for the purpose of smoothing out the noise and (ii) automatically
determining the optimal number of density regions while minimizing a validity
index. The algorithm is computationally inexpensive. The experimental results
on a synthetic dataset, consisting of clusters of di®erent densities, demonstrates
the e®ectiveness of the algorithm.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>KDDClus: An Algorithm Enhancing DBSCAN</title>
      <p>Clustering patterns involving di®erent densities and noise, coexisting in the same
spatial dataset, requires the determination of a number of thresholds. Automatic
estimation of such parameters, particularly in varying densities of multiple point
processes, is a di±cult task.</p>
      <p>Algorithm DBSCAN requires proper estimation of two global parameters ²
and M inP ts. This is highly data-dependent, and can be overestimated or
underestimated by the visual and/or interactive procedure used. It may automatically
lead to misplacement of patterns and even misidenti¯cation of clusters.
Moreover, the algorithm does not consider the handling of a simultaneous presence of
di®erent densities, originating from di®erent point processes in the data. Note
that no single set of ² and M inP ts can properly cluster such a dataset. The
complexity of searching the neighborhood is large in high-dimensions, thereby
leading to the di±culty in determining a proper distance estimate.</p>
      <p>We present here a new and simple way to automatically identify the number
of point processes (or clusters of di®erent densities) including noise. The
algorithm utilizes the KD-tree data structure for e±cient processing in high
dimensions. It can simultaneously estimate the di®erent density parameters without
any prior knowledge about the data. It is also not expensive.</p>
      <p>
        We compute the average of the distances of a pattern to all k of its
nearest neighbors. This is unlike DBSCAN, where only the kth nearest neighbor
is considered during the distance computation. The use of the KD-tree data
structure [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] enables e±cient computation of k-nearest neighbors (k-NN) of a
point, particularly for large data. The averaging allows a smoothing of the curve
towards noise removal, for subsequent easier automated detection of
densitythresholds. We plot these averaged k-distances in an ascending order, to help
identify noise with relative ease. Note that patterns corresponding to noise are
expected to have larger k-distance values. The aim is to determine the \knees"
for estimating the set of ² parameters.
      </p>
      <p>A knee corresponds to a threshold where a sharp change of gradient
occurs along the k-distance curve. This represents a change in density distribution
amongst patterns. Any value less than this density-threshold ² estimate can
e±ciently cluster patterns whose average k-NN distances is lower than that,
implying patterns belonging to a certain density. Analogously all knees in the smoothed
graph can collectively estimate a set of ²'s for identifying all the clusters having
di®erent density distributions. The knee regions are detected in KDDClus by
clustering the sorted k-NN distances. We determine the optimal number c0 of
such segments, by using c-means while optimizing a clustering validity index.</p>
      <p>Starting from the lowest value in the sorted k-NN distance graph, we
sequentially execute DBSCAN for each of the c0 estimated ²'s considered in
ascending order. The ¯rst estimate obviously corresponds to the most dense cluster.
Tagging the patterns in the already detected clusters as \visited", we proceed
towards larger values of k-distance while allowing DBSCAN to work on the
stillunvisited patterns only. In this manner we are able to e®ectively determine all
clusters in a multi-density framework, in a decreasing order of density, with noise
being modelled as the sparsest region.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Experimental Results</title>
      <p>We have implemented the proposed KDDClus algorithm on a synthetic pattern
set. There exist ¯ve clusters with three di®erent densities for dataset Decode
in Fig. 1(a). The semi-circular region on the top-left, inner quadrilateral, and
circular region on bottom-right of the ¯gure constitute the most dense clusters.
The outer quadrilateral and triangular region form the medium-density clusters.
The background is least dense and consists of noise.</p>
      <p>We ¯nd from part (d) of the ¯gure that DBSCAN, with the lower threshold
of ² = 0.3038, could correctly identify only (i) the smaller quadrilateral inscribed
within the larger one, (ii) the circle, and (iii) the semi-circular region. These are
indicated by di®erent shades of gray in the ¯gure. Using DBSCAN with the
higher ²-value of 0.4226 resulted in the output map in part (e) of the ¯gure.
In this case it is noticed that the smaller dense quadrilateral along with some
surrounding points from the outer medium-density quadrilateral get merged into
one cluster.</p>
      <p>This adverse e®ect is eliminated with algorithm KDDClus, as observed from
part (c) of the ¯gure. After correctly detecting the smaller quadrilateral, the
circle and the semi-circular region with ² = 0.3038, the algorithm marks the
4
constituent patterns from the dataset as visited. In the next step DBSCAN
needs to work only on the unvisited patterns with ² = 0.4226. Now it is able
to correctly distinguish the larger quadrilateral and the triangle as the second
lower-density level, within the background noise.</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions</title>
      <p>The algorithm KDDClus is an enhancement to DBSCAN, in terms of
automatically estimating the various density-based parameters for optimal clustering.
Unlike DBSCAN, where only the kth nearest neighbour is considered during
the distance computation, here we calculate the average of the distances of a
pattern to all k of its nearest neighbours. Such averaging allows a smoothing
of the curve for subsequent easier automated detection of the \knees" amongst
the background noise. The use of the KD-tree data structure enables e±cient
computation of the k-nearest neighbours (k-NN) of a pattern point, particularly
for large data. Comparative study has been made on three sets of synthetic data
to establish the superiority of the proposed algorithm.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Agrawal</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gehrke</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gunopulos</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Raghavan</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Automatic sub-space clustering of high dimensional data for data mining applications</article-title>
          .
          <source>In: Proceedings of 1998 ACM-SIGMOD International Conference on Management of Data (SIGMOD'98)</source>
          . pp.
          <volume>94</volume>
          {
          <fpage>105</fpage>
          . Seattle, USA (
          <year>June 1998</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Ankerst</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Breunig</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kriegel</surname>
            ,
            <given-names>H.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sander</surname>
            ,
            <given-names>J.: OPTICS</given-names>
          </string-name>
          :
          <article-title>Ordering points to identify the clustering structure</article-title>
          .
          <source>In: Proceedings of 1999 ACM-SIGMOD International Conference on Management of Data (SIGMOD'99)</source>
          . pp.
          <volume>49</volume>
          {
          <fpage>60</fpage>
          . Philadelphia, USA (
          <year>June 1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ester</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kriegel</surname>
            ,
            <given-names>H.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sander</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xu</surname>
            ,
            <given-names>X.:</given-names>
          </string-name>
          <article-title>A density-based algorithm for discovering clusters in large spatial databases</article-title>
          .
          <source>In: Proceedings of 1996 International Conference on Knowledge Discovery and Data Mining (KDD'96)</source>
          . pp.
          <volume>226</volume>
          {
          <fpage>231</fpage>
          .
          <string-name>
            <surname>Portland</surname>
          </string-name>
          , USA (
          <year>August 1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Hartigan</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          :
          <article-title>Clustering Algorithms</article-title>
          . John Wiley &amp; Sons (
          <year>1975</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Hinneburg</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Keim</surname>
            ,
            <given-names>D.A.</given-names>
          </string-name>
          :
          <article-title>An e±cient approach to clustering in large multimedia databases with noise</article-title>
          .
          <source>In: Proceedings of 1998 International Conference on Knowledge Discovery and Data Mining (KDD'98)</source>
          . pp.
          <volume>58</volume>
          {
          <fpage>65</fpage>
          . New York, USA (
          <year>August 1998</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Mitra</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Acharya</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Data Mining: Multimedia, Soft Computing, and Bioinformatics</article-title>
          . John Wiley, New York (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Moore</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A tutorial on KD-trees</article-title>
          .
          <source>Computer Laboratory Technical Report # 209</source>
          , University of Cambridge, http://www.cs.cmu.edu/»awm/papers.html (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Sheikholeslami</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chatterjee</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhang</surname>
          </string-name>
          , A.:
          <article-title>WaveCluster: A multi-resolution clustering approach for very large spatial databases</article-title>
          .
          <source>In: Proceedings of 1998 International Conference on Very Large Data Bases (VLDB'98)</source>
          . pp.
          <volume>428</volume>
          {
          <fpage>439</fpage>
          . New York, USA (
          <year>August 1998</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Wishart</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Mode analysis: A generalization of nearest neighbor which reduces chaining e®ects</article-title>
          . Numerical
          <string-name>
            <surname>Taxonomy</surname>
          </string-name>
          (
          <year>1969</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>