ExplainCC: Explaining Correlated Clusters by Node Labels
Organizations: University of Helsinki, Helsinki, Finland
Abstract
An increasingly important requirement for clustering algorithms is that decisions and outcomes need to be clearly understandable for human users. We address this requirement for the Correlation Clustering (CC) problem, in case the objects to be clustered are accompanied by labels. In CC one seeks to partition a set of objects into clusters based on pairwise similarity and dissimilarity information. Our proposed model only considers clusters that can be explained by a label tree, which is essentially a decision tree that partitions the objects according to labels. The goal is to find an explainable partition of the data that minimizes the CC objective function. We formalize this problem from a theoretical viewpoint, and prove several hardness of approximation results, also when constraining the size of the tree. Our proposed greedy method finds locally optimal splits, and works recursively in a top-down approach. To efficiently compute the best split, we carefully maintain certain counters. An experimental evaluation demonstrates its effectiveness. The proposed algorithm processes graphs with over million edges in a few minutes, can find the ground truth in synthetic data, and is able to produce interpretable clusters in real world networks.
Figures & tables
| Dataset | ||||
|---|---|---|---|---|
| SDM | 3136 | 6940 | 279 | 50157 |
| PKDD | 4267 | 7937 | 447 | 38195 |
| KDD | 11245 | 30802 | 982 | 314321 |
| ICDM | 12457 | 26342 | 912 | 214386 |
| WWW | 12625 | 30762 | 889 | 217808 |
| NIPS | 14225 | 36803 | 1430 | 513512 |
| Expand | Grow | Gr+DT | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Dataset | time | time | c | time | acc | |||||
| SDM | 0.588103 | 249 | 0.02 | 0.000537 | 1109 | 1.23 | 0.588581 | 198 | 0.0590 | 0.11 |
| PKDD | 0.622810 | 484 | 0.02 | 0.000251 | 1547 | 1.21 | 0.622803 | 360 | 0.24 | 0.15 |
| KDD | 0.564619 | 1137 | 0.19 | 0.000176 | 3752 | 5.00 | 0.564664 | 829 | 3.62 | 0.14 |
| ICDM | 0.618373 | 1143 | 0.32 | 0.000114 | 4169 | 4.41 | 0.618377 | 866 | 5.14 | 0.13 |
| WWW | 0.555154 | 1343 | 0.30 | 0.000137 | 4129 | 3.84 | 0.555617 | 971 | 4.98 | 0.15 |
| DP | |||||||
|---|---|---|---|---|---|---|---|
| Dataset | time | time | acc | ||||
| SDM | 0.5922 | 20 | 0.02 | 0.9604 | 20 | 0.04 | 0.02 |
| PKDD | 0.6331 | 20 | 0.03 | 0.9551 | 19 | 0.08 | 0.02 |
| KDD | 0.5741 | 20 | 0.07 | 0.9721 | 20 | 0.83 | 0.02 |
| ICDM | 0.6244 | 20 | 0.07 | 0.9829 | 20 | 0.86 | 0.01 |
| WWW | 0.5616 | 20 | 0.08 | 0.9826 | 20 | 0.86 | 0.01 |
Clustering
Clustering groups data points by shared structure, developing methods to discover, validate, and interpret groups across diverse data and constraints.
See all 348 papers