upvote
It's not a new kind of clustering. It solves exactly the same problem as k-means (minimize the mean squared distance to k centroids), returns the same thing (k centroids and an assignment), and has the same inputs (k and a number of epochs). The batch size and step size are set automatically, so there's nothing extra to tune. So it is a drop-in replacement for k-means specifically: in Faiss it's Emeans(d, k).train(x) where you'd call Kmeans(d, k).train(x). The code is in faiss at https://github.com/facebookresearch/faiss/tree/main/contrib/...
reply