Robust continuous clustering
Algorithms AIMech:RobustContinuousClustering DRAFT
Aliases: RCC clustering
A clustering algorithm that optimizes one representative per observation using squared data fidelity and robust attraction along a neighborhood graph, then extracts groups from thresholded connectivity between the optimized representatives.
Identity Notes & Concept Scope
Compared all 442 pinned AIO and 655 native IDs, names, aliases and scoped synonyms; no normalized identity match. Ignored- and hidden-inclusive fixed-string searches of the recovery, older discovery and original Documents checkouts returned 10, 0, 0 lines. All distinct match contents were read, including pending discovery entries and source-reading observations. Recovery hits concern pending RCC discovery notes and primary-source context; none identifies an existing standalone RCC record. Both other checkouts returned no matches including ignored and hidden files. Semantic matching covered 45 AIO and 241 native definitions, all read; unchanged definitions were byte-compared with the preceding full assessment. 10 full annotated AIO node/edge/generated contexts and 4 full native records were inspected. Retain robust graph-coupled optimization of moving observation representatives followed by connectivity extraction. It differs from fixed exemplar mixture weights, mean-shift density modes, fixed-K centroid reassignment and reciprocal-neighbor tree construction. RCC-DR adds sparse representation learning and remains a distinct lead.
Claims & Grounded Evidence
6 Claims
Mechanism
#robust-representative-objective
For observations x_i and representatives u_i initially equal to x_i, minimize one half of the summed squared data residuals plus lambda/2 times the weighted graph-edge penalties rho(||u_p-u_q||). The demonstrated Geman–McClure penalty is rho(y)=mu*y^2/(mu+y^2), with mu>0. Its influence decreases for sufficiently large separations, allowing weak intergroup connections to contribute less than under a quadratic attraction penalty.
Mechanism
#neighborhood-and-degree-weights
The paper constructs a mutual k-nearest-neighbor graph and augments it with a spanning tree of the k-nearest-neighbor graph. Its reported setting uses k=10 and cosine similarity for neighbor selection; an edge weight is average node degree divided by the geometric mean of its endpoint degrees. These graph choices and weights are separate from Euclidean representative differences in the objective. The pinned Python graph builder computes batched pair distances and partial neighbor sorting; it is not the approximate-neighbor implementation described in the paper.
Mechanism
#line-process-and-linear-solve
Introduce a nonnegative line variable l for each edge. For fixed representatives, its minimizing value is (mu/(mu+||u_p-u_q||^2))^2. For fixed line variables, representatives solve a weighted graph-Laplacian linear system: using columns for observations, U(I+lambda*A)=X. With nonnegative edge weights and lambda>=0, I+lambda*A is positive definite. These exact block subproblems do not establish a global optimum of the nonconvex joint objective or certify approximate numerical solves.
Scope
#continuation-and-stopping
The method uses graduated nonconvexity: reduce the robust scale mu during optimization and update lambda using the ratio of data and graph spectral norms. Changing these parameters changes the objective, so fixed-objective descent cannot be transferred silently to the whole schedule. The printed loop condition combines small objective change with an iteration condition using OR; the pinned MATLAB implementation instead uses a bounded for-loop and explicit continuation or break decisions. The code initializes mu from the maximum retained edge length, whereas the supplementary description uses the median.
Mechanism
#thresholded-component-extraction
Final labels are connected components after comparing representative distances with an edge-derived threshold; the number of clusters is not an input to the RCC objective. The supplement describes pairwise threshold connectivity, while the pinned assignment routine tests only the supplied original graph edges. The implementation also filters near-duplicate edges when deriving thresholds and distinguishes a capped scale sample from the uncapped one-percent threshold sample. These conventions can change the resulting partition and are not asserted to be equivalent.
Scope
#variant-and-implementation-scope
RCC-DR jointly learns a sparse low-dimensional representation and clustering and is a distinct extension, not an alias for the base RCC procedure. The author README distinguishes the released MATLAB accuracy implementation from a faster C++ implementation used for reported runtime measurements. Those measurements and the extension’s results are not transferred to this base record.
⚠️ Curated Limitations & Negative Results
- The nonconvex objective, continuation, graph construction and threshold extraction each impose scope boundaries. Neither an exact fixed-line solve nor a decreasing fixed-parameter block step proves a globally optimal partition.
- The released MATLAB solver uses PCG tolerance1e-2 and at most100 iterations per feature, and discards its returned status. Static inspection does not certify numerical convergence or exact monotonicity.
- Zero graph norms, too few retained nonduplicate edges, disconnected neighbor graphs and unexpected index conventions require separate handling. The pinned MATLAB code initializes edge endpoint variables only when the input edge list has minimum index zero; generic one-based input is not certified.
- The paper and inspected implementation differ in robust-scale initialization, threshold sampling, output edge scope and neighbor-search implementation. No single default configuration is silently attributed to both.
- Finite curator arithmetic checks20 line-process cases and81 two-point fixed-parameter updates, plus a constructed difference between all-pair and original-edge extraction. The extraction example is not claimed to arise during an author RCC run.
- The published evaluations include dataset-specific preprocessing and parameter selection. In particular, graph preprocessing for text datasets uses a PCA dimension equal to the number of ground-truth classes; this does not establish a wholly label-independent benchmark pipeline.
- All11 pages of the author-hosted main paper and supplement and the cited pinned source files were read. No author code, data, training, MATLAB/C++ execution or benchmark replication was performed; external solver internals and evaluation utilities were not audited.
Artificial Intelligence Ontology (AIO) Grounding
Mapped AIO Classes
| AIO Target Class | Mapping Relation | Mapping Rationale |
|---|---|---|
AIO:UnsupervisedClustering
Unsupervised Clustering
|
related_match | RCC constructs groups from observation features and graph relationships. The AIO target denotes the task; this relation does not equate the algorithm with a task or assert an upstream subclass. |
Evidence Sources & Primary Literature
5 Sources| Source ID | Publication / Document | Type / Access | Reference & Checksum |
|---|---|---|---|
rcc2017
|
Sohil Atul Shah, Vladlen Koltun
|
primary paper
full_text
|
ID: doi:10.1073/pnas.1700770114
sha256:a88e7f8437d0…
|
rcc-matlab
|
Sohil Atul Shah, Vladlen Koltun
|
official documentation
documentation
|
sha256:a89a23511856…
|
rcc-assignment
|
Sohil Atul Shah, Vladlen Koltun
|
official documentation
documentation
|
sha256:46379f0887d8…
|
rcc-graph
|
Sohil Atul Shah, Vladlen Koltun
|
official documentation
documentation
|
sha256:da5dfd24b641…
|
rcc-readme
|
Sohil Atul Shah, Vladlen Koltun
|
official documentation
documentation
|
sha256:e76c264cc28f…
|
Curation Provenance
Curator: Codex
Method: ai_assisted
Model: GPT-6
Created: 2026-10-13T22:29:06Z
Updated: 2026-10-13T22:29:06Z
Source File:
data/curated/RobustContinuousClustering.yaml