Dont Just Divide; Polarize and Conquer!
In data containing heterogeneous subpopulations, classification performance benefits from incorporating the knowledge of cluster structure in the classifier. Previous methods for such combined clustering and classification are either 1) classifier-specific and not generic, or 2) independently perform clustering and classifier training, which may not form clusters that can potentially benefit classifier performance. The question of how to perform clustering to improve the performance of classifiers trained on the clusters has received scant attention in previous literature, despite its importance in several real-world applications. In this paper, we design a simple and efficient classification algorithm called Clustering Aware Classification (CAC) to find clusters that are well suited for being used as training datasets by classifiers for each underlying subpopulation. We also develop a deep learning method for simultaneous clustering and classification, DeepCAC. Our experiments on synthetic and real benchmark datasets demonstrate the efficacy of CAC and DeepCAC over previous methods for combined clustering and classification.