The guess you wrote down, and the three numbers coming
Session 1 ended with a single unhedged number on paper: how many real people sit behind Larkfield's thousand addresses. Get it out and put it where you can see it. Tonight that guess meets a world where the answer is not a matter of opinion, because the data was generated by a process that knows who owns what, so every method run against it can be scored rather than argued about. Three numbers come out, and the third one is the only one that changes how you would report.
★ What you walk out with tonight. The co-spend heuristic in one sentence, said back without notes, including what it uses as evidence and what it has none of. Three measured numbers on Larkfield: about 1,000 addresses, 304 entities, and 676 to 707 in between. And the reason the third number is reportable and a point estimate is not, which is the only part of tonight that will still be useful when the method changes.
LiveWhy a generated world, and not real rows4 min▶
Everything measured tonight comes out of a generator that builds a population, gives each party some addresses and produces transactions from them. Nothing here describes anything outside this page. That is a deliberate choice and it is the only choice that makes tonight worth forty five minutes.
On rows from anywhere else, an entity count is unknowable, which means every method is unfalsifiable and the discussion collapses into whose method sounds more careful. Here the generator knows the truth, the method never sees it, and the two get compared afterwards. That is the difference between a claim and a measurement, and it is the reason this world exists.
Larkfield's population is 300 ordinary people holding one to four addresses each, plus 4 operators running 60 addresses each on purpose. That is 304 entities. Ordinary people spend from two of their own addresses in one transaction about a quarter of the time; the operators avoid doing that 97 percent of the time. Four thousand transactions are produced from that, and everything tonight is read off those.
Self-studyThe words that keep coming back4 min▶
- Address. One identifier in the rows. About 1,000 of them appear in a Larkfield month.
- Entity. One real party, holding one or more addresses. There are 304, and the data never says so.
- Co-spend. A single transaction that spends from two addresses at once. The only evidence of common control that exists in these rows.
- Cluster. A set of addresses the method has decided belong together. There are 676 to 707 of them.
- Still split. Clusters beyond the true entity count: addresses that belong to one party and were not joined. The whole of the remaining error.
- Wrongly merged. A cluster holding addresses from more than one party. Zero, in every month measured.
- Operator. A party running many addresses deliberately. Four of them here, and they turn out not to be the main problem.
- Probabilistic linkage. Joining records by fuzzy attributes and scores, which is a different craft and lives in learn-entity-resolution-with-phoebe. The evidence here is structural and the join is deterministic.
One sentence of evidence, and everything that follows from it
13 min liveThe standard method is short enough to state in a sentence, which is worth noticing before anyone describes it as sophisticated: addresses spent together in a single transaction are treated as one holder. That is the whole of the evidence and the whole of the rule. What makes it interesting is not the rule, it is the shape of what the rule cannot see.
LiveWhat the rule has, and what it has nothing of4 min▶
A co-spend is strong evidence. To spend from two addresses in one transaction you have to be able to authorise both, which means one party controls both, which is exactly the thing being inferred. When the method says two addresses belong together it is right, and the measurements later confirm that it is right every single time.
The absence of a co-spend is evidence of nothing at all. It is consistent with two different owners and it is equally consistent with one owner who never happened to spend from both at once. Nothing distinguishes those cases, and nothing else in the rows carries an alternative signal, because there are no attributes to compare. Names, contact details and behavioural fingerprints do not exist here; that whole family of technique belongs to learn-entity-resolution-with-phoebe and there is nothing for it to work on.
Read those two paragraphs together and the shape of the error is already determined before anyone runs anything. Strong positive evidence, no negative evidence, therefore missed links and no false links. That is a property of the method, not a property of the data, and it is what makes the result reportable.
LiveWhy owner 3 is the honest case3 min▶
It is tempting to read the diagram as a story about evasion, and every conversation about address counts drifts that way within a few minutes. Owner 3 is the correction. Three addresses, one ordinary person, nothing concealed, no intent of any kind, and the method returns three parties.
People hold several addresses for reasons that have nothing to do with hiding: one for a long-term holding, one for day to day, one that came with a device, one they stopped using. No rule was broken and no counter-measure would help. The addresses simply never got spent together, and the only evidence the method uses is the one that never arrived.
Keep owner 3 in mind through Part 2, because the second measured finding of the night is that owner 3, not the operators, is where most of the remaining error lives.
Self-studyWhy the method is still worth running4 min▶
Given what follows, a reasonable reaction is to ask why anyone bothers. The answer is that it removes about half the error, it does so with no tuning and no parameters, and it produces an artefact that is worth more than the number: a bound with a known direction.
A method with no parameters is also a method nobody can quietly tilt. There is no threshold to move when the result is unwelcome, no similarity cutoff to argue about in a review, and no way to produce a different answer from the same rows. For a figure that will be read by people outside the company, that property is not a consolation prize. It is most of the value.
Three numbers, five months, and the direction of the error
14 min liveNow the same method against the full Larkfield world, repeated across five months so that nothing here rests on one lucky draw. The headline is that the naive count is about 3.2 times the truth and the clustered count is still about 2.3 times it. The finding underneath the headline is the one to take to a board.
...
LiveThe error runs one way, and that is the reportable part4 min▶
Drag the slider anywhere you like and watch the wrongly merged column. It stays at zero. Across every month and every setting, the method has never once put two real parties in the same cluster, and the reason is structural rather than lucky: a co-spend cannot happen between two parties who cannot authorise each other's addresses.
That single fact changes what can be said out loud. "Larkfield has 696 users" is a claim with an unknown error in an unknown direction, and it is wrong. "Larkfield has at most 696 entities, and the true figure is somewhere below that" is a claim with a known direction, a stated method and no tuning, and it is correct. The second sentence is less satisfying and considerably more useful, because a decision made on a ceiling is a decision that cannot be embarrassed by the truth arriving later.
Notice what the bound does not give you. There is no floor. Nothing in this run says the answer is above 400, or above 304, or above anything at all, and inventing one from the shape of the distribution would be putting back exactly the false confidence that the bound removed.
LiveThe uncomfortable part: discipline barely matters4 min▶
Every conversation about address counts ends up about operators, and every proposed fix is aimed at them. So take the four operators in Larkfield's world and vary how carefully they avoid co-spending, from careless at 50 percent to perfect at 100 percent. The clustered count moves from 666 to 697.
That is a range of 31, against a gap between the clustered figure and the truth of 392. Perfect operator tradecraft and sloppy operator tradecraft produce almost the same number, which means the operators' behaviour is not what the gap is made of. Their many addresses still are: decomposed, the operators account for 235 of the 392 and ordinary holders for 157. What barely moves is the part that responds to how carefully they act.
The consequence for a plan of work is direct and unwelcome. Effort aimed at detecting deliberate multi-address behaviour is aimed at a small fraction of the error. The large fraction is not a detection problem at all, because there is nothing to detect and nobody is doing anything.
Self-studyWhere serious people disagree5 min▶
One camp holds that you report the bound and you refuse the point estimate, in every forum, permanently. Their argument is that a ceiling is the only thing the evidence supports, and that a number offered with a caveat becomes a number without a caveat by the second slide it appears on. They have watched it happen. Give a board 696 with a footnote and within a quarter the 696 is in a target, a bonus and an external deck, and the footnote is gone.
The other camp holds that refusing to give a figure does not remove the figure, it relocates it. Somebody will still put a number in the board pack, and it will be produced by whoever is least equipped to caveat it, using a method nobody wrote down. On this view the responsible move is to publish the clustered number with a stated direction of error, a documented method and a standing instruction that it can only be compared with itself. A wrong number with known properties beats a vacuum that gets filled.
Both camps are staffed by people who have been burned. Notice that they disagree about organisations rather than about statistics: neither one disputes the measurement. Which one is right in your building depends on whether a caveat survives contact with your reporting chain, and you probably already know the answer to that.
Make the bound and say it out loud
15 min hands onNo code. Six steps on the live box above and on your own reporting, said in the room. The aim is to be able to state a one-directional bound in a sentence that survives being repeated by someone who was not here.
Score the guess you brought
Your number from session 1, against 304. Write down how far off you were and in which direction. Almost everyone is high, and the interesting part is by how much, because that is the size of the instinct you have to argue against later.
Say the rule back without notes
One sentence, no hedging: what the method treats as evidence. Then say what it has no evidence of. Anyone who can only do the first half will over-trust the output every time.
Move the slider to both ends
Set the operators to 50 and then to 100. Read the clustered count at each end and write the difference down. Then write the difference between the clustered count and 304 next to it, and look at the two numbers together.
Try to break the zero
Work through every month and several slider positions and look for a single wrongly merged cluster. Say why you did not find one, in terms of what a co-spend requires rather than in terms of luck.
Write the sentence for your board
One sentence containing the figure, the word ceiling or at most, the method in four words, and the fact that no floor exists. Read it aloud. If it takes more than fifteen seconds it will not be repeated correctly.
Name what breaks the sentence
Say which change to Larkfield's product would make the bound useless: something that causes parties who are genuinely separate to co-spend. Keep the answer. Session 3 is about parties who are paid to behave differently.
The habit to keep. When any method hands you an estimate, ask which direction its errors run before you ask how big they are. A method whose errors are two-sided gives you a number you have to trust. A method whose errors are one-sided gives you a bound you can defend, and a bound is worth more than a closer estimate almost every time somebody senior is going to repeat it.
Three questions
Across all five months the number of wrongly merged clusters is 0. What does that let Larkfield say that it otherwise could not?
A zero in the wrongly merged column means the method never invented a link. Every remaining error is a link it failed to make, and failing to merge can only inflate the count. So the count is an upper bound, which is a very different object from an accurate one, and the same run says nothing whatsoever about a lower bound.
Moving the 4 operators from 50 percent careful to 100 percent careful changes the clustered count from 666 to 697. What follows for a plan of work?
A range of 31 against a gap of 392 is the measurement. Perfect tradecraft and careless tradecraft land in nearly the same place, so the deliberate behaviour everybody plans against is the part that barely moves. Note what this does not say: decomposed, the operators are the larger share of the gap at 235 against 157, because they hold many addresses that never need to be spent together. It is their behaviour that is a small term, not their contribution.
An analyst proposes reporting "about 690 users, plus or minus 30". What is wrong with the shape of that statement, setting aside the exact figures?
The 30 is the spread across months, which is variation in the method's output, not the distance to the truth. Writing it as a symmetric band implies the answer could be above 690, and the zero in the wrongly merged column says it cannot. The error is one-directional and the correct shape is a ceiling, not a band.
Homework
Twenty minutes, on a count your own organisation reports and on the sentence you wrote in step 5.
Find a count that is really an identifier count
Accounts, devices, sessions, email addresses, logins. Pick one that gets reported as people. Write down what would have to be true for the two to be equal, then say plainly whether it is.
Bring the sentence and one adversary
Your board sentence from step 5, and the answer to step 6: one product change that would make separate parties co-spend and break the bound. Session 3 is about numbers that somebody is paid to move.