Integrating constraints and metric learning in semi-supervised clustering | Synapse