Scaffold-Constrained Subset Dynamic Programming for Exact SSE Clustering
Organizations: School of Mathematical Sciences, University of Nottingham · School of Computer Science, University of Birmingham
Abstract
Exact Euclidean -means partitions observations into unlabelled clusters, but the unrestricted search is generally exponential. We use data-derived geometric graphs to precondition an exact subset dynamic program: as a result only connected vertex subsets are admitted as clusters, while sum-of-squared-errors (SSE) loss is unchanged. A remaining-set recurrence minimises fixed- or penalised SSE, with exact factorisation over the connected components of each remaining set. The central question we study is how much computational support can be removed while preserving an unrestricted optimum. Graph inclusion gives monotone coverage and support relations, and a bottleneck threshold identifies the first covering graph in a nested hierarchy. For fixed and dimension, under compact ball support and density bounds, retaining nearest neighbours per observation preserves an empirical SSE optimum with probability tending to one, using an fraction of complete-graph edges. Truncated Gaussian mixtures with unequal weights and covariances satisfy these conditions. The rate we provide is a sufficient upper bound rather than a result implying polynomial optimisation complexity. Objective-matched synthetic and full-data comparisons assess coverage, compression, and reference-label agreement. As a secondary application, we illustrate how the proposed scaffold preconditioning can be utilized to improve the efficiency of split-merge proposals that preserve unrestricted mixture posteriors.
Figures & tables
| Scaffold | Coverage | Edges | Connected blocks | Reached sets | Transitions |
|---|---|---|---|---|---|
| -NN-MST | 97.500 | 19.980 | 4.020 | 12.810 | 0.242 |
| Gabriel | 100.000 | 17.670 | 4.900 | 11.060 | 0.298 |
| Delaunay | 100.000 | 33.690 | 53.970 | 66.360 | 9.442 |
| Complete | 100.000 | 100.000 | 100.000 | 100.000 | 100.000 |
| Data set | Method | SSE | SSE/TSS | ARI | NMI |
|---|---|---|---|---|---|
| Iris ( ) | Lloyd, random start | 140.902 | 0.235 | 0.645 | 0.661 |
| -means++, 1 start | 139.820 | 0.233 | 0.620 | 0.659 | |
| -means++, 20 starts | 139.820 | 0.233 | 0.620 | 0.659 | |
| Ward | 148.876 | 0.248 | 0.615 | 0.675 | |
| DP, MST | 142.030 | 0.237 | 0.594 | 0.647 | |
| DP, | 139.985 | 0.233 | 0.601 | 0.647 |
Appendix figures & tables10 assets
Supplementary material from the paper’s appendix.
Appendix
| Objective | Method | Oracle hits | Matched gap | Mean | Mean VI |
|---|---|---|---|---|---|
| Penalized SSE | DP-means | 3.600 | 0.883 | ||
| -NN-MST DP | 3.817 | 0.750 | |||
| Gabriel DP | 3.833 | 0.751 | |||
| Complete DP | 3.833 | 0.751 | |||
| Collapsed NIW-CRP MAP | MAP-DP coordinate ascent | 2.683 | 1.046 | ||
| -NN-MST DP | 2.608 | 1.011 |
| Scaffold | Stored state pairs (%) | Inspected block candidates (%) | Component-cache masks | Convolution relaxations |
|---|---|---|---|---|
| MST | 55.800 | 23.800 | 111.000 | 70.000 |
| RNG | 75.400 | 26.900 | 237.000 | 198.500 |
| Gabriel | 83.900 | 28.800 | 536.000 | 432.500 |
| -NN-MST | 70.100 | 20.300 | 476.250 | 361.500 |
| -NN-MST | 95.800 | 44.500 | 1179.000 | 1072.000 |
| Delaunay | 102.200 | 67.800 | 1658.750 | 1342.500 |
| Noise SD | Method | SSE | ARI | VI (bits) |
|---|---|---|---|---|
| 0.020 | Lloyd | 24.095 | 0.224 | 1.642 |
| -means++, 1 start | 24.093 | 0.224 | 1.642 | |
| -means++, 20 starts | 24.080 | 0.211 | 1.663 | |
| DP, intact MST | 28.762 | 0.445 | 0.989 | |
| DP, pruned MST | 37.293 | 1.000 | 0.000 | |
| DP, -NN-MST | 28.762 | 0.445 | 0.989 |
| Data set | Outcome | Memo | Calls | Blocks | Nodes | Seconds | |
|---|---|---|---|---|---|---|---|
| Iris | 0 | Exact | 78 | 23,234 | 11,103 | 22,394 | 0.215 |
| 2 | Exact | 5,325 | 9,624,602 | 5,056,399 | 14,132,817 | 504.050 | |
| Wine | 0 | Exact | 75 | 36,243 | 15,650 | 31,529 | 0.389 |
| 2 | Time limit | 87,906 | 142,109,069 | 50,016,325 | 138,449,989 | 6480.018 | |
| Breast cancer | 0 | Exact | 1 | 569 | 568 | 1,137 | 0.052 |
| 2 | Time limit | 0 | 11,187,579 | 11,187,578 | 28,531,351 | 6480.000 |
| Data set | Lloyd | KM++ (1) | KM++ (20) | Ward | MST cuts |
|---|---|---|---|---|---|
| Iris | 0.010 | 0.000 | 0.003 | 0.021 | 0.517 |
| Wine | 0.010 | 0.000 | 0.003 | 0.022 | 0.848 |
| Breast cancer | 0.010 | 0.001 | 0.004 | 0.023 | 0.091 |
| Soybean | 0.009 | 0.000 | 0.003 | 0.020 | 0.426 |
| Vehicle | 0.036 | 0.001 | 0.008 | 0.035 | Not run |
| Dataset | MST | Union -NN | Union -NN | |
|---|---|---|---|---|
| Iris | 3 | 85 | 95 | 100 |
| Wine | 3 | 55 | 90 | 100 |
| Breast Cancer | 2 | 65 | 95 | 100 |
| Soybean | 4 | 95 | 100 | 100 |
| Vehicle | 4 | 75 | 90 | 100 |
| Target | Sampler | Min. ESS | Accept. (%) | PSM RMSE | TV for | |
|---|---|---|---|---|---|---|
| Finite | Gibbs | 1.008 | 808 | n/a | 2.029e-03 | 1.495e-02 |
| Generic | 1.002 | 1218 | 1.950 | 2.045e-03 | 3.450e-03 | |
| Guided | 1.007 | 948 | 2.290 | 1.771e-03 | 1.600e-03 | |
| Guided | 1.004 | 1274 | 2.540 | 5.798e-03 | 9.700e-03 | |
| Permuted | 1.006 | 665 | 1.560 | 3.906e-03 | 1.410e-02 | |
| DP | Gibbs | 1.010 | 1759 | n/a | 1.092e-03 | 1.215e-02 |
Clustering
Clustering groups data points by shared structure, developing methods to discover, validate, and interpret groups across diverse data and constraints.
See all 342 papers