Unsupervised learning
Interpreting, Naming, and Profiling Clusters
Turn cluster assignments into evidence-backed profiles using exemplars, contrasts, uncertainty, and responsible naming.
By the end you can
- Build cluster profiles from distributions, exemplars, boundaries, and contrasts
- Distinguish descriptive differences from causal explanations
- Name clusters with bounded language and versioned evidence
- Detect stigmatizing, unstable, or intervention-driven interpretations
Key idea
Chicago scored 398,684 people, and the score was heard as a name
A marketing program built for one segment changes purchasing behaviour. That can move members into other clusters during the next fit, and the label then mixes pre-intervention structure with treatment response. The clearest documented version of that loop is not a marketing program.
Chicago's Strategic Subject List assigned people a risk score, and the police department acted on it. RAND's evaluation of the pilot, published in 2016, followed the 426 people on that first list. They were no more or less likely to be the victim of a homicide or a shooting than matched comparisons, but they were more likely to be arrested for a shooting. The list did not predict what it was built to predict. It changed what happened to the people on it, and that change is what the next fit would have read as evidence.
The name travelled further than the number. Chicago's Office of Inspector General looked at Version 5 of the model in an advisory of 23 January 2020: “For example, of the 398,684 individuals who had an SSL score in Version 5 of the model, 16.3% (or 64,947) were identified as confirmed gang members.” Inside the department the score was understood as something else entirely. One district commander estimated that about 95% of people with a score were gang members or associates. A district intelligence officer stated that everyone with an SSL score is a gang member. Between 16.3% and “everyone” lies the whole subject of this lesson. CPD decommissioned the program on 1 November 2019.
The mechanism has a name. Perdomo and three co-authors called it performative prediction in 2020, and their opening line is the whole problem: “When predictions support decisions they may influence the outcome they aim to predict.” Left unmodelled, they note, performativity “surfaces as undesirable distribution shift, routinely addressed with retraining”. Retraining alone does not settle it. The next fit meets a population the last one moved.
Track exposure to interventions and avoid using post-treatment features to justify the original narrative. Cluster profiles are part of a feedback system. They are not static facts.
A segment can be altered by the policy designed around it.
The algorithm sorted patients by cost; the label said “high-need”
A commercial risk algorithm used across US health systems sorted patients by predicted health-care cost. The groups it produced were read as groups of high-need patients. One measurement profile, one human-facing name, and no step in between.
The dissection of that algorithm was published in Science on 25 October 2019, by Obermeyer and three colleagues. At a given risk score, they found, Black patients were considerably sicker than White patients, because less money had historically been spent on their care. The name was a judgement about need. The numbers underneath it were a record of spending.
The size of the gap between the two is in the abstract: “Remedying this disparity would increase the percentage of Black patients receiving additional help from 17.7 to 46.5%.” Nothing in the grouping step was broken. The features were real, the scores were reproducible, and the failure lived entirely in the sentence that said what the group was.
On the same day, New York's Department of Financial Services and Department of Health wrote jointly to UnitedHealth Group's CEO about the Impact Pro program, asking that the algorithm be justified or withdrawn. Interpreting a cluster needs evidence, uncertainty, and language proportionate to the observed data. A regulator may arrive before the next retraining does.
A cluster name can cause more harm than the cluster algorithm.
Comparison
Real segment names, and what the bounded description would have said
Names should communicate observed evidence without implying unsupported causes or worth. Two arms of the US government have put on the record what the industry actually calls its segments, so the contrast does not have to be invented.
The Federal Trade Commission studied nine data brokers and reported in May 2014 that “For example, one of the nine data brokers has 3000 data segments for nearly every U.S. consumer.” Among the categories it found were “Urban Scramble” and “Mobile Mixers”, both covering high concentrations of Latino and African-American consumers with low incomes; “Rural Everlasting”, single people over 66 with “low educational attainment and low net worths”; and “Thrifty Elders”. The Senate Commerce Committee's staff report of 18 December 2013 listed products titled “Rural and Barely Making It”, “Ethnic Second-City Strugglers”, “Retiring on Empty: Singles”, “Tough Start: Young Single Parents” and “Credit Crunched: City Families”.
Bounded description. The FTC entry contains its own well-behaved alternative: single people over 66 with low educational attainment and low net worths. It states measurable characteristics. It names the source file and the window they were measured in, it can carry uncertainty, and it stops being true when the measurement stops being true. It is version-specific by construction.
Speculative interpretation. “Rural Everlasting”, “Ethnic Second-City Strugglers” and “Tough Start: Young Single Parents” do something the data cannot. They turn an association into a motive and a permanent condition, they stigmatize the people inside them, and they outlive the fit that produced them. A household leaves the age band. The file keeps the noun.
Operational code. While the evidence is incomplete there is a third option that commits to nothing: a neutral identifier such as “Regime B-04”, carried with an accompanying profile. It avoids premature narrative and supports controlled iteration. A code cannot be quoted back at a person in a decision meeting as though it were a finding.
Bounded description
States measurable characteristics and the analysis window.
- “Recent high-frequency mobile users”
- Names observable behavior
- Can include uncertainty
- Remains version-specific
Speculative interpretation
Infers motive, identity, or future outcome from membership.
- “Disloyal bargain hunters”
- Turns association into motive
- Can stigmatize people
- Often survives after the cluster changes
Operational code
Uses a neutral identifier while evidence remains incomplete.
- “Regime B-04”
- Avoids premature narrative
- Requires an accompanying profile
- Supports controlled iteration
Visual
Thirteen datasets, one centroid, nothing else in common
A defensible description uses several views instead of one centroid table, and there is a demonstration of exactly how little a centre and a spread pin down. Matejka and Fitzmaurice, of Autodesk Research, opened their 2017 paper by stating the tradition they were extending: “Datasets which are identical over a number of statistical properties, yet produce dissimilar graphs, are frequently used to illustrate the importance of graphical representations when exploring data.”
What they built is the Datasaurus Dozen: thirteen two-dimensional datasets whose x mean (54.26), y mean (47.83), x standard deviation (16.76) and y standard deviation (26.93) agree to two decimal places. The point clouds form a star, a bullseye, parallel lines, a circle — and Alberto Cairo's original Datasaurus, the dinosaur that seeded the search. The datasauRus package on CRAN redistributes all thirteen and recomputes the summaries from the data itself: mean x 54.3, mean y 47.8, sd x 16.8, sd y 26.9, and a Pearson correlation of about −0.06 in every one. Thirteen populations, one profile row. A reader who has seen only the row knows nothing about which of the thirteen is on the table.
So the profile is built in layers. Membership and uncertainty: cluster size, soft assignment, boundary distance, and unstable members. Within-cluster distribution: ranges, quantiles, missingness, subgroups, and multimodality rather than only means. Contrasts: differences from the whole population and from the nearest competing cluster. Exemplars and counterexamples: representative, boundary, contradictory, and rare observations. Operational interpretation: the actions, risks, and limits that domain review or an experiment will support — and no more.
- 01
Membership and uncertainty
Cluster size, soft assignment, boundary distance, and unstable members.
- 02
Within-cluster distribution
Ranges, quantiles, missingness, subgroups, and multimodality rather than only means.
- 03
Contrasts
Differences from the whole population and the nearest competing cluster.
- 04
Exemplars and counterexamples
Representative, boundary, contradictory, and rare observations.
- 05
Operational interpretation
Actions, risks, and limits supported by domain review or experiments.
A centroid is one summary, not a complete description of a group.
Analogy
Writing a field guide instead of assigning nicknames
A biologist describing an unfamiliar population records measured traits, habitat, variation, and uncertain boundaries. A memorable nickname may help recall. It cannot replace the evidence.
Museum labels are attached to curated objects. Cluster identities are not: they can change with representation, metric, or sample, so after a rerun under a different metric the population being named may not be the same one. The field guide survives that rerun because it says what was measured and when. The nickname does not, and the nickname is the part that gets repeated.
Describe the evidence first; name only what the evidence can support.
Example
Profile elements that expose hidden heterogeneity
Useful reporting shows what the average conceals, and stability is one of the things it can show with a number rather than a feeling. Christian Hennig's cluster-wise bootstrap resamples the data. For each original cluster it records the mean Jaccard similarity to its closest counterpart in the resampled clustering. The interpretation scale is written down in the documentation for clusterboot() in his R package fpc: “Generally, a valid, stable cluster should yield a mean Jaccard similarity value of 0.75 or more.” Between 0.6 and 0.75 the cluster indicates a pattern in the data, but exactly which points belong to it is highly doubtful. Below a mean of 0.6, clusters should not be trusted. 0.85 and above is highly stable. A separate rule covers single runs: a Jaccard similarity of 0.5 or less in an individual resampling run counts that run as a dissolution of the cluster — the fpc default dissolution=0.5, a per-run criterion rather than a threshold on the mean.
- Distribution plot: A cluster mean of 12 visits hides two subgroups near 3 and 21 visits, suggesting internal multimodality — the profile row that the Datasaurus Dozen makes a joke of.
- Boundary review: Members with nearly equal affinity to two groups reveal where names overstate separation. Report the bootstrap number beside the name: a cluster whose mean Jaccard is 0.5 or below has dissolved, and one in the 0.6 to 0.75 band is a pattern whose exact membership is doubtful.
- Missingness profile: One cluster has many absent income values because its source channel never collects the field.
- Temporal profile: A segment appears only during onboarding and should not become a permanent customer identity.
- Protected-slice review: A cluster is disproportionately associated with a demographic proxy, requiring scrutiny before differential treatment — this is the fact pattern that HUD charged and the Justice Department sued over, not a hypothetical.
Steps
Create a cluster profile that can survive review
The report should support understanding without overstating certainty. Start with neutral IDs, keeping technical cluster identifiers separate from human-facing names. Summarize distributions, reporting quantiles, missingness, variability, and subgroup composition in original units. Compare neighbors, contrasting each cluster with the full population and with its nearest alternative. Review examples, sampling central, boundary, unstable, rare, and contradictory members. Check consequences, assessing whether the proposed names or actions stigmatize, exclude, or create feedback loops. Then version the profile, tying every description to a dataset, feature pipeline, model, and time period.
The fifth step is the one with case law behind it. On 28 March 2019 the Department of Housing and Urban Development charged Facebook with housing discrimination over its targeted advertising and user-grouping practices. Secretary Ben Carson's line in that release was “Facebook is discriminating against people based upon who they are and where they live.” The Justice Department then sued Meta Platforms and settled in June 2022. Under the settlement Meta stopped using its “Special Ad Audience” tool for housing ads. It built a Variance Reduction System to reduce sex and estimated race/ethnicity disparities in who actually sees a housing ad. It paid $115,054, the maximum civil penalty available under the Fair Housing Act at the time.
Read that as a specification for step 5. A behaviourally derived audience that lines up with a protected characteristic, and is then acted on, has already been ruled on twice. The check is not whether anyone put a protected attribute into the feature matrix.
1. Start with neutral IDs
Keep technical cluster identifiers separate from human-facing names.
2. Summarize distributions
Report quantiles, missingness, variability, and subgroup composition in original units.
3. Compare neighbors
Contrast each cluster with the full population and its nearest alternative.
4. Review examples
Sample central, boundary, unstable, rare, and contradictory members.
5. Check consequences
Assess whether proposed names or actions stigmatize, exclude, or create feedback loops.
6. Version the profile
Tie descriptions to a dataset, feature pipeline, model, and time period.
Interpretation is a separate model layered on assignments
The clustering algorithm produces memberships under a geometry. Analysts then build a narrative from summaries and examples. Those two stages should not be conflated, and European law separates them at exactly the same seam.
The General Data Protection Regulation defines profiling, in Article 4(4), as automated processing of personal data used “to evaluate certain personal aspects relating to a natural person”. The Article 29 Data Protection Working Party reads that verb strictly. Its guidelines on automated individual decision-making and profiling, adopted in 2017 and revised in 2018, set out three elements of profiling and hold that “evaluating” implies “some form of assessment or judgement about a person”. Which is why the guidelines can also say that “A simple classification of individuals based on known characteristics such as their age, sex, and height does not necessarily lead to profiling.”
The same assignment, in other words, is or is not profiling depending on the purpose of the description built on top of it. Article 22(1) attaches a right not to be subject to solely automated decisions once that line is crossed. The geometry did not change; the second stage did. A good profile can be challenged, updated, and retired. It tells readers which observations support the description, which members do not fit it cleanly, and what the description is for.
Treat cluster interpretation as evidence-backed editorial work.
Case
The Berkeley admissions gap that lived in the department choices
Berkeley's 1973 graduate admissions remain the teaching case for a profile computed on the wrong grouping. R's own documentation of the UCBAdmissions data records that “There were 2691 male applicants, of whom 1198 (44.5%) were admitted, compared with 1835 female applicants of whom 557 (30.4%) were admitted” — a gap of 14.1 percentage points, and a cluster profile that appears to be a finding about applicants. Department by department the gap mostly disappears. The same documentation says the association “stems from differences in the tendency of males and females to apply to the individual departments”.
The analysis behind that data was published in Science in 1975. Its abstract states both halves at once: “Examination of aggregate data on graduate admissions to the University of California, Berkeley, for fall 1973 shows a clear but misleading pattern of bias against female applicants”, while in the disaggregated data “about as many units appear to favor women as to favor men”. The pooled table was measuring where people applied. The name attached to it was about who they were.
Figure
Key takeaways
- Cluster profiles need distributions, uncertainty, contrasts and exemplars: the thirteen Datasaurus Dozen datasets share an x mean of 54.26 and a y mean of 47.83 and look nothing alike.
- Descriptive differences do not establish motive, identity or causality — Berkeley's 44.5% against 30.4% was a fact about which departments people applied to.
- Neutral identifiers are safer while interpretation is incomplete; the FTC found one broker holding 3,000 segments with names like “Urban Scramble” and “Thrifty Elders” attached to real households.
- Boundary and contradictory members reveal where names overstate separation, and Hennig's bootstrap puts a number on it: a mean Jaccard of 0.75 or more for a valid, stable cluster, below 0.6 not to be trusted.
- Policies built on a segment change the data the next fit sees: 398,684 people carried an SSL score, 16.3% were confirmed gang members, and officers described the whole list as gang members.
- Names and profiles must be versioned with the analysis pipeline and checked against law — GDPR Article 4(4) makes the purpose of the description, not the arithmetic, decide whether it is profiling.