This paper proposes a new clustering framework that addresses all the problems discussed above.
we define clustering as a learning task: in the training stage, a partition function, parameterized by a distance metric, is trained with respect to a specific clustering algorithm, with supervision.