Is there a clustering algorithm which accepts some clusters as input and outputs some more clusters?
You are describing semi-supervised learning where the training dataset is only partially labeled.
One common set of techniques to solve that problem is active learning. In active learning, there is a learning loop where the algorithm makes predictions and a human corrects those predictions.
Pre-clustering is a specific active learning technique to address the problem you describe. The goal is to repetitively select the most representative training examples to add new labels and as well as avoiding repeatedly labeling samples in same cluster. &quot;Active Learning Using Pre-clustering&quot; by Nguyen and Smeulders goes into greater detail.