Abowd 2022 - The TopDown Algorithm and Privacy Accounting Proof
Summary
TDA has a measurement phase (noisy discrete-Gaussian measurements of key queries at every geographic level) and an estimation phase (sequential top-down constrained non-negative least squares plus controlled rounding, each level conditioned on the fixed estimate above). Total privacy loss is the sum of the per-level budgets. Theorem 2 (Appendix B): with noise variances and budget shares satisfying the stated sum constraints, TDA is -zCDP with .
Overview
The motivation is to exploit the tree-like geographic hierarchy to get estimates more precise than estimating block-level vectors independently and aggregating (the block-by-block baseline in Abowd 2022 - Geography Spines, Computing Environment and Block-by-Block Baseline), in a scalable manner.
Main Content
Table 1: the TopDown Algorithm
Measurement phase.
- For each level : (a) determine the privacy-loss budget for level ; (b) take DP noisy measurements for all nodes in level .
Estimation phase.
- For the US root , estimate by (a) a non-negative solution from the DP measurements , invariants and edit constraints at the US level; (b) a non-negative integer solution from by controlled rounding.
- For each level let be the set of distinct parents among its nodes. For each parent estimate the joint contingency vector by (a) a non-negative solution from , invariants, edit constraints and aggregate constraints enforcing that the children sum to ; (b) a non-negative integer solution by controlled rounding.
Why two phases. In the measurement phase, queries at different levels involve the same individuals, so the total privacy loss is the sum of losses across levels; the distribution of the global budget across levels and queries is a design choice. The estimation phase is pure post-processing and costs no privacy. In each step the already-estimated higher level is held fixed and becomes an extra constraint on the next subproblem. Two-step solving (continuous least squares, then rounding) is needed because the integer program at full size is intractable. Sequential details are in Abowd 2022 - Least Squares and Rounder Estimators.
Privacy accounting (Appendix B)
Convert noise variances to : let be the univariate query for geographic level , node within the level, marginal query set within the node, and cell of that marginal. The query strategy has two parts: which queries are asked and which budget each gets. Early versions were symmetric over levels and nodes; the current strategy lets the set of queries differ by level, but requires that the same queries are asked for every node within a level.
Relative precision of a query is with the proportion for node in level and the proportion for the -th query at that node. The goal is a global scale such that discrete Gaussian noise with variance
gives -zCDP. Structure requirements: (R1) for all : (relative split of precision across queries sums to 1); (R2) for every block , summing over the directed path from the root (US) down to block gives 1.
Theorem 2 (TDA satisfies zCDP)
The set of queries processed by the discrete Gaussian mechanism with parameters , where (1) all queries are marginals, (2) , , (3) for all , (4) for all blocks , satisfies -zCDP with .
(Functionally, if or is 0 the query is not asked.)
Proof sketch. By Theorem 1 it suffices to show for neighbors (bounded: one record changes).
- Case 1: the changed record keeps its block (so the same node is affected at every level, say at level ). Only those nodes contribute; since queries are marginals, at most two cells differ in each marginal group (one down by 1, one up by 1), giving using (3) and (4).
- Case 2: the record changes block. Let be the nodes at level before/after. Because the geography is a tree, there is a level such that the nodes coincide for all (including the US). For the cells change as in Case 1, contributing . For the affected nodes differ, and in each one marginal cell changes by exactly or (contributing each): . Adding, the total is by (4) applied to both paths.
In both cases the bound is , so . (The arXiv text of the Case 2 derivation is truncated at the end of the appendix; the final combination above is this note’s completion by the same argument and the statement of Theorem 2.)
Consequences for design
Because the allocation sums to 1 along every root-to-block path, the global is independent of the number of nodes at a level: nodes at the same level are disjoint, so parallel composition applies across them, while sequential composition applies along the path. This is why the ” proportions” in Tables 3 and 6 add to one across levels for each of persons and housing units.
Examples
Budget bookkeeping for the April 2021 person allocation
Setup: person proportions by level (US, state, county, tract, CBG, block) , global person budget . Solution: the proportions sum to (R2), so the total is regardless of how many nodes there are. Level budgets: US , state , county , tract , CBG , block . Within the block level, the DETAILED query gets of that. Interpretation: half of the person budget sits on blocks (location protection and block-level accuracy), as the paper states.
import numpy as np
# Table 3 (April 2021) and Table 6 (production): person and housing-unit rho proportions by level
levels = ["US", "state", "county", "tract", "CBG", "block"]
person_apr = np.array([51, 153, 78, 51, 172, 519]) / 1024
housing_apr = np.array([1, 1, 18, 75, 906, 23]) / 1024
person_prod = np.array([104, 1440, 447, 687, 1256, 165]) / 4099
housing_prod = np.array([1/205, 1/205, 7/82, 364/1025, 1759/4100, 99/820])
for name, v in (("person Apr21", person_apr), ("housing Apr21", housing_apr),
("person prod", person_prod), ("housing prod", housing_prod)):
print(name, v.sum()) # each ~1.0 (requirement R2 at the level scale)
rho_person = 2.56
print(dict(zip(levels, np.round(rho_person * person_prod, 4))))
# noise variance for a query: sigma^2 = 1 / (rho_total * c * d)
c_county, d_total = 447/4099, 3126/4097
print(1 / (rho_person * c_county * d_total)) # ~4.7Connections
- The discrete Gaussian and the -sensitivity premise: Abowd 2022 - Discrete Gaussian, Queries and the Optimization Problem.
- Parallel vs sequential composition is the zCDP version of RDP composition: Mironov 2017 - RDP Properties and Composition; GDP composition adds in quadrature: Dong Roth Su 2022 - Composition Theorem and Central Limit Theorems (for GDP, and ‘s add).
- Hierarchical estimation with inverse-variance weights: Hierarchical Forecast Reconciliation (MinT).