1. A computer-implemented method, comprising: accessing a dataset containing a number of data points; forming, based at least in part on similarities between the data points, a first number of clusters of the data points, a cluster of the clusters containing a portion of the data points; determining a stability of the cluster based at least in part on a change to a center of the cluster between iterations of clustering the data points, the center determined based at least in part on the portion of the data points; determining that the cluster is unstable based at least in part on the change to the center of the cluster falling outside a range, the range being based at least in part on a confidence level; and forming, based at least in part on the cluster being unstable, a second number of modified clusters of the data points.