An algorithm for discovering clusters of different densities or shapes in noisy data sets
unsupervised and semi - supervised clustering : a brief survey ∗ .