with an adaptive number of clusters