I am looking for an incremental clustering algorithm. By incremental I mean an algorithm that builds clusters starting from an initial dataset and that is able to progressively ingest new items/observations adding them to existing or new clusters.
The maximum number of clusters is a priori unknow and is expected to grow over time, meaning that, after the algorithm have been run on the initial dataset, I expect to receive observations that belongs to never before seen clusters.
I am quite new to this kind of problem and all the clustering algorithms in the Scipy's clustering library only provide methods for one-shot clustering.
The only incremental clustering algorithm offered by Scikit-learn library is the MiniBatchKMeans that requires a fixed number of clusters and does not fit for my use case.
Are there incremental clustering algorithms that handle an unknown number of clusters? Are they already implemented somewhere?
Thank you a lot!