<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Differential Privacy</title>
    <description>Website for the differential privacy research community</description>
    <link>https://differentialprivacy.org</link>
    <atom:link href="https://differentialprivacy.org/feed.xml" rel="self" type="application/rss+xml" />
    
      <item>
        <title>Call for Papers - TPDP 2026</title>
        <description>&lt;p&gt;&lt;a href=&quot;https://tpdp.journalprivacyconfidentiality.org/2026/&quot;&gt;The 12th Workshop on the Theory and Practice of Differential Privacy (TPDP 2026)&lt;/a&gt; will take place on June 1 and 2 in Boston, MA.
The deadline to submit a 4-page abstract is February 18, 2026 AoE, with notifications by April 2, 2026.
The call for papers is copied below.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Differential privacy (DP) is the leading framework for data analysis with rigorous privacy guarantees. In the last two decades, it has transitioned from the realm of pure theory to large scale, real world deployments.&lt;/p&gt;

&lt;p&gt;Differential privacy is an inherently interdisciplinary field, drawing researchers from a variety of academic communities including machine learning, statistics, security, theoretical computer science, databases, and law. The combined effort across a broad spectrum of computer science is essential for differential privacy to realize its full potential. To this end, this workshop aims to stimulate discussion among participants about both the state-of-the-art in differential privacy and the future challenges that must be addressed to make differential privacy more practical.&lt;/p&gt;

&lt;p&gt;Specific topics of interest for the workshop include (but are not limited to):&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Theory of DP&lt;/li&gt;
  &lt;li&gt;DP and security&lt;/li&gt;
  &lt;li&gt;Privacy preserving machine learning&lt;/li&gt;
  &lt;li&gt;DP and statistics&lt;/li&gt;
  &lt;li&gt;DP and data analysis&lt;/li&gt;
  &lt;li&gt;Trade-offs between privacy protection and analytic utility&lt;/li&gt;
  &lt;li&gt;DP and surveys&lt;/li&gt;
  &lt;li&gt;Programming languages for DP&lt;/li&gt;
  &lt;li&gt;Relaxations of DP&lt;/li&gt;
  &lt;li&gt;Relation to other privacy notions and methods&lt;/li&gt;
  &lt;li&gt;Experimental studies using DP&lt;/li&gt;
  &lt;li&gt;DP implementations&lt;/li&gt;
  &lt;li&gt;DP and policy making&lt;/li&gt;
  &lt;li&gt;Applications of DP&lt;/li&gt;
  &lt;li&gt;Reconstruction attacks and memorization&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Submissions:&lt;/strong&gt; Authors are invited to submit a short abstract of new work or work published since June 2025 (the most recent TPDP submission deadline). Submissions must be 4 pages maximum, not including references. Submissions may also include appendices, but these are only read at reviewer’s discretion. There is no prescribed style file, but authors should ensure a minimum of 1-inch margins and 10pt font. Submissions are not anonymized, and should include author names and affiliations.&lt;/p&gt;

&lt;p&gt;Submissions will undergo a lightweight review process and will be judged on originality, relevance, interest, and clarity. Based on the volume of submissions to TPDP 2025 and the workshop’s capacity constraints, we expect that the review process will be somewhat more competitive than in years past. Accepted abstracts will be presented at the workshop either as a talk or a poster.&lt;/p&gt;

&lt;p&gt;The workshop will not have formal proceedings and is not intended to preclude later publication at another venue. In-person attendance is encouraged, though authors of accepted abstracts who cannot attend in person will be invited to submit a short video to be linked on the TPDP website.&lt;/p&gt;

&lt;p&gt;Selected papers from the workshop will be invited to submit a full version of their work for publication in a &lt;a href=&quot;https://tpdp.journalprivacyconfidentiality.org/2026/&quot;&gt;special issue&lt;/a&gt; of the &lt;a href=&quot;https://journalprivacyconfidentiality.org/index.php/jpc&quot;&gt;Journal of Privacy and Confidentiality&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The submission server is live: &lt;a href=&quot;https://tpdp26.cs.uchicago.edu/&quot;&gt;https://tpdp26.cs.uchicago.edu/&lt;/a&gt;&lt;/p&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Thu, 01 Jan 2026 12:00:00 -0800</pubDate>
        <link>https://differentialprivacy.org/tpdp2026/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/tpdp2026/</guid>
      </item>
    
      <item>
        <title>Open Problem: Selection via Low-Sensitivity Queries</title>
        <description>&lt;p&gt;Two of the basic tools for building differentially private algorithms are noise addition for answering low-sensitivity queries and the exponential mechanism for selection. 
Could we do away with the exponential mechanism and simply use low-sensitivity queries to perform selection?&lt;/p&gt;

&lt;h2 id=&quot;formal-problem-statement&quot;&gt;Formal Problem Statement&lt;/h2&gt;

&lt;p&gt;Recall that the exponential mechanism is a differentially private algorithm that takes a private dataset \(x \in \mathcal{X}^n\) and a public loss function \(\ell : \mathcal{X}^n \times \mathcal{Y} \to \mathbb{R}\) and returns \(Y \in \mathcal{Y}\) such that \(\mathbb{E}_Y[\ell(x, Y)] \le \min_{y\in\mathcal{Y}} \ell(x, y) + O(\frac{1}{\varepsilon} \log |\mathcal{Y}|)\), where \(\varepsilon\) is the differential privacy parameter. 
(We will suppress the privacy parameter for simplicity.) 
The question is whether we can replace the exponential mechanism with an algorithm that is based only on adding noise to low-sensitivity queries.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Problem 1:&lt;/strong&gt; &lt;a id=&quot;prob1&quot;&gt;&lt;/a&gt;
There is a (private) dataset \(x \in \mathcal{X}^n\) and a (public) loss function \(\ell : \mathcal{X}^n \times \mathcal{Y} \to \mathbb{R}\) that has sensitivity-\(1\) in its first argument. That is, for all \(x,x’ \in \mathcal{X}^n\) differing in a single entry and all \(y \in \mathcal{Y}\), we have \(|\ell(x,y) − \ell(x’,y)| \le 1\).&lt;/p&gt;

  &lt;p&gt;The goal is to construct an algorithm that outputs \(Y \in \mathcal{Y}\) such that \[\mathbb{E}_Y[\ell(x, Y)] \le \min_{y\in\mathcal{Y}} \ell(x, y) + O(\log |\mathcal{Y}|).\tag{1}\]
However, the algorithm cannot access \(x\) directly. Instead there is an oracle which provides noisy answers to \(k\) sensitivity-\(1\) queries. Specifically, each query is specified by a sensitivity-\(1\) function \(q : \mathcal{X}^n \to \mathbb{R}\), which is submitted to the oracle, and the oracle returns a sample from \(\mathcal{N}(q(x),k)\). The number of queries \(k\) may be chosen arbitrarily and the queries may be specified adaptively.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Obviously, if the algorithm has direct access to \(x\) or if the oracle didn’t add any noise, this problem would be trivial (just query \(q(x)=\ell(x,y)\) for all \(y\in\mathcal{Y}\) – i.e., \(k=|\mathcal{Y}|\) queries – and output the minimum).&lt;/p&gt;

&lt;p&gt;The noise added by the oracle ensures that the algorithm is differentially private. Thus the goal of this algorithm is directly comparable with the guarantee of the exponential mechanism.&lt;/p&gt;

&lt;h2 id=&quot;partial-solution&quot;&gt;Partial Solution&lt;/h2&gt;
&lt;p&gt;&lt;a id=&quot;partsoln&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As a starting point, the following binary-tree-based algorithm attains expected excess loss \(O((\log|\mathcal{Y}|)^{3/2})\) instead of the desired \(O(\log|\mathcal{Y}|)\).&lt;/p&gt;

&lt;p&gt;Construct a complete binary tree with the leaves corresponding to the elements of \(\mathcal{Y}\). Walk down the tree from the root to a leaf as follows and output the leaf’s element. 
At each node, query the oracle with &lt;a id=&quot;eq2&quot;&gt;&lt;/a&gt;\[q(x) = \frac{1}{2} \big(\min_{y\in\text{ left subtree}} \ell(x, y)\big) − \frac{1}{2} \big(\min_{y\in\text{ right subtree}} \ell(x, y)\big).\tag{2}\]  If the oracle’s answer is positive, move to the right child; otherwise, move left.&lt;/p&gt;

&lt;p&gt;The number of queries for this algorithm is \(k=\lceil \log_2|\mathcal{Y}| \rceil\). And it’s easy to check that &lt;a href=&quot;#eq2&quot;&gt;Equation 2&lt;/a&gt; has sensitivity-\(1\).&lt;/p&gt;

&lt;p&gt;For the utility analysis, let \(A_1,A_2,\cdots,A_k\) denote the nodes on the path from the root \(A_1\) to the leaf \(A_k\) that we output.
We track the minimum loss on the subtree rooted at the current node – i.e., \(B_i := \min_{y \text{ in subtree rooted at } A_i} \ell(x,y)\).&lt;/p&gt;

&lt;p&gt;Initially, we have \(B_1 = \min_{y\in\mathcal{Y}} \ell(x, y) \), which is the desired quantity. And \(B_k\) is the loss of the final output.
We also have \(B_1 \le B_2 \le \cdots \le B_k\), since each successive subtree is a subset of the previous one. 
To complete the analysis we need only show that \(\mathbb{E}[B_{i+1}] \le B_i + O(\sqrt{\log|\mathcal{Y}|})\) for all \(i\).&lt;/p&gt;

&lt;p&gt;If the (noiseless) value of the query in &lt;a href=&quot;#eq2&quot;&gt;Equation 2&lt;/a&gt; is positive, then the minimizer is in the right subtree and vice versa. 
If at step \(i\) the algorithm chooses the “correct” child, then \(B_{i+1}=B_i\).
But, if the algorithm chooses the “incorrect” child, we have \(B_{i+1} = B_i + 2|q_i(x)|\), where \(q_i\) is the query (given in &lt;a href=&quot;#eq2&quot;&gt;Equation 2&lt;/a&gt;) that was asked to the oracle in step \(i\).&lt;/p&gt;

&lt;p&gt;What is the probability of choosing the wrong child? Well, it’s the probability that the noise added to \(q_i(x)\) flips the sign – i.e., \(\mathbb{P}[\mathsf{sign}(\mathcal{N}(q_i(x),k)) \ne \mathsf{sign}(q_i(x))]\). Putting these together and doing a bit of algebraic manipulation, we have
\[ \mathbb{E}[B_{i+1}] = B_i + 2|q_i(x)| \cdot \mathbb{P}[\mathcal{N}(0,k)\ge|q_i(x)|] \]\[ ~~~~~~~~~~~~~~~ \le B_i + 2\sqrt{k} \cdot \max_{v \ge 0} v \cdot \mathbb{P}[\mathcal{N}(0,1) \ge v].\tag{3}\]
The quantity \(\max_{v \ge 0} v \cdot \mathbb{P}[\mathcal{N}(0,1) \ge v] \in [0.169,0.17]\) is a constant (attained at \(v \approx 0.75\)).
Thus we have \(\mathbb{E}[B_k] \le 0.34 k^{3/2} = O((\log|\mathcal{Y}|)^{3/2})\).&lt;/p&gt;

&lt;h2 id=&quot;who-cares&quot;&gt;Who Cares?&lt;/h2&gt;

&lt;p&gt;Oh man, tough crowd. &lt;em&gt;I&lt;/em&gt; care. But it’s a fair question – why is this open problem interesting?&lt;/p&gt;

&lt;p&gt;A positive solution to this open problem would demonstrate the power of low-sensitivity queries and illustrate how almost all differentially private tasks can be boiled down to noise addition. 
Note that the reverse reduction is trivial: We can use the exponential mechanism to answer low-sensitivity queries. Namely, we can set \(\ell(x,y)=|q(x)-y|\). Thus a positive solution to this problem would show an &lt;em&gt;equivalence&lt;/em&gt; between selection and low-sensitivity queries.&lt;/p&gt;

&lt;p&gt;In practice, the exponential mechanism works fine, so we don’t really &lt;em&gt;need&lt;/em&gt; this algorithm.
Nevertheless, I think this could lead to something insightful, and maybe even useful: There are situations where we can do better than the exponental mechanism or at least better than the standard &lt;em&gt;analysis&lt;/em&gt; of the exponential mechanism. An alternative algorithm might open up more avenues for improving on the exponential mechanism.&lt;/p&gt;

&lt;p&gt;To give some examples where we know how to beat the standard analysis of the exponential mechanism: First, suppose the loss function can be decomposed as \[\ell(x,y) = \ell(x,(y_1,y_2,\cdots,y_d)) = \ell_1(x,y_1) + \ell_2(x,y_2) + \cdots + \ell_d(x,y_d). \tag{4}\]
Then the analysis of the exponential mechanism can also be decomposed into the composition of \(d\) independent exponential mechanisms, which yields better asymptotic results via the advanced composition theorem.
A second example is when there is one option \(y_* \in \mathcal{Y}\) that stands out from the other options – i.e., \(\ell(x,y_*) \le \min_{y \in \mathcal{Y} \setminus {y_*}} \ell(x,y) - c\), where \(c\) is sufficiently large. In this case we can privately output \(y_*\) with an improved dependence on the number of options \(|\mathcal{Y}|\) [&lt;a href=&quot;https://arxiv.org/abs/1409.2177&quot; title=&quot;Kamalika Chaudhuri, Daniel Hsu, Shuang Song. The Large Margin Mechanism for Differentially Private Maximization. NIPS 2014.&quot;&gt;CHS14&lt;/a&gt;,&lt;a href=&quot;https://dl.acm.org/doi/10.1145/3188745.3188946&quot; title=&quot; Mark Bun, Cynthia Dwork, Guy N. Rothblum, Thomas Steinke. Composable and versatile privacy via truncated CDP. STOC 2018.&quot;&gt;BDRS18&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1905.13229&quot; title=&quot;Mark Bun, Gautam Kamath, Thomas Steinke, Zhiwei Steven Wu. Private Hypothesis Selection. NeurIPS 2019.&quot;&gt;BKSW19&lt;/a&gt;].&lt;/p&gt;

&lt;p&gt;A negative solution – that is, an impossibility result – would show that selection is a fundamental and indivisible primitive of differentially private algorithms. This would be surprising and thus interesting. The proof technique would presumably also be novel.&lt;/p&gt;

&lt;h2 id=&quot;remarks&quot;&gt;Remarks&lt;/h2&gt;

&lt;p&gt;This open problem was first &lt;a href=&quot;https://dataprivacyopenpro.wixsite.com/mysite/forum&quot;&gt;published in 2019&lt;/a&gt;. (And I asked a &lt;a href=&quot;https://cstheory.stackexchange.com/questions/39254/find-an-approximate-argmax-using-only-approximate-max-queries&quot;&gt;related question&lt;/a&gt; back in 2017.) I’m reposting it because, well, it’s still open. (There are a few other open problems in the 2019 list, although some have been solved by now.)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;#prob1&quot;&gt;Problem 1&lt;/a&gt; is stated in terms of Gaussian noise addition (and implicitly performs optimal/advanced composition).
The problem also makes sense with Laplace noise addition (and &lt;a href=&quot;/composition-basics/&quot;&gt;basic composition&lt;/a&gt;).
Let’s state that formally:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Problem 2:&lt;/strong&gt; &lt;a id=&quot;prob2&quot;&gt;&lt;/a&gt;
There is a (private) dataset \(x \in \mathcal{X}^n\) and a (public) loss function \(\ell : \mathcal{X}^n \times \mathcal{Y} \to \mathbb{R}\) that has sensitivity-\(1\) in its first argument. That is, for all \(x,x’ \in \mathcal{X}^n\) differing in a single entry and all \(y \in \mathcal{Y}\), we have \(|\ell(x,y) − \ell(x’,y)| \le 1\).&lt;/p&gt;

  &lt;p&gt;The goal is to construct an algorithm that outputs \(Y \in \mathcal{Y}\) such that \[\mathbb{E}_Y[\ell(x, Y)] \le \min_{y\in\mathcal{Y}} \ell(x, y) + O(\log |\mathcal{Y}|).\tag{5}\]
However, the algorithm cannot access \(x\) directly. Instead there is an oracle which provides noisy answers to \(k\) sensitivity-\(1\) queries. Specifically, each query is specified by a sensitivity-\(1\) function \(q : \mathcal{X}^n \to \mathbb{R}\), which is submitted to the oracle, and the oracle returns a sample from \(q(x)+\mathsf{Lap}(k)\). The number of queries \(k\) may be chosen arbitrarily and the queries may be specified adaptively.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For pure DP, the &lt;a href=&quot;#partsoln&quot;&gt;binary tree algorithm&lt;/a&gt; would achieve excess loss \(O((\log |\mathcal{Y}|)^2)\) instead of \(O(\log |\mathcal{Y}|)\).&lt;/p&gt;

&lt;p&gt;The contrast between pure DP and Gaussian DP is interesting because the exponential mechanism satisfies pure DP and &lt;a href=&quot;https://arxiv.org/abs/1704.03024&quot;&gt;relaxing to approximate DP doesn’t allow us to do any better&lt;/a&gt;. But, comparing &lt;a href=&quot;#prob1&quot;&gt;Problem 1&lt;/a&gt; and &lt;a href=&quot;#prob2&quot;&gt;Problem 2&lt;/a&gt;, it seems like the Gaussian case &lt;em&gt;should&lt;/em&gt; be easier.
I can’t quite put my finger on it, but I feel like there’s something interesting to say about this distinction and I hope resolving this open problem would shed light on it.&lt;/p&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Fri, 02 May 2025 7:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/open-problem-selection/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/open-problem-selection/</guid>
      </item>
    
      <item>
        <title>Limits of Privacy Amplification by Subsampling</title>
        <description>&lt;p&gt;In &lt;a href=&quot;/subsampling&quot;&gt;our previous post&lt;/a&gt; we gave a brief introduction to privacy amplification by subsampling.
The high-level story is that we can make differentially private algorithms faster by runninng them on a subsample of the dataset instead of the whole dataset and this comes at essentially no cost in privacy and accuracy. 
That story is pretty good. But now we’ll take a closer look at the details of this story.&lt;/p&gt;

&lt;h2 id=&quot;setting&quot;&gt;Setting&lt;/h2&gt;

&lt;p&gt;Recall that we’re comparing the standard Laplace mechanism \(M(x) := \frac{1}{n}\sum_{x_i \in x} q(x_i) + \mathsf{Laplace}\left(\frac{1}{\varepsilon n}\right)\) to the subsampled Laplace mechanism \(\widetilde{M}_{p}(x) := \frac{1}{pn} \sum_{x_i \in S_p(x)} q(x_i) + \mathsf{Laplace}\left(\frac{1}{\varepsilon_p p n}\right)\), where \(S_p(x)\subseteq x\) is a random Poisson subsample that includes each person’s data independently with probability \(p\).
Both algorithms satisfy the same \(\varepsilon\)-differential privacy guarantee.
The respective mean squared error guarantees are
&lt;a id=&quot;eq1&quot;&gt;&lt;/a&gt;\[\mathbb{E}\left[\left(M(x) - \frac{1}{n}\sum_{x_i \in x} q(x_i)\right)^2\right] = \frac{2}{\varepsilon^2 n^2}. \tag{1}\]
and
&lt;a id=&quot;eq2&quot;&gt;&lt;/a&gt;
\[ \mathbb{E}\left[\left(\widetilde{M}_p(x) - \frac{1}{n}\sum_{x_i \in x} q(x_i) \right)^2\right]  \le \frac{|x|}{p n^2} + \frac{2}{\varepsilon_p^2 p^2 n^2} \approx \frac{1}{p n} + \frac{2}{\varepsilon^2 n^2},\tag{2}\]
where 
&lt;a id=&quot;eq3&quot;&gt;&lt;/a&gt;\[\varepsilon_p = \log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right) \approx \frac{\varepsilon}{p}. \tag{3} \]&lt;/p&gt;

&lt;p&gt;Comparing &lt;a href=&quot;#eq1&quot;&gt;Equation 1&lt;/a&gt; with &lt;a href=&quot;#eq2&quot;&gt;Equation 2&lt;/a&gt;, there are two differences: The non-private statistical error \(\frac{1}{p n}\) and the approximation from &lt;a href=&quot;#eq3&quot;&gt;Equation 3&lt;/a&gt;. 
We’ll ignore the non-private statistical error \(\frac{1}{p n}\) in this post, since it isn’t the dominant error term for reasonable parameter regimes and, well, this is &lt;em&gt;DifferentialPrivacy.org&lt;/em&gt; not &lt;em&gt;Statistics.org&lt;/em&gt;.&lt;/p&gt;

&lt;h2 id=&quot;how-good-is-the-approximation&quot;&gt;How good is the approximation?&lt;/h2&gt;

&lt;p&gt;So let’s talk about the approximation in &lt;a href=&quot;#eq3&quot;&gt;Equation 3&lt;/a&gt;, which directly affects the scale of the Laplace noise added by the subsampled mechanism \(\widetilde{M}_p\): &lt;a id=&quot;eq4&quot;&gt;&lt;/a&gt;\[\text{noise_scale}(\widetilde{M}_p) = \frac{1}{\varepsilon_p p n} = \frac{1}{pn\log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right)} \approx \frac{1}{\varepsilon n} = \text{noise_scale}(M). \tag{4} \]
The approximation in &lt;a href=&quot;#eq3&quot;&gt;Equation 3&lt;/a&gt; comes from the Taylor series around \(\varepsilon=0\): 
&lt;a id=&quot;eq5&quot;&gt;&lt;/a&gt;\[\varepsilon_p = \log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right) = \frac{\varepsilon}{p} - \frac{(1-p)\varepsilon^2}{2p^2} + \frac{(2-p)(1-p)\varepsilon^3}{6p^3} \pm O(\varepsilon^4)\tag{5}.\]
The approximation in &lt;a href=&quot;#eq3&quot;&gt;Equation 3&lt;/a&gt; is just the first term in this Taylor series.&lt;sup id=&quot;fnref:taylor&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:taylor&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; 
We can make the approximation precise with some inequalities:&lt;sup id=&quot;fnref:ineq&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:ineq&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;
&lt;a id=&quot;eq6&quot;&gt;&lt;/a&gt;\[\frac{\varepsilon}{p+\varepsilon} \le \log\left(1 + \frac{\varepsilon}{p}\right) \le \varepsilon_p = \log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right) \le \frac{\varepsilon}{p}. \tag{6} \]&lt;/p&gt;

&lt;p&gt;To get an idea of how good this approximation actually is, let’s plot the approximation ratio &lt;a id=&quot;eq7&quot;&gt;&lt;/a&gt;\[\frac{\text{noise_scale}(M)}{\text{noise_scale}(\widetilde{M}_p)} = \frac{p\varepsilon_p}{\varepsilon} = \frac{p}{\varepsilon} \log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right) \approx 1:\tag{7}\]
(Per &lt;a href=&quot;#eq6&quot;&gt;Equation 6&lt;/a&gt;, this ratio is bounded: \(\frac{p}{p+\varepsilon} \le \frac{p\varepsilon_p}{\varepsilon} \le 1\).)&lt;/p&gt;

&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;/images/subsampling-ratio-p.png&quot; alt=&quot;Plot of p*eps\_p/eps as a function of p for eps=0.01,0.1,1,2&quot; width=&quot;768&quot; height=&quot;576&quot; /&gt;&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;/images/subsampling-ratio-eps.png&quot; alt=&quot;Plot of p*eps\_p/eps as a function of eps for p=0.001,0.01,0.1,0.5&quot; width=&quot;768&quot; height=&quot;576&quot; /&gt;&lt;/p&gt;
&lt;p&gt;This doesn’t look so good!
The approximation we made in &lt;a href=&quot;#eq3&quot;&gt;Equation 3&lt;/a&gt; tells us that all of the plotted lines should be close to 1.
But this seems to only be accurate when the subsampling probability \(p\) is large or when the privacy parameter \(\varepsilon\) is &lt;em&gt;very&lt;/em&gt; small.
Large subsampling probability \(p\) doesn’t make much sense for subsampling; we don’t get much speedup. So the question is &lt;em&gt;how small does the privacy parameter \(\varepsilon\) need to be?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Roughly, if we want the approximation in &lt;a href=&quot;#eq3&quot;&gt;Equation 3&lt;/a&gt; to be good within constant factors, then  the privacy parameter \(\varepsilon\) needs to scale linearly with the subsampling probability \(p\). I.e., \(\varepsilon=cp\) for a constant \(c\). Let’s see what the ratio looks like for various constants:&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;/images/subsampling-ratio-c.png&quot; alt=&quot;Plot of p*eps\_p/eps as a function of p for eps=p*const where const=0.2,0.5,2,5&quot; width=&quot;768&quot; height=&quot;576&quot; /&gt;&lt;/p&gt;
&lt;p&gt;This looks slightly better. In particular, if \(\varepsilon \le 2p\), then \(\frac{p\varepsilon_p}{\varepsilon} \ge \frac{1}{2}\), which means the subsampled Laplace mechanism \(\widetilde{M}_p\) adds at most twice as much noise as the standard Laplace mechanism \(M\).&lt;/p&gt;

&lt;p&gt;In general, if we set \(\varepsilon \le cp\), then the ratio in &lt;a href=&quot;#eq7&quot;&gt;Equation 7&lt;/a&gt; is lower bounded by
&lt;a id=&quot;eq8&quot;&gt;&lt;/a&gt;\[\inf_{p\in(0,1],\varepsilon \in (0,cp]}\frac{p}{\varepsilon} \log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right) = \frac{1}{c} \log\big( 1+c\big).\tag{8}\] In other words, if \(\varepsilon \le cp\), then the subsampled Laplace mechanism \(\widetilde{M}_p\) adds at most \(\frac{c}{\log(1+c)}\) times as much noise as the standard Laplace mechanism \(M\). 
Here’s what this function looks like:&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;/images/subsampling-ratio-lim.png&quot; alt=&quot;Plot of c/log(1+c as a function of c&quot; width=&quot;768&quot; height=&quot;576&quot; /&gt;&lt;/p&gt;

&lt;p&gt;This bound on the ratio seems reasonable as long as \(c\) isn’t large. 
However, assuming \(\varepsilon \le cp\) is a pretty strong assumption!
This is the big limitation of privacy amplification by subsampling – &lt;em&gt;subsampling is free only when the privacy parameter is tiny&lt;/em&gt;.&lt;/p&gt;

&lt;h2 id=&quot;is-varepsilon-le-c-p--a-reasonable-parameter-regime&quot;&gt;Is \(\varepsilon \le c p \) a reasonable parameter regime?&lt;/h2&gt;
&lt;p&gt;It depends…&lt;/p&gt;

&lt;p&gt;Let’s think about the machine learning application that is the biggest motivation for studying privacy amplification by subsampling.&lt;/p&gt;

&lt;p&gt;In machine learning applications we want to answer many queries \(q_1,q_2,\cdots,q_k\). (These queries are actually high-dimensional gradients that we want to estimate, but that’s not important right now.)
Suppose we have some overall privacy budget \(\varepsilon_*\). Then this needs to be divided among the \(k\) queries. Using advanced composition, we get a per-query budget of \(\varepsilon = \Theta\left(\frac{\varepsilon_*}{\sqrt{k}}\right)\).&lt;sup id=&quot;fnref:advcomp&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:advcomp&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;The overall privacy budget \(\varepsilon_*\) is a constant. So as the number of queries \(k\) increases, the per-query privacy budget shrinks; \(\varepsilon = \Theta(1/\sqrt{k})\). That’s good for subsampling; we are in the small \(\varepsilon\) regime.&lt;/p&gt;

&lt;p&gt;Now we want \(\varepsilon \le cp\) for privacy amplification by subsampling, where \(c\) is a small constant. Thus we need \(p \ge \Omega(1/\sqrt{k})\) in the machine learning application. Is this reasonable?&lt;/p&gt;

&lt;p&gt;The quantity \(pk\) is the expected number of times each datapoint will be sampled over the \(k\) queries.
In machine learning parlance, \(pk\) is the number of training epochs and \(k\) is the number of steps.
Thus \(p \ge \Omega(1/\sqrt{k})\) implies that the number of epochs is \(pk \ge \Omega(\sqrt{k})\), which is a lot. It’s common to train with as little as one epoch.&lt;/p&gt;

&lt;p&gt;The expected size of each subsample (a.k.a. the batch size) is \(p|x|\), where \(|x|\) is the overall dataset size. We typically want the batch size to be a moderate constant – e.g., &lt;a href=&quot;https://xcancel.com/ylecun/status/989610208497360896&quot;&gt;32&lt;/a&gt;.&lt;sup id=&quot;fnref:parallel&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:parallel&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt; So we want \(p \le O(1/|x|)\), but privacy amplification by subsampling would need us to set \(\varepsilon \le cp \le O(1/|x|)\). As before, with \(\varepsilon = \Theta(1/\sqrt{k})\), this would correspond to \(k \ge \Omega(|x|^2)\) steps and \(kp \ge \Omega(|x|)\) epochs. The number of steps being quadratic in the dataset size and the number of epochs being linear in the datset size is &lt;em&gt;a lot&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;The takeaway from this back-of-the-envelope calculation is that \(\varepsilon \le cp\) is well outside the typical parameter regime for machine learning applications.
We have to set the hyperparameters differently for private machine learning.&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;To summarize, in &lt;a href=&quot;/subsampling&quot;&gt;our previous post&lt;/a&gt; the story was that privacy amplification by subsampling can be used to make differentially private algorithms faster and this comes at essentially no cost in privacy and accuracy. But, in this post, we observe that this is free only if the privacy parameter \(\varepsilon\) is tiny. Specifically, the privacy parameter needs to be on the order of the subsampling probability – i.e., \(\varepsilon\le O(p)\) – for the claim to hold up to constant factors.&lt;/p&gt;

&lt;p&gt;In these posts, we’ve looked at univariate queries with Laplace noise. 
In the machine learning application, we would instead have high-dimensional queries (i.e., model gradients) with Gaussian noise.
This adds a fair bit of complexity, but the moral of the story remains the same.&lt;sup id=&quot;fnref:complex&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:complex&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Practitioners of differentially private machine learning have observed that larger batch sizes yield better results. The purpose of this post is to make this folklore knowledge more widely accessible.&lt;/p&gt;

&lt;p&gt;To be clear, the limits of privacy amplification by subsampling are a very real problem in practice. 
Increasing the batch size mitigates the problem, but often comes at a high computational cost.&lt;sup id=&quot;fnref:parallel:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:parallel&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;
Thus, in recent years, there has been a lot of research that seeks to &lt;em&gt;avoid&lt;/em&gt; the limits of privacy amplification by subsampling.&lt;sup id=&quot;fnref:dpftrl&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:dpftrl&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;6&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:taylor&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Looking at the second- and third-order terms in the Taylor series in &lt;a href=&quot;#eq5&quot;&gt;Equation 5&lt;/a&gt;, we can already see that this approximation may be problematic when the subsampling probability \(p\) is small, since these terms include factors of \(1/p^2\) and \(1/p^3\) respectively. &lt;a href=&quot;#fnref:taylor&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:ineq&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;To prove the inequalities in &lt;a href=&quot;#eq6&quot;&gt;Equation 6&lt;/a&gt;: Since \(\log\) is concave, Jensen’s inequality gives \(\log(1-p+pe^{\varepsilon/p}) \ge (1-p)\log(1) + p \log(e^{\varepsilon/p}) = \varepsilon\); rearranging yields the upper bound \(\varepsilon/p \ge \log(1+(e^\varepsilon-1)/p)\). On the other hand \(\varepsilon \le e^\varepsilon-1\), which yields the first inequality on the lower bound side. Finally, we have \(\log(1+x) = \int_0^x \frac{1}{1+t} \mathrm{d}t \ge \int_0^x \frac{1}{(1+t)^2} \mathrm{d}t = \frac{x}{1+x}\) for all \(x\ge0\); substituting \(x=\varepsilon/p\) yields the second inequality on the lower bound side. &lt;a href=&quot;#fnref:ineq&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:advcomp&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;We’re being a bit imprecise here. We can’t apply advanced composition with pure \((\varepsilon,0)\)-differential privacy. So the overall privacy budget \(\varepsilon_*\) needs to be quantified in terms of approximate \((\varepsilon_*,\delta_*)\)-differential privacy, concentrated differential privacy, or something like that. To make things formal we could set the overall privacy budget constraint as \(\frac{1}{2}\varepsilon_*^2\)-&lt;a href=&quot;https://arxiv.org/abs/1605.02065&quot;&gt;zCDP&lt;/a&gt;, which gives a per-query budget of pure \((\varepsilon=\frac{\varepsilon_*}{\sqrt{k}},0)\)-differential privacy. &lt;a href=&quot;#fnref:advcomp&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:parallel&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The ideal batch size (in non-private machine learning) is determined by many factors – ultimately, you try a few settings and use whatever works best. Some very rough intuition: A major factor in determining the right batch size is hardware parallelism/pipelining (and memory constraints). Absent parallelism, smaller batch size is typically better – right down to batch size 1; generally, you make faster progress by updating the model parameters after each gradient computation. However, batch size 1 doesn’t exploit the fact that the computer hardware can usually compute multiple gradients at the same time. Larger batch sizes allow you to get more work out of the hardware in the same amount of time. But once you saturate the hardware, there’s little benefit (non-privately) to larger batch sizes. &lt;a href=&quot;#fnref:parallel&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:parallel:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:complex&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The main added complexity of working with Gaussian noise and high-dimensional queries comes from the fact that we can’t use pure \((\varepsilon,0)\)-differential privacy for the analysis. And, if we use approximate \((\varepsilon,\delta)\)-differential privacy for the analysis, we incur superfluous \(\sqrt{\log(1/\delta)}\) factors. To get a sharper analysis we need to work with Rényi differential privacy or numerically compute the privacy loss distribution. There is a lot of very interesting work on this topic, but the high-level conclusion remains the same. &lt;a href=&quot;#fnref:complex&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:dpftrl&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;For example, &lt;a href=&quot;https://arxiv.org/abs/2103.00039&quot;&gt;DP-FTRL&lt;/a&gt; adds negatively correlated noise instead of independent noise to the queries/gradients. Since DP-FTRL doesn’t rely on privacy amplification by subsampling, the noise added to each query/gradient needs to be large. Instead DP-FTRL relies on the fact that, when you sum up the noisy values, the noise can be made to partially cancel out. In practice, DP-FTRL often works better than relying on privacy amplification by subsampling. Another example alternative is to avoid privacy amplification by subsampling by computing gradients on the full dataset and instead accelerating the computation using &lt;a href=&quot;https://arxiv.org/abs/2305.13209&quot;&gt;second-order methods&lt;/a&gt; so that we require fewer iterations. &lt;a href=&quot;#fnref:dpftrl&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Mon, 21 Apr 2025 12:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/subsampling-limits/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/subsampling-limits/</guid>
      </item>
    
      <item>
        <title>Privacy Amplification by Subsampling</title>
        <description>&lt;p&gt;Privacy Amplification by Subsampling is an important property of differential privacy. 
It is key to making many algorithms efficient – particularly in machine learning applications.
Thus a lot of work has gone into analyzing this phenomenon.
In this post we will give a quick introduction to privacy amplification by subsampling and its applications. 
In a &lt;a href=&quot;/subsampling-limits&quot;&gt;follow-up post&lt;/a&gt;, we’re going to look at the limitations of privacy amplification by subsampling – i.e., when it doesn’t quite live up to the promises.&lt;/p&gt;

&lt;h2 id=&quot;what-is-privacy-amplification-by-subsampling&quot;&gt;What is Privacy Amplification by Subsampling?&lt;/h2&gt;

&lt;p&gt;The premise of privacy amplification by subsampling is that we start with a (large) dataset \(x\) and we pick a (small) random subset \(S(x) \subseteq x\) and run a DP algorithm \(M\) on that subset.&lt;sup id=&quot;fnref:notation&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:notation&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;
The question is: &lt;em&gt;What are the privacy properties of the combined algorithm \(M \circ S\)?&lt;/em&gt;
The answer depends on both the privacy properties of base algorithm \(M\) and the subsampling procedure \(S\).&lt;/p&gt;

&lt;p&gt;Intuitively, there are two reasons why the combined algorithm \(M \circ S\) should have better privacy properties than the base algorithm \(M\):
First, there is some probability \(p\) that your data \(x_i\) is included in the subsample – i.e. \(p = \mathbb{P}[x_i\in S(x)]\).&lt;sup id=&quot;fnref:up&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:up&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; But, with probability \(1-p\), your data is &lt;em&gt;not&lt;/em&gt; included. And, when your data is not included, you have perfect privacy.
Second, the privacy adversary does not know whether or not your data is included in the subsample. This ambiguity enhances your privacy even in the case where your data is included.&lt;sup id=&quot;fnref:amb&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:amb&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;There are different possible subsampling procedures \(S\).
A natural subsampling scheme is for the subsample \(S(x)\) to be a fixed-size subset of the dataset \(x\) that is otherwise uniformly random.
However, it turns out to work better if each person’s data is included &lt;em&gt;independently&lt;/em&gt;. This subsampling procedure is known as Poisson subsampling.&lt;sup id=&quot;fnref:poisson&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:poisson&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt; We denote Poisson subsampling by \(S_p\), where \(p\in[0,1]\) is the probability of inclusion. 
In this case, the size of the subsample is not fixed. Assuming each person’s data is included with the same probability \(p\), the size is binomially distributed: &lt;a id=&quot;eq1&quot;&gt;&lt;/a&gt;\[|S_p(x)| \sim \mathsf{Binomial}(|x|,p).\tag{1}\]
It also turns out to be easier to analyze differential privacy with respect to addition or removal of one person’s data, rather than with respect to replacement.&lt;/p&gt;

&lt;p&gt;There are &lt;em&gt;many&lt;/em&gt; privacy ampliffication by subsampling results in the literature. The gist of them is pretty much the same; the differences are about the specific assumptions they make and how tight they are. Next we’ll state and prove a very simple version.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 1 (Privacy Amplification by Subsampling for Poisson-Subsampled Approximate DP).&lt;/strong&gt; &lt;a id=&quot;thm1&quot;&gt;&lt;/a&gt;
Let \(S_p : \mathcal{X}^* \to \mathcal{X}^*\) be the Poisson subsampling operation with probability \(p\).&lt;sup id=&quot;fnref:notation:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:notation&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; That is, for all inputs \(x\), we have \(S_p(x) \subseteq x\) where each \(x_i \in x\) is included in \(S_p(x)\) independently with probability \(p\).
Let \(M : \mathcal{X}^* \to \mathcal{Y}\) satisfy \((\varepsilon,\delta)\)-differential privacy with respect to addition or removal of one person’s data.
Let \(M \circ S_p : \mathcal{X}^* \to \mathcal{Y}\) denote the combined algorithm that first subsamples and then runs \(M\) – i.e., \(M \circ S_p (x) = M(S_p(x))\) for all \(x\).
Then \(M \circ S_p\) satisfies \((\varepsilon’,\delta’)\)-differential privacy with respect to addition or removal of one person’s data for &lt;a id=&quot;eq2&quot;&gt;&lt;/a&gt;\[\varepsilon’ = \log\big(1+p(\exp(\varepsilon)-1)\big) ~~~~ \text{ and } ~~~~ \delta’ = p \delta. \tag{2}\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;
Let \(x \in \mathcal{X}^*\) and \(x_i \in x \) be arbitrary. Let \(x’=x\setminus\{x_i\}\) be \(x\) with \(x_i\) removed. Let \(T \subseteq \mathcal{Y}\) be arbitrary.
We have &lt;br /&gt;
\(\mathbb{P}[M(S_p(x)) \in T ] = (1-p) \mathbb{P}[M(S_p(x)) \in T \mid x_i \notin S_p(x)] + p \mathbb{P}[M(S_p(x)) \in T \mid x_i \in S_p(x)] \)
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ = (1-p) \mathbb{P}[M(S_p(x’)) \in T] + p \mathbb{P}[M(S_p(x’)\cup{x_i}) \in T]\)&lt;br /&gt;
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \le (1-p) \mathbb{P}[M(S_p(x’)) \in T] + p (e^\varepsilon \mathbb{P}[M(S_p(x’)) \in T] + \delta ) \)&lt;br /&gt;
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ = (1-p + p e^\varepsilon ) \mathbb{P}[M(S_p(x’)) \in T] + p \delta. \) &lt;br /&gt;
Here we are using the fact that \(S_p(x)\) conditioned on \(x_i \notin S_p(x)\) is just \(S_p(x’)\) and the fact that \(S_p(x)\) conditioned on \(x_i \in S_p(x)\) is just \(S_p(x’)\cup{x_i}\). (This relies on the independence of Poisson sampling.)
This establishes half of the result. The other direction is similar:&lt;br /&gt;
\(\mathbb{P}[M(S_p(x)) \in T ] = (1-p) \mathbb{P}[M(S_p(x)) \in T \mid x_i \notin S_p(x)] + p \mathbb{P}[M(S_p(x)) \in T \mid x_i \in S_p(x)] \)
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ = (1-p) \mathbb{P}[M(S_p(x’)) \in T] + p \mathbb{P}[M(S_p(x’)\cup{x_i}) \in T]\)&lt;br /&gt;
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \ge (1-p) \mathbb{P}[M(S_p(x’)) \in T] + p e^{-\varepsilon}( \mathbb{P}[M(S_p(x’)) \in T] - \delta ) \)&lt;br /&gt;
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ = (1-p+p e^{-\varepsilon}) \mathbb{P}[M(S_p(x’)) \in T] - p e^{-\varepsilon} \delta \)&lt;br /&gt;
This rearranges to&lt;br /&gt;
\( \mathbb{P}[M(S_p(x’)) \in T] \le \frac{\mathbb{P}[M(S_p(x)) \in T ]+p e^{-\varepsilon}\delta}{1-p+p e^{-\varepsilon}} \le (1-p+pe^\varepsilon)\mathbb{P}[M(S_p(x)) \in T ] + p\delta,\)&lt;br /&gt;
as required. (The inequalities \(\frac{1}{1-p+pe^{-\varepsilon}} \le 1-p+pe^\varepsilon\) and \(\frac{e^{-\varepsilon}}{1-p+pe^{-\varepsilon}} \le 1\) are left as exercises for the reader.)
∎&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;#thm1&quot;&gt;Theorem 1&lt;/a&gt; is exactly tight. That’s because the proof really only has one inequality. In particular, it is tight when the algorithm is randomized response applied to the bit indicating whether or not your data is included in the subsample.&lt;/p&gt;

&lt;h2 id=&quot;why-is-privacy-amplification-by-subsampling-useful&quot;&gt;Why is Privacy Amplification by Subsampling Useful?&lt;/h2&gt;

&lt;p&gt;Lets work out a simplified illustrative example for why privacy amplification by subsampling is useful.
Let’s assume we have a large dataset \(x\in\mathcal{X}^*\) and a query \(q:\mathcal{X}\to[0,1]\) and our goal is to privately estimate the average value of the query on the dataset \(\frac{1}{n}\sum_{x_i \in x} q(x_i)\).&lt;/p&gt;

&lt;p&gt;The obvious solution is the Laplace mechanism: &lt;a id=&quot;eq3&quot;&gt;&lt;/a&gt;\[M(x) := \frac{1}{n}\sum_{x_i \in x} q(x_i) + \mathsf{Laplace}\left(\frac{1}{\varepsilon n}\right).\tag{3}\]
This is \(\varepsilon\)-differentially private and has mean squared error &lt;a id=&quot;eq4&quot;&gt;&lt;/a&gt;\[\mathbb{E}\left[\left(M(x) - \frac{1}{n}\sum_{x_i \in x} q(x_i)\right)^2\right] = \frac{2}{\varepsilon^2 n^2}. \tag{4}\]
However, this takes time linear in the size of the dataset \(x\); that may be OK for one query, but, if we need to answer \(k\) queries \(q_1,q_2,\cdots,q_k\), this would take \(\Omega(k|x|)\) time.&lt;/p&gt;

&lt;p&gt;Suppose we can subsample from the dataset in sublinear time.&lt;sup id=&quot;fnref:supp&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:supp&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt; Ideally, suppose we can compute \(S_p(x)\) in \(O(p|x|)\) time (on average).
Then we can run the Laplace mechanism on the subsample: &lt;a id=&quot;eq5&quot;&gt;&lt;/a&gt;
\[\widetilde{M}_{p}(x) := \frac{1}{pn} \sum_{x_i \in S_p(x)} q(x_i) + \mathsf{Laplace}\left(\frac{1}{\varepsilon_p p n}\right) .\tag{5}\]
This is faster, but how does it compare in terms of privacy and accuracy?&lt;/p&gt;

&lt;p&gt;Before privacy amplification by subsampling, \(\widetilde{M}_p\) satisfies \(\varepsilon_p\)-differential privacy.
Applying &lt;a href=&quot;#thm1&quot;&gt;Theorem 1&lt;/a&gt; we conclude that it satisfies \(\varepsilon’\)-differential privacy with \(\varepsilon’ = \log(1+p(e^{\varepsilon_p}-1))\).
If we want to set \(\varepsilon_p\) to achieve \(\varepsilon’=\varepsilon\), we can invert this formula to get &lt;a id=&quot;eq6&quot;&gt;&lt;/a&gt;\[\varepsilon_p = \log\left(1 + \frac{1}{p} \big( e^{\varepsilon}-1 \big)\right) \approx \frac{\varepsilon}{p}. \tag{6} \]
The approximation comes from the first order Taylor series: \(\log(1+v) = v+O(v^2)\) and \(e^v-1 = v+O(v^2)\) for \(v\to0\).&lt;/p&gt;

&lt;p&gt;On the accuracy front, we have &lt;a id=&quot;eq7&quot;&gt;&lt;/a&gt;\[ \mathbb{E}\big[\widetilde{M}_p(x)\big] = \frac{1}{n}\sum_{x_i \in x} q(x_i) .\tag{7}\] That is, \(\widetilde{M}_p\) is unbiased.
In terms of variance, we have &lt;a id=&quot;eq8&quot;&gt;&lt;/a&gt;
\[ \mathbb{E}\left[\left(\widetilde{M}_p(x) - \frac{1}{n}\sum_{x_i \in x} q(x_i) \right)^2\right] = \frac{p(1-p)}{p^2 n^2} \sum_{x_i \in x} q(x_i)^2 + \frac{2}{\varepsilon_p^2 p^2 n^2}\]
\[~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \le \frac{|x|}{p n^2} + \frac{2}{\varepsilon_p^2 p^2 n^2}\]
\[~~~~~~~~~~~~~~~~~~~~~~~~~~ \approx \frac{1}{p n} + \frac{2}{\varepsilon^2 n^2}.\tag{8}\]
In the last step we substitute in the approximation from &lt;a href=&quot;#eq6&quot;&gt;Equation 6&lt;/a&gt;.&lt;sup id=&quot;fnref:nx&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:nx&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;6&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Now let’s compare the linear-time mechanism \(M\) with the subsampled mechanism \(\widetilde{M}_p\): 
We have the same privacy guarantee.
Comparing the accuracy guarantee in &lt;a href=&quot;#eq4&quot;&gt;Equation 4&lt;/a&gt; with that in &lt;a href=&quot;#eq8&quot;&gt;Equation 8&lt;/a&gt; we see two differences – the approximation (more on that shortly) and the extra \(\frac{1}{pn}\) term.
This extra term is a low order term when &lt;a id=&quot;eq9&quot;&gt;&lt;/a&gt;
 \[\frac{1}{pn} \le \frac{1}{\varepsilon^2 n^2} \iff p \ge \varepsilon^2 n \iff \varepsilon \le \sqrt{\frac{p}{n}}.\tag{9}\]
 In other words, when \(\varepsilon\) is sufficiently small, the statistical error \(\frac{1}{\sqrt{pn}}\) is dominated by the scale of the noise added for privacy \(\frac{1}{\varepsilon_p p n}\approx\frac{1}{\varepsilon n}\). 
 The statistical error is unrelated to privacy; it is something people are used to and we don’t need to worry about it too much.&lt;sup id=&quot;fnref:errdim&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:errdim&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;7&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;The upshot is that, for sufficiently small values of \(\varepsilon\), the error of the subsampled Laplace mechanism \(\widetilde{M}_p\) is approximately the same as the standard Laplace mechanism \(M\).
 Thus we get a faster algorithm with essentially no cost in privacy and accuracy.&lt;/p&gt;

&lt;p&gt;This is very useful in machine learning applications, where the query \(q\) computes a gradient.
However, gradients are usually higher-dimensional, rather than one-dimensional.
This adds some complexity, but doesn’t fundamentally alter the story; essentially we need to analyze Gaussian noise rather than Laplace noise.&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;To summarize, we showed that privacy amplification by subsampling can be used to make differentially private algorithms faster. 
This comes at essentially no cost in privacy and accuracy, which is why it’s a really valuable tool.&lt;/p&gt;

&lt;p&gt;In &lt;a href=&quot;/subsampling-limits&quot;&gt;the next post&lt;/a&gt;, we’re going to look a little deeper at when the story above breaks down. When do we need to pay in privacy or accuracy for privacy amplification by subsampling?&lt;/p&gt;

&lt;p&gt;If you want to dig deeper into privacy amplification by subsampling, see, e.g., &lt;a href=&quot;https://arxiv.org/abs/2210.00597&quot;&gt;this survey&lt;/a&gt; and the references therein.&lt;/p&gt;

&lt;hr /&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:notation&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;This post uses set notation \(x_i \in S(x) \subseteq x\) somewhat informally. Things become a bit imprecise if there are duplicates – i.e., \(x_i=x_j\) for \(i \ne j\), so we assume this issue doesn’t arise. To make things formal we could define the index set \(S\) of the subsample separate from the subsample \(S(x)\); then we would condition on \(i \in S\) instead of \(x_i \in S(x)\). We use \(\mathcal{X}^* = \bigcup_{n=0}^\infty \mathcal{X}^n\) to denote the set of all finite tuples/multisets with elements in \(\mathcal{X}\) &lt;a href=&quot;#fnref:notation&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:notation:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:up&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;For simplicity, we assume that the probability of inclusion \(\mathbb{P}[x_i\in S(x)]\) is the same for all individuals \(i\). In general, it can be different, in which case we would work with the largest probability \(p = \max_i \mathbb{P}[x_i\in S(x)]\). &lt;a href=&quot;#fnref:up&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:amb&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Under pure differential privacy, there is no privacy amplification by subsampling when the adversary knows whether or not your data was included in the subsample. (However, under approximate or Rényi differential privacy there is some amplification, but less than when the subsample remains secret.) &lt;a href=&quot;#fnref:amb&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:poisson&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Intuitively, the reason independent inclusion is better than having a fixed-size subsample is that, if the size of the subsample is known, then knowing whether other people’s data is included or excluded reveals information about whether your data is included or excluded. I have no idea why it’s called Poisson subsampling instead of Binomial subsampling. &lt;a href=&quot;#fnref:poisson&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:supp&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;This is a nontrivial supposition. Often different subsampling schemes are used in practice because they are easier to implement than Poisson subsampling. &lt;a href=&quot;#fnref:supp&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:nx&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Sweeping details under the rug: Since we’re defining differential privacy with respect to addition or removal of one person’s data, the size of the dataset \(|x|\) is itself private. Thus we only assume that \(n \approx |x|\). &lt;a href=&quot;#fnref:nx&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:errdim&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;For simplicity, we’re looking at one-dimensional estimation. In higher dimensions, there’s an additional reason why the statistical error term isn’t a big deal: The error due to privacy grows with the dimension, while the statistical error doesn’t. &lt;a href=&quot;#fnref:errdim&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Sun, 13 Apr 2025 7:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/subsampling/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/subsampling/</guid>
      </item>
    
      <item>
        <title>Differentially Private Algorithms that Never Fail</title>
        <description>&lt;p&gt;Most differentially private algorithms fail with some nonzero probability. For example, when adding Gaussian or Laplace noise, there is some chance that the noise deviates significantly from its mean. But, fortunately, large deviations are unlikely.
In this post we’re going to take a closer look at failure modes of DP algorithms and we’ll present some generic methods for reducing – or even eliminating – the failure probability.&lt;/p&gt;

&lt;p&gt;Let’s be precise about what we mean by failure probability:
Let’s assume we have a \((\varepsilon,\delta)\)-differentally private algorithm \(M : \mathcal{X}^n \to \mathcal{Y}\) and we have a loss function \(\ell : \mathcal{Y} \times \mathcal{X}^n \to \mathbb{R}\).&lt;sup id=&quot;fnref:loss&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:loss&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;
The (worst-case)&lt;sup id=&quot;fnref:fail&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:fail&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; &lt;em&gt;failure probability&lt;/em&gt; \(\beta\) of \(M\) is \[\beta := \max_{x\in\mathcal{X}^n} \mathbb{P}[\ell(M(x),x)&amp;gt;\alpha],\tag{1}\] where \(\alpha\) is some target value for the loss.&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;For example, if \(M(x)=q(x)+\mathsf{Laplace}(1/\varepsilon)\) is the Laplace mechanism and \(\ell(y,x)=|y-q(x)|\) is the absolute error, then the failure probability is the tail probability \(\beta = \exp(-\varepsilon\alpha)\).
If we want to eliminate the failure probability, we could use &lt;em&gt;truncated&lt;/em&gt; Laplace noise instead of regular Laplace noise.&lt;sup id=&quot;fnref:tlap&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:tlap&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt; And – spoiler alert – that’s the kind of method we’re going to look at.&lt;/p&gt;

&lt;p&gt;To be clear, in this post we’re talking about failures of &lt;em&gt;utility&lt;/em&gt;, which are different from failures of &lt;em&gt;privacy&lt;/em&gt;.
In &lt;a href=&quot;/flavoursofdelta/&quot;&gt;a previous post&lt;/a&gt;, we talked about privacy failures; roughly, the \(\delta\) in \((\varepsilon,\delta)\)-DP captures the probability of a privacy failure. Privacy failures are a lot harder to fix than utility failures (which is kinda the point of this post).&lt;/p&gt;

&lt;p&gt;Here’s our problem: We’re given a DP algorithm \(M\) with failure probability \(\beta\), and we want to modify the algorithm to get a new DP algorithm \(\widetilde{M}\) with failure probability \(\widetilde{\beta}&amp;lt;\beta\). Ideally, we want \(\widetilde{\beta}=0\).&lt;/p&gt;

&lt;h2 id=&quot;warmup-absorbing-the-failure-probability-into-delta&quot;&gt;Warmup: Absorbing the failure probability into \(\delta\)&lt;/h2&gt;

&lt;p&gt;Let’s start with a simple trick to get zero failure probability. This trick should hopefully give you some intuition for why it’s even possible to have zero failure probability under DP.&lt;/p&gt;

&lt;p&gt;Suppose that, in addition to the \((\varepsilon,\delta)\)-DP algorithm \(M\) with failure probability \(\beta=\max_x\mathbb{P}[\ell(M(x),x)&amp;gt;\alpha]\), we have a non-private algorithm \(\check{M} : \mathcal{X}^n \to \mathcal{Y}\) that &lt;em&gt;never&lt;/em&gt; fails – i.e., \(\max_x \mathbb{P}[\ell(\check{M}(x),x)&amp;gt;\alpha]=0\).&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Now let’s define \(\widetilde{M}(x)\) as follows. First, compute \(y=M(x)\). If \(\ell(y,x)\le\alpha\), return \(y\). If \(\ell(y,x)&amp;gt;\alpha\), compute \(\check{y}=\check{M}(x)\) and return \(\check{y}\).&lt;sup id=&quot;fnref:loss:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:loss&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Clearly \(\widetilde{M}\) now has zero failure probability. What about privacy?&lt;/p&gt;

&lt;p&gt;Fix arbitrary neighbouring \(x,x’\in\mathcal{X}^n\) and a measurable \(S\subset\mathcal{Y}\).
Define \(S^* := \{ y \in S : \ell(y,x)\le\alpha \}\). 
Now we have
\[ ~~~~~~~~~~~~~~~~~~~~~\mathbb{P}[\widetilde{M}(x)\in S] = \mathbb{P}[M(x)\in S^*] + \mathbb{P}[\ell(M(x),x)&amp;gt;\alpha] \cdot \mathbb{P}[\check{M}(x)\in S]\]
\[ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\le e^\varepsilon \mathbb{P}[M(x’)\in S^*] + \delta + \mathbb{P}[\ell(M(x),x)&amp;gt;\alpha] \cdot 1 \]
\[ \le e^\varepsilon \mathbb{P}[\widetilde{M}(x’)\in S] + \delta + \beta. \tag{2} \]
Thus \(\widetilde{M}\) is \((\varepsilon,\delta+\beta)\)-DP.
In other words, we’ve absorbed the utility failure probability \(\beta\) into the privacy failure probability \(\delta\).&lt;sup id=&quot;fnref:fail:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:fail&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;This trick is neat since it lets us eliminate one of the parameters (\(\beta\)), but, in practice, you might not want to do this. We’re swapping a utility failure for a privacy failure and that often isn’t a great trade.&lt;/p&gt;

&lt;p&gt;This trick only works if you already have a small failure probability \(\beta\).&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;6&lt;/a&gt;&lt;/sup&gt; What if we start with a large failure probability, say, \(\beta=0.1\) or even \(\beta=0.9\)?
We can amplifiy the probability of a getting a successful result by running the algorithm multiple times. Naïvely, the privacy cost increases according to composition; plus we need to select one of the runs to output, which requires looking at the input. This is roughly what we will do next, but we will avoid composition (sort of).&lt;/p&gt;

&lt;h2 id=&quot;avoiding-silent-failures&quot;&gt;Avoiding silent failures&lt;/h2&gt;

&lt;p&gt;Above, we non-privately checked the failure condition \(\ell(\check{M}(x),x)&amp;gt;\alpha\).
Intuitively, using a non-private test &lt;em&gt;must&lt;/em&gt; cost us a lot in terms of privacy.
Thus, to do better, we have to rely on a private test of the failure condition.&lt;/p&gt;

&lt;p&gt;We can’t do much with an arbitrary loss function, so we need to make some assumptions.
First, we will assume the loss has sensitivity \(\le1\).
Second, we will assume that there is some wiggle room in the loss threshold \(\alpha\). Specifically, while the original algorithm \(M\) guarantees loss \(\le\alpha\) with probability \(\ge1-\beta\), our modified algorithm will guarantee loss \(\le\widetilde{\alpha}:=\alpha+2\tau\), where \(\tau=O(\log(1/\delta)/\varepsilon)\).&lt;/p&gt;

&lt;p&gt;Are these assumptions reasonable? 
First, if the loss is high-sensitivity, then we can apply tricks like &lt;a href=&quot;/inverse-sensitivity/&quot;&gt;inverse sensitivity&lt;/a&gt; to get a low-sensitivity loss. 
Second, we can contrast with the exponential mechanism, which guarantees loss \(\le\mathsf{OPT}+O(\log|\mathcal{Y}|/\varepsilon)\).
Thus the wiggle room we’re asking for is comparable to (or better than) what we’d get from the exponential mechanism, assuming \(\delta\) isn’t super tiny – specifically, \(\log
(1/\delta) \le O(\log|\mathcal{Y}|)\).&lt;/p&gt;

&lt;p&gt;Now we can modify the algorithm \(M : \mathcal{X}^n \to \mathcal{Y}\) to also output an estimate of the loss using truncated Laplace noise. Call this new algorithm \(\overline{M} : \mathcal{X}^n \to \mathcal{Y} \times \mathbb{R}\). If \(M\) is \((\varepsilon,\delta)\)-DP, we can make \(\overline{M}\) satisfy \((\overline{\varepsilon}=2\varepsilon,\overline{\delta}=2\delta)\)-DP and guarantee that the error of the loss estimate is \(\le \tau = O(\log(1/\delta)/\varepsilon)\) with probability 1.&lt;sup id=&quot;fnref:4&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:4&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;7&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;The benefit of this modified DP algorithm \(\overline{M}\) is that it won’t fail silently.
If the loss is high, we will know about it.&lt;/p&gt;

&lt;h2 id=&quot;conditioning-on-success&quot;&gt;Conditioning on success&lt;/h2&gt;

&lt;p&gt;To recap, we have a \((\overline{\varepsilon}=2\varepsilon,\overline{\delta}=2\delta)\)-DP algorithm \(\overline{M} : \mathcal{X}^n \to \mathcal{Y} \times \mathbb{R}\) with the following properties. Let \(x \in \mathcal{X}^n\) be arbitrary. Then, for \( (Y,Z) \gets \overline{M}(x)\), we have
\[\mathbb{P}[\ell(Y,x) \le \alpha]\ge 1-\beta ~~~~~\text{ and }~~~~~ \mathbb{P}[|Z-\ell(Y,x)|\le \tau]=1,\tag{3}\] where \(\tau=O(\log(1/\delta)/\varepsilon)\).
It follows that \(\mathbb{P}[Z \le \alpha + \tau] \ge 1-\beta\) and that \(Z \le \alpha + \tau \implies \ell(Y,x) \le \alpha + 2\tau\) with probability 1.&lt;/p&gt;

&lt;p&gt;Now we define our final algorithm \(\widetilde{M} : \mathcal{X}^n \to \mathcal{Y}\):&lt;/p&gt;

&lt;blockquote&gt;
  &lt;ol&gt;
    &lt;li&gt;Function \(\widetilde{M}(x)\):&lt;/li&gt;
    &lt;li&gt;    Repeat as long as necessary:&lt;/li&gt;
    &lt;li&gt;    Compute     \((y,z) \gets \overline{M}(x)\).&lt;/li&gt;
    &lt;li&gt;        If \(z \le \alpha + \tau\), return \(y\) and halt. Otherwise continue.&lt;/li&gt;
  &lt;/ol&gt;
&lt;/blockquote&gt;

&lt;p&gt;In other words, the output of \(\widetilde{M}\) is the output of \(\overline{M}\) conditioned on the reported loss being \(\le \alpha + \tau\). In symbols, \(\mathbb{P}[\widetilde{M}(x)=y]=\mathbb{P}[Y=y\mid Z \le \alpha + \tau]\) for \( (Y,Z) \gets \overline{M}(x)\).
The number of times the loop in \(\widetilde{M}\) runs is geometrically distributed with mean \(\le\frac{1}{1-\beta}\).
Note that \(\widetilde{M}\) needs to know&lt;sup id=&quot;fnref:alpha&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:alpha&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;8&lt;/a&gt;&lt;/sup&gt; the utility threshold \(\alpha\) and, if for some reason this threshold is wrong, we could get an infinite loop!&lt;sup id=&quot;fnref:fail:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:fail&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;By construction, we have \(\mathbb{P}[\ell(\widetilde{M}(x),x) \le \alpha + 2\tau ] = 1\). That is, we have zero failure probability.
Now, what about privacy?&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 1.&lt;/strong&gt; &lt;a id=&quot;thm1&quot;&gt;&lt;/a&gt;
Let \(\widetilde{M} : \mathcal{X}^n \to \mathcal{Y}\) be defined as above.
Assume \(\overline{M} : \mathcal{X}^n \to \mathcal{Y} \times \mathbb{R}\) is \((\overline\varepsilon,\overline\delta)\)-differentially private and, for all inputs \(x\in\mathcal{X}^n\), if \((Y,Z)\gets\overline{M}(x)\), then \(\mathbb{P}[Z\le\alpha+\tau]\ge1-\beta&amp;gt;0\).&lt;sup id=&quot;fnref:fail:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:fail&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;
Then \(\widetilde{M}\) satisfies \((\widetilde{\varepsilon},\widetilde{\delta})\)-differential privacy for
\[\widetilde{\varepsilon}=2\overline{\varepsilon} - \log(1-\overline{\delta}/(1-\beta)) ~~~~\text{ and }~~~~ \widetilde{\delta}=\frac{\overline{\delta}}{1-\beta} .\tag{4}\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;
Let \(x,x’\in\mathcal{X}\) be neighbouring inputs. 
Let \((Y,Z) \gets \overline{M}(x)\) and \((Y’,Z’) \gets \overline{M}(x’)\).
The distribution of \(\widetilde{M}(x)\) is that of \(Y\) conditioned on \(Z \le \alpha + \tau\). Similarly, the distribution of \(\widetilde{M}(x’)\) is that of \(Y’\) conditioned on \(Z’ \le \alpha + \tau\).
Let \(S \subset \mathcal{Y}\) be arbitrary but measurable.
It suffices to show that \[\mathbb{P}[Y \in S \mid Z \le \alpha + \tau] \le e^{\widetilde{\varepsilon}} \mathbb{P}[Y’ \in S \mid Z’ \le \alpha + \tau] + \widetilde{\delta}.\]
We have &lt;br /&gt; 
\( \mathbb{P}[Y \in S \mid Z \le \alpha + \tau] \) &lt;br /&gt;  
\(= \frac{\mathbb{P}[Y \in S ~\&amp;amp;~ Z \le \alpha + \tau]}{\mathbb{P}[Z \le \alpha + \tau]}\) &lt;br /&gt;  
\( \le \frac{e^{\overline{\varepsilon}}\mathbb{P}[Y’ \in S ~\&amp;amp;~ Z’ \le \alpha + \tau] + \overline{\delta}}{\mathbb{P}[Z \le \alpha + \tau]}\) &lt;br /&gt;  
\( \le \frac{e^{\overline{\varepsilon}}\mathbb{P}[Y’ \in S ~\&amp;amp;~ Z’ \le \alpha + \tau]}{e^{-\overline{\varepsilon}}(\mathbb{P}[Z’ \le \alpha + \tau]-\overline{\delta})} + \frac{\overline{\delta}}{\mathbb{P}[Z \le \alpha + \tau]}\) &lt;br /&gt;  
\( = \frac{e^{2\overline{\varepsilon}}\mathbb{P}[Y’ \in S ~\&amp;amp;~ Z’ \le \alpha + \tau]}{\mathbb{P}[Z’ \le \alpha + \tau]}\frac{\mathbb{P}[Z’ \le \alpha + \tau]}{\mathbb{P}[Z’ \le \alpha + \tau]-\overline{\delta}} + \frac{\overline{\delta}}{\mathbb{P}[Z \le \alpha + \tau]}\) &lt;br /&gt;  
\( = e^{2\overline{\varepsilon}}\mathbb{P}[Y’ \in S \mid Z’ \le \alpha + \tau] \frac{1}{1-\overline{\delta}/\mathbb{P}[Z’ \le \alpha + \tau]} + \frac{\overline{\delta}}{\mathbb{P}[Z \le \alpha + \tau]} \) &lt;br /&gt;  
\( \le \frac{e^{2\overline{\varepsilon}}}{1-\overline{\delta}/(1-\beta)}\mathbb{P}[Y’ \in S \mid Z’ \le \alpha + \tau] + \frac{\overline{\delta}}{1-\beta} \) &lt;br /&gt;  
\( = e^{\widetilde{\varepsilon}} \mathbb{P}[Y’ \in S \mid Z’ \le \alpha + \tau] + \widetilde{\delta}.\)
∎&lt;/p&gt;

&lt;p&gt;As long as \(1-\beta \ge \Omega(1)\), &lt;a href=&quot;#thm1&quot;&gt;Theorem 1&lt;/a&gt; gives \(\widetilde{\varepsilon} = 2\overline{\varepsilon} + O(\overline{\delta}) = 4\varepsilon + O(\delta)\) and \(\widetilde{\delta}=O(\overline{\delta})=O(\delta)\).  Putting the pieces together, we have the following result.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 2&lt;/strong&gt; &lt;a id=&quot;thm2&quot;&gt;&lt;/a&gt;
Let \(\ell : \mathcal{Y} \times \mathcal{X}^n \to \mathbb{R}\) have sensitivity 1 in its second argument and let \(\alpha,\beta,\varepsilon,\delta\in\mathbb{R}\) with \(0\le\beta&amp;lt;1-2\delta&amp;lt;1\).
Let \(M : \mathcal{X}^n \to \mathcal{Y}\) satisfy \((\varepsilon,\delta)\)-DP and assume \(\mathbb{P}[\ell(M(x),x) \le \alpha ] \ge 1-\beta \) for all \(x \in \mathcal{X}^n\). &lt;br /&gt;
Then there exists \(\widetilde{M} : \mathcal{X}^n \to \mathcal{Y}\) that is \((4\varepsilon-\log\left(1-\frac{2\delta}{1-\beta}\right),\frac{2\delta}{1-\beta})\)-DP and \(\mathbb{P}[\ell(\widetilde{M}(x),x) \le \alpha + 2\tau ] = 1\) for all \(x\in\mathcal{X}^n\), where \(\tau=O(\log(1/\delta)/\varepsilon)\) is the truncation threshold for \((\varepsilon,\delta)\)-DP truncated Laplace noise.&lt;sup id=&quot;fnref:tlap:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:tlap&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Note that our utility failure probability \(\beta\) appears in the privacy parameters of &lt;a href=&quot;#thm2&quot;&gt;Theorem 2&lt;/a&gt;.&lt;sup id=&quot;fnref:fail:4&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:fail&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; This is a bit unintuitive, but we saw how it can happen earlier with the trick of absorbing the utility failure as a privacy failure. The dependence here is milder than before; e.g., we can start with a high utility failure probability, e.g. \(\beta=0.5\), and still get a low final privacy failure probability \(\widetilde{\delta}\le10^{-6}\).&lt;/p&gt;

&lt;p&gt;Overall we pay a constant factor in the privacy parameters and suffer an additive increase in the loss in order to eliminate the failure probability.
And (unlike the earlier trick) this is true even if the initial failure probability was quite large.&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;We’ve presented two methods for eliminating the failure probability from DP algorithms.
The first method simply moves the failure from utility to privacy; this has obvious downsides.
The second method avoids these downsides and is applicable even when the initial failure probability is large, but it blows up the privacy parameters by a multiplicative factor and requires some wiggle room in the loss. The second method is based on a result by Gupta, Ligett, McSherry, Roth, &amp;amp; Talwar [&lt;a href=&quot;https://arxiv.org/abs/0903.4510&quot; title=&quot;Anupam Gupta, Katrina Ligett, Frank McSherry, Aaron Roth, Kunal Talwar. Differentially Private Combinatorial Optimization. SOD 2010.&quot;&gt;GLMRT10&lt;/a&gt; Theorem 10.2].&lt;/p&gt;

&lt;p&gt;In both cases, we crucially exploit the nonzero \(\delta\) in approximate \((\varepsilon,\delta)\)-DP. And one of the high-level take-home messages of this post is simply that \(\delta\) can absorb utility failures, in addition to privacy failures.&lt;/p&gt;

&lt;p&gt;For simplicity, this post has focused on fully eliminating the failure probability.
What if, instead, we just want to reduce it? 
Is \(\delta\) still crucial? No!
The second method we presented works even with \(\widetilde{\delta}=0\) or with Rényi DP; but we cannot entirely eliminate the failure probability.
The math gets messier, but the high-level idea is pretty simple: Instead of using truncated Laplace noise, we use regular Laplace noise (to avoid nonzero \(\delta\)).
This means there’s a chance that \(\overline{M}\) falsely reports low loss, which means there’s a chance of failure. But, as long as the chance of falsely reporting a low loss is much smaller than the chance of correctly reporting a low loss, the overall failure probability is low.&lt;/p&gt;

&lt;p&gt;If you want to learn more about extensions of the second method, read the papers of Liu &amp;amp; Talwar [&lt;a href=&quot;https://arxiv.org/abs/1811.07971&quot; title=&quot;Jingcheng Liu, Kunal Talwar. Private Selection from Private Candidates. STOC 2019.&quot;&gt;LT19&lt;/a&gt;], Papernot &amp;amp; Steinke [&lt;a href=&quot;https://arxiv.org/abs/2110.03620&quot; title=&quot;Nicolas Paperno, Thomas Steinke. Hyperparameter Tuning with Renyi Differential Privacy. ICLR 2022.&quot;&gt;PS22&lt;/a&gt;], and Cohen, Lyu, Nelson, Sarlós, &amp;amp; Stemmer [&lt;a href=&quot;https://arxiv.org/abs/2211.12063&quot; title=&quot;Edith Cohen, Xin Lyu, Jelani Nelson, Tam&amp;aacute;s Sarl&amp;oacute;s, Uri Stemmer. Generalized Private Selection and Testing with High Confidence. ITCS 2023.&quot;&gt;CLNSS23&lt;/a&gt;].
These methods are particularly useful in settings where the initial success probability is low, e.g. \(1-\beta=0.01\), such as when there is some element of random guessing involved.&lt;/p&gt;

&lt;p&gt;The other key take-home message of this post is that the failure probability shouldn’t be a first-order concern, at least from a theoretical perspective. 
In particular, if we obtain bounds on the expected error, then we can obtain high-probability bounds via this method.&lt;sup id=&quot;fnref:markov&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:markov&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;9&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;In many cases the reductions we presented are not practical; it’s usually easier to directly modify the algorithm to reduce the failure probability.
However, the fact that these generic methods exist offers an explanation for why, in practice, failure probabilities are relatively easy to manage.&lt;/p&gt;

&lt;hr /&gt;
&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:loss&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Note that we’re implicitly assuming that the loss \(\ell\) is known – i.e., it is something we can compute when designing algorithms. In particular, the loss must be an empirical loss, rather than a population loss. &lt;a href=&quot;#fnref:loss&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:loss:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:fail&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;It’s important that we have a provable worst-case failure probability bound for the original algorithm \(M\), since we want a provable privacy guarantee. In particular, if we only have a heuristic that works for most inputs \(x\), but fails badly on other inputs, then we cannot get a provable DP guarantee using these methods. It is possible that heuristics can be modified to fail gracefully and thus these methods can be salvaged, but that’s beyond the scope of this post. &lt;a href=&quot;#fnref:fail&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:fail:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt; &lt;a href=&quot;#fnref:fail:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;3&lt;/sup&gt;&lt;/a&gt; &lt;a href=&quot;#fnref:fail:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;4&lt;/sup&gt;&lt;/a&gt; &lt;a href=&quot;#fnref:fail:4&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;5&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;For simplicity, in this post we will (mostly) talk about failure as a boolean event; i.e., there is a hard utility threshold at \(\alpha\). Of course, in most cases, there is not a hard threshold and it makes sense to talk about the tail probability \(\beta\) as a function of the threshold \(\alpha\), rather than a single value. Note that we look at the worst-case over inputs \(x\); that is, we aren’t in a statistical setting where inputs are random and we aren’t considering (non-private) statical errors. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:tlap&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;To achieve \((\varepsilon,\delta)\)-DP with \(0 &amp;lt; \delta \le \frac{1}{2}\), we can use Laplace noise truncted to magnitude \(\tau = \frac{1+\log(1/2\delta)}{\varepsilon} = O(\log(1/\delta)/\varepsilon)\). Truncated Laplace noise is folklore [&lt;a href=&quot;https://arxiv.org/abs/1607.08554&quot; title=&quot;Fang Liu. Statistical Properties of Sanitized Results from Differentially Private Laplace Mechanism with Univariate Bounding Constraints. 2016.&quot;&gt;L16&lt;/a&gt;]; Holohan et al. [&lt;a href=&quot;https://arxiv.org/abs/1808.10410&quot; title=&quot;Naoise Holohan, Spiros Antonatos, Stefano Braghin, Pól Mac Aonghusa. The Bounded Laplace Mechanism in Differential Privacy. 2018.&quot;&gt;HABA18&lt;/a&gt;] give a sharp analysis. &lt;a href=&quot;#fnref:tlap&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:tlap:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Note that we can always just define \(\check{M}(x) = \mathsf{argmin}_y \ell(y,x)\) or we can re-run \(M\) until we achieve the desired loss. &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Recall, that the privacy failure probablity should be tiny – e.g., \(\delta \le 10^{-6}\) – for the privacy guarantee to be compelling. &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:4&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;For simplicity, we’re setting the privacy parameters of the truncated Laplace to be the same as for \(M\). In practice, this might be excessive and a different balance would work better. Also, some algorithms naturally output an estimate of their error and so this modification may not be necessary. &lt;a href=&quot;#fnref:4&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:alpha&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;If the utility threshold \(\alpha\) isn’t known (e.g., if it depends on the input \(x\)), then there are other methods than can be used [&lt;a href=&quot;https://arxiv.org/abs/1811.07971&quot; title=&quot;Jingcheng Liu, Kunal Talwar. Private Selection from Private Candidates. STOC 2019.&quot;&gt;LT19&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2110.03620&quot; title=&quot;Nicolas Paperno, Thomas Steinke. Hyperparameter Tuning with Renyi Differential Privacy. ICLR 2022.&quot;&gt;PS22&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2211.12063&quot; title=&quot;Edith Cohen, Xin Lyu, Jelani Nelson, Tam&amp;aacute;s Sarl&amp;oacute;s, Uri Stemmer. Generalized Private Selection and Testing with High Confidence. ITCS 2023.&quot;&gt;CLNSS23&lt;/a&gt;], but this is beyond the scope of this blog post. &lt;a href=&quot;#fnref:alpha&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:markov&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;To be precise, if we have \(\mathbb{E}[\ell(M(x),x)]\le \alpha_*\) and \(\ell(y,x)\ge0\), then Markov’s inequality gives \(\mathbb{P}[\ell(M(x),x)\le\alpha]\ge1-\frac{\alpha}{\alpha_*}\) for all \(\alpha\ge\alpha_*\). We can plug this bound into &lt;a href=&quot;#thm2&quot;&gt;Theorem 2&lt;/a&gt; to get a high-probability bound. &lt;a href=&quot;#fnref:markov&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Xin Lyu</name>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Sun, 09 Mar 2025 7:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/fail-prob/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/fail-prob/</guid>
      </item>
    
      <item>
        <title>Tight RDP &amp; zCDP Bounds from Pure DP</title>
        <description>&lt;p&gt;There are multiple ways to quantify differential privacy, including pure DP [&lt;a href=&quot;https://journalprivacyconfidentiality.org/index.php/jpc/article/view/405&quot; title=&quot;Cynthia Dwork, Frank McSherry, Kobbi Nissim, Adam Smith. Calibrating Noise to Sensitivity in Private Data Analysis. 2006.&quot;&gt;DMNS06&lt;/a&gt;], approximate DP [&lt;a href=&quot;https://link.springer.com/chapter/10.1007/11761679_29&quot; title=&quot;Cynthia Dwork, Krishnaram Kenthapadi, Frank McSherry, Ilya Mironov, Moni Naor. Our Data, Ourselves: Privacy Via Distributed Noise Generation. 2006.&quot;&gt;DKMMN06&lt;/a&gt;], Concentrated DP [&lt;a href=&quot;https://arxiv.org/abs/1603.01887&quot; title=&quot;Cynthia Dwork, Guy N. Rothblum. Concentrated Differential Privacy. 2016.&quot;&gt;DR16&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1605.02065&quot; title=&quot;Mark Bun, Thomas Steinke. Concentrated Differential Privacy: Simplifications, Extensions, and Lower Bounds. 2016.&quot;&gt;BS16&lt;/a&gt;], Rényi DP [&lt;a href=&quot;https://arxiv.org/abs/1702.07476&quot; title=&quot;Ilya Mironov. R&amp;eacute;nyi Differential Privacy. 2017.&quot;&gt;M17&lt;/a&gt;], Gaussian DP [&lt;a href=&quot;https://arxiv.org/abs/1905.02383&quot; title=&quot;Jinshuo Dong, Aaron Roth, Weijie J. Su. Gaussian Differential Privacy. 2019.&quot;&gt;DRS19&lt;/a&gt;], &amp;amp; function-DP [&lt;a href=&quot;https://arxiv.org/abs/1905.02383&quot; title=&quot;Jinshuo Dong, Aaron Roth, Weijie J. Su. Gaussian Differential Privacy. 2019.&quot;&gt;DRS19&lt;/a&gt;].
Fortunately, these definitions are similar enough that we can convert between most of them (with some loss in parameters).&lt;/p&gt;

&lt;p&gt;In this post, we consider converting from pure DP to Rényi DP and Concentrated DP. In particular, we will provide optimal results, which are an improvement on what is currently in the literature.
But first, let’s recap the relevant definitions.&lt;/p&gt;

&lt;h2 id=&quot;definitions-pure-dp-rényi-dp--zcdp&quot;&gt;Definitions: Pure DP, Rényi DP, &amp;amp; zCDP&lt;/h2&gt;

&lt;p&gt;For notational simplicity, we will assume the output space of the algorithms is discrete and that the algorithms’ output distributions have full support.&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Definition 1 (Pure DP):&lt;/strong&gt;
A randomized algorithm \(M : \mathcal{X}^n \to \mathcal{Y}\) satisfies \(\varepsilon\)-differential privacy if, for all pairs of inputs \(x, x’ \in \mathcal{X}^n\) differing only on the data of a single individual, we have \[\forall y \in \mathcal{Y} ~~~~~ \log\left(\frac{\mathbb{P}[M(x)=y]}{\mathbb{P}[M(x’)=y]}\right) \le \varepsilon.\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Pure DP is the simplest (and first) definition and is very convenient for analysis. 
Pure DP can also be called pointwise DP because the guarantee holds for all points \(y\), whereas all the other definitions either bound some quantity averaged over \(y\) or quantify over sets \(S \subseteq \mathcal{Y}\).&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Definition 2 (Rényi DP):&lt;/strong&gt;
A randomized algorithm \(M : \mathcal{X}^n \to \mathcal{Y}\) satisfies \((\alpha,\widehat\varepsilon)\)-Rényi differential privacy if, for all pairs of inputs \(x, x’ \in \mathcal{X}^n\) differing only on the data of a single individual, we have \[ \frac{1}{\alpha-1} \log \left( \underset{Y \gets M(x’)}{\mathbb{E}}\left[ \left( \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \right)^\alpha \right] \right) \le \widehat\varepsilon.\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Rényi DP is a more flexible definition than pure DP. But this flexibility comes at the cost of complexity.
The definition has two parameters, but we can usually trade off these parameters. Thus it is often better to think of it as being parameterized by a function \(\widehat\varepsilon(\alpha)\), which gives us a \((\alpha,\widehat\varepsilon(\alpha))\)-RDP bound for all \(\alpha&amp;gt;1\) simultaneously.
However, in many cases – such as the Gaussian mechanism – the function is linear, or can be bounded by a linear function.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Definition 3 (zero-Concentrated DP (zCDP)):&lt;/strong&gt;
A randomized algorithm \(M : \mathcal{X}^n \to \mathcal{Y}\) satisfies \(\rho\)-zCDP if, for all pairs of inputs \(x, x’ \in \mathcal{X}^n\) differing only on the data of a single individual, we have \[ \forall \alpha &amp;gt; 1 ~~~~~ \frac{1}{\alpha-1} \log \left( \underset{Y \gets M(x’)}{\mathbb{E}}\left[ \left( \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \right)^\alpha \right] \right) \le \alpha\rho.\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This definition is equivalent to satisfying \((\alpha,\rho\alpha)\)-RDP for all \(\alpha&amp;gt;1\); zCDP can be thought of as a single-parameter version of RDP, which gives us many of the benefits of RDP without the complexity.&lt;/p&gt;

&lt;h2 id=&quot;converting-pure-dp-to-rényi-dp&quot;&gt;Converting Pure DP to Rényi DP&lt;/h2&gt;

&lt;p&gt;It is immediate from the definitions that \(\varepsilon\)-DP implies \((\alpha,\varepsilon)\)-RDP for all \(\alpha&amp;gt;1\).&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;
This is just saying that the average value is at most the maximum value.
We can do better than this:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 4 (Pure DP to Rényi DP):&lt;/strong&gt;
Let \(M : \mathcal{X}^n \to \mathcal{Y}\) be a randomized algorithm satisfying \(\varepsilon\)-differential privacy.
Then \(M\) satisfies \((\alpha,\widehat\varepsilon(\alpha))\)-Rényi DP for all \(\alpha&amp;gt;1\), where
\[ \widehat\varepsilon(\alpha) = \frac{1}{\alpha-1} \log \left( \frac{1}{e^\varepsilon+1} e^{\alpha \varepsilon} +  \frac{e^\varepsilon}{e^\varepsilon+1} e^{-\alpha \varepsilon} \right) \]\[ = \varepsilon - \frac{1}{\alpha-1} \log \left( \frac{1+e^{-\varepsilon}}{1 + e^{-(2\alpha-1)\varepsilon}} \right). \]
Furthermore, this bound is tight.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;
Fix neighbouring inputs \(x, x’ \in \mathcal{X}^n\) and fix \(\alpha&amp;gt;1\).&lt;/p&gt;

&lt;p&gt;First note that this bound is tight when \(M\) corresponds to randomized response.
That is, if \(M(x) = \mathsf{Bernoulli}(\tfrac{e^\varepsilon}{e^\varepsilon+1})\) and \(M(x’) = \mathsf{Bernoulli}(\tfrac{1}{e^\varepsilon+1})\), then the expression in the theorem statement is simply the expression in the definition of Rényi DP. Since this is consistent with \(M\) satisfying \(\varepsilon\)-DP, this proves tightness of the result.
To prove the result it only remains to show that randomized response is indeed the worst case \(M\).&lt;/p&gt;

&lt;p&gt;We make two additional observations: 
(1) The definition of pure DP implies \( \frac{\mathbb{P}[M(x)=y]}{\mathbb{P}[M(x’)=y]} \le e^\varepsilon \) for all \(y \in \mathcal{Y}\).
But the definition of pure DP is symmetric in \(x\) and \(x’\), so we can swap them and obtain a two-sided bound: \[ \forall y \in \mathcal{Y} ~~~~~ e^{-\varepsilon} \le \frac{\mathbb{P}[M(x)=y]}{\mathbb{P}[M(x’)=y]} \le e^\varepsilon.\]
(2) Since \(\sum_y \mathbb{P}[M(x)=y] = 1\), we have \[ \underset{Y \gets M(x’)}{\mathbb{E}}\left[ \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \right] = \sum_y \mathbb{P}[M(x’)=y] \cdot \frac{\mathbb{P}[M(x)=y]}{\mathbb{P}[M(x’)=y]} = 1. \]&lt;/p&gt;

&lt;p&gt;Now we define a randomized rounding function \(A : [e^{-\varepsilon},e^\varepsilon] \to \{e^{-\varepsilon},e^\varepsilon\}\) by \(\mathbb{E}_A [A(z)] = z \).
That is, for all \( z \in [e^{-\varepsilon},e^\varepsilon] \), we have \[\underset{A}{\mathbb{P}}[A(z)=e^\varepsilon]=\frac{z-e^{-\varepsilon}}{e^\varepsilon-e^{-\varepsilon}} ~~~ \text{ and } ~~~ \underset{A}{\mathbb{P}}[A(z)=e^{-\varepsilon}]=\frac{e^\varepsilon-z}{e^\varepsilon-e^{-\varepsilon}}.\]
Since \( v \mapsto v^\alpha \) is convex, by Jensen’s inequality, for all \( z \in [e^{-\varepsilon},e^\varepsilon] \), we have \[z^\alpha = \mathbb{E}_A[A(z)]^\alpha \le \mathbb{E}_A[A(z)^\alpha] = \frac{z-e^{-\varepsilon}}{e^\varepsilon-e^{-\varepsilon}} \cdot e^{\varepsilon\alpha} + \frac{e^\varepsilon-z}{e^\varepsilon-e^{-\varepsilon}} e^{-\alpha\varepsilon}. \]
Applying this inequality to the quantity of interest with \(z = \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \), we get
\[ \underset{Y \gets M(x’)}{\mathbb{E}}\left[ \left( \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \right)^\alpha \right] \le \underset{Y \gets M(x’) }{\mathbb{E}}\left[ \frac{\frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]}-e^{-\varepsilon}}{e^\varepsilon-e^{-\varepsilon}} \cdot e^{\varepsilon\alpha} + \frac{e^\varepsilon-\frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]}}{e^\varepsilon-e^{-\varepsilon}} e^{-\alpha\varepsilon} \right] .\]
Observation 1 tells us that this is valid, since \(z \in [e^{-\varepsilon},e^\varepsilon]\). Observation 2 and linearity of expectations gives
\[ \underset{Y \gets M(x’) }{\mathbb{E}}\left[ \frac{\frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]}-e^{-\varepsilon}}{e^\varepsilon-e^{-\varepsilon}} \cdot e^{\varepsilon\alpha} + \frac{e^\varepsilon-\frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]}}{e^\varepsilon-e^{-\varepsilon}} e^{-\alpha\varepsilon} \right] = \frac{1-e^{-\varepsilon}}{e^\varepsilon-e^{-\varepsilon}} \cdot e^{\varepsilon\alpha} + \frac{e^\varepsilon-1}{e^\varepsilon-e^{-\varepsilon}} e^{-\alpha\varepsilon}.\] 
We have \(\frac{1-e^{-\varepsilon}}{e^\varepsilon-e^{-\varepsilon}} = \frac{e^\varepsilon-1}{e^{2\varepsilon}-1} = \frac{e^\varepsilon-1}{(e^\varepsilon-1)(e^\varepsilon+1)} = \frac{1}{e^\varepsilon+1}\) and, similarly,\(\frac{e^\varepsilon-1}{e^\varepsilon-e^{-\varepsilon}} = \frac{e^\varepsilon}{e^\varepsilon+1}\).
Combining the equalities and inequalities gives \[ e^{(\alpha-1)\widehat\varepsilon(\alpha)} = \underset{Y \gets M(x’)}{\mathbb{E}}\left[ \left( \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \right)^\alpha \right] \le \frac{1}{e^\varepsilon+1} e^{\alpha\varepsilon} + \frac{e^\varepsilon}{e^\varepsilon+1} e^{-\alpha\varepsilon},\] which establishes the result.
The equivalence of the two expressions in the theorem statement is a matter of algebraic manipulation; the second expression is more suitable for numerical computation.
∎&lt;/p&gt;

&lt;h2 id=&quot;converting-pure-dp-to-zcdp&quot;&gt;Converting Pure DP to zCDP&lt;/h2&gt;

&lt;p&gt;The RDP bound in Theorem 4 is tight, but a bit unwieldy. Now we look at zCDP bounds, which are looser but simpler.
The trivial bound gives that \(\varepsilon\)-DP implies \(\varepsilon\)-zCDP.
In &lt;a href=&quot;/exponential-mechanism-bounded-range&quot;&gt;a previous post&lt;/a&gt; we proved that \(\varepsilon\)-DP implies \(\frac12\varepsilon^2\)-zCDP.&lt;sup id=&quot;fnref:4&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:4&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;
Now we prove a tight bound:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 5 (Pure DP to zCDP):&lt;/strong&gt;
Let \(M : \mathcal{X}^n \to \mathcal{Y}\) be a randomized algorithm satisfying \(\varepsilon\)-differential privacy.
Then \(M\) satisfies \(\rho\)-zCDP for all \(\alpha&amp;gt;1\), where
\[ \rho = \frac{e^\varepsilon-1}{e^\varepsilon+1} \varepsilon \le \frac12 \varepsilon^2. \]
Furthermore, this bound is tight.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To prove this result, we use the following result, which is a tighter version of &lt;a href=&quot;https://en.wikipedia.org/wiki/Hoeffding%27s_lemma&quot;&gt;Hoeffding’s lemma&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Proposition 6 (Kearns-Saul inequality [&lt;a href=&quot;https://arxiv.org/abs/1301.7392&quot; title=&quot;Michael Kearns, Lawrence Saul. Large Deviation Methods for Approximate Probabilistic Inference. 2013.&quot;&gt;KS13&lt;/a&gt;,&lt;a href=&quot;https://doi.org/10.1214/ECP.v18-2359&quot; title=&quot;Daniel Berend, Aryeh Kontorovich. On the concentration of the missing mass. 2013.&quot;&gt;BK13&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1901.09188&quot; title=&quot;Julyan Arbel, Olivier Marchal, Hien D. Nguyen. On strict sub-Gaussianity, optimal proxy variance and symmetry for bounded random variables. 2019.&quot;&gt;AMN19&lt;/a&gt;]):&lt;/strong&gt;
For all \(p \in [0,1]\) and all \(t\in\mathbb{R}\), we have \[1-p + p \cdot e^t \le \exp\left(t \cdot p + t^2 \cdot \frac{1-2p}{4\log((1-p)/p)}\right).\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Proof of Theorem 5.&lt;/em&gt;
By Theorem 4, \(M\) satisfies \((\alpha,\widehat\varepsilon(\alpha))\)-Rényi DP for all \(\alpha&amp;gt;1\), where \[ e^{(\alpha-1)\widehat\varepsilon(\alpha)} = \frac{1}{e^\varepsilon+1} e^{\alpha \varepsilon} +  \frac{e^\varepsilon}{e^\varepsilon+1} e^{-\alpha \varepsilon} .\]
We need to show \(\widehat\varepsilon(\alpha) \le \rho\alpha\) for all \(\alpha&amp;gt;1\). Fix \(\alpha&amp;gt;1\).&lt;/p&gt;

&lt;p&gt;Let \(p = \tfrac{1}{e^\varepsilon+1}\). Then
\[ \frac{1}{e^\varepsilon+1} e^{\alpha \varepsilon} +  \frac{e^\varepsilon}{e^\varepsilon+1} e^{-\alpha \varepsilon} = e^{-\alpha\varepsilon} \cdot \left( 1-p + p e^{2\alpha\varepsilon} \right) .\]
By the Kearns-Saul inequality, \[  e^{-\alpha\varepsilon} \cdot \left( 1-p + p e^{2\alpha\varepsilon} \right) \le \exp\left((2p-1)\alpha\varepsilon + ( 2 \alpha \varepsilon)^2 \cdot \frac{1-2p}{4\log((1-p)/p)}\right) .\]
Since \(2p-1 = - \tfrac{e^\varepsilon-1}{e^\varepsilon + 1}\) and \( \frac{1-p}{p} = e^\varepsilon \), this simplifies to \[ \exp\left((2p-1)\alpha\varepsilon + ( 2 \alpha \varepsilon)^2 \cdot \frac{1-2p}{4\log((1-p)/p)}\right) = \exp\left( -\alpha\varepsilon\frac{e^\varepsilon-1}{e^\varepsilon+1} + 4 \alpha^2 \varepsilon^2 \frac{\frac{e^\varepsilon-1}{e^\varepsilon+1}}{4\varepsilon} \right)\]\[ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ = \exp\left( (\alpha-1) \alpha \varepsilon \frac{e^\varepsilon-1}{e^\varepsilon+1} \right). \]
Combining the inequalities yields \( \widehat\varepsilon(\alpha) \le \alpha \varepsilon \frac{e^\varepsilon-1}{e^\varepsilon+1} \), which gives the result.&lt;/p&gt;

&lt;p&gt;Tightness is witnessed by randomized response and by taking the limit \(\alpha \to 1\).
∎&lt;/p&gt;

&lt;h2 id=&quot;numerical-comparison&quot;&gt;Numerical Comparison&lt;/h2&gt;

&lt;p&gt;Let’s see what these improved bounds look like:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/images/pdp2zcdp-purerenyi.png&quot; width=&quot;700&quot; alt=&quot;Plot showing the bound from Theorem 4 compared to the trivial bound and the bound implied by Theorem 5 for epsilon=0.5,1,2.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;
This first plot compares the tight Rényi DP bound from Theorem 4 (solid line) with the trivial bound (\(\widehat\varepsilon(\alpha)\le\varepsilon\), dotted line) and the bound implied by zCDP (\(\widehat\varepsilon(\alpha)\le\alpha\rho\), dashed line) via Theorem 5. We consider \(\varepsilon=\frac12\) (&lt;font color=&quot;red&quot;&gt;red&lt;/font&gt; lines, bottom), \(\varepsilon=1\) (&lt;font color=&quot;green&quot;&gt;green&lt;/font&gt; lines, middle), and \(\varepsilon=2\) (&lt;font color=&quot;blue&quot;&gt;blue&lt;/font&gt; lines, top).&lt;/p&gt;

&lt;p&gt;We see that the trivial bound is tight as the Rényi order \(\alpha\) becomes large, while the zCDP bound is tight for small Rényi orders (i.e., \(\alpha\to1\)).
The smaller \(\varepsilon\) is, the later this transition occurs.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/images/pdp2zcdp-purezcdp.png&quot; width=&quot;700&quot; alt=&quot;Plot showing the bound from Theorem 5 compared to rho=epsilon^2/2 and rho=epsilon.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;This second plot compares the tight zCDP bound from Theorem 5 (solid &lt;font color=&quot;magenta&quot;&gt;magenta&lt;/font&gt; line) against the trivial bound (dotted &lt;font color=&quot;yellow&quot;&gt;yellow&lt;/font&gt; line) and the quadratic bound (dashed &lt;font color=&quot;cyan&quot;&gt;cyan&lt;/font&gt; line).&lt;/p&gt;

&lt;p&gt;We see that, for small values of \(\varepsilon\), the quadratic bound is tight, while for large values of \(\varepsilon\), the trivial bound is tight.&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;In this post, we have given improved bounds for converting from pure DP to Rényi DP and zCDP.
Numerically, these bounds are a modest improvement over the standard bounds.&lt;/p&gt;

&lt;p&gt;The bounds are tight when the algorithm corresponds to randomized response. 
However, in many cases we can prove better bounds for specific algorithms.
For example, in &lt;a href=&quot;/exponential-mechanism-bounded-range&quot;&gt;a previous post&lt;/a&gt;, we proved better zCDP bounds for the exponential mechanism.&lt;/p&gt;

&lt;p&gt;Another popular pure DP mechanism is Laplace noise addition. Mironov [&lt;a href=&quot;https://arxiv.org/abs/1702.07476&quot; title=&quot;Ilya Mironov. R&amp;eacute;nyi Differential Privacy. 2017.&quot;&gt;M17&lt;/a&gt;, Proposition 6] computed a tight Rényi DP bound specifically for the Laplace mechanism:
Adding Laplace noise with scale \(1/\varepsilon\) to a sensitivity-1 function guarantees \(\varepsilon\)-DP and also \((\alpha,\widehat\varepsilon_{\text{Lap}}(\alpha))\)-RDP for all \(\alpha&amp;gt;1\) and \[\widehat\varepsilon_{\text{Lap}}(\alpha) = \frac{1}{\alpha-1}\log\left( \frac{\alpha}{2\alpha-1} e^{(\alpha-1)\varepsilon} + \frac{\alpha-1}{2\alpha-1} e^{-\alpha\varepsilon} \right).\]&lt;/p&gt;

&lt;h3 id=&quot;acknowledgements&quot;&gt;Acknowledgements&lt;/h3&gt;

&lt;p&gt;Thanks to Damien Desfontaines for prompting this post.
To the best of my knowledge this improved conversion first appeared in &lt;a href=&quot;https://x.com/yuxiangw_cs/status/1565765508950999041&quot;&gt;a Tweet by Yu-Xiang Wang&lt;/a&gt;.&lt;/p&gt;

&lt;hr /&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;In general, we can replace \(\frac{\mathbb{P}[M(x)=y]}{\mathbb{P}[M(x’)=y]}\) with the Radon-Nikodym derivative of the probability distribution given by \(M(x)\) with respect to the probability distribution given by \(M(x’)\) evaluated at \(y\). If the output distributions do not have full support, we must handle division by zero; to do this we take \(\frac{0}{0} = 1\) and \(\frac{\eta}{0} = \infty\) for \(\eta&amp;gt;0\). &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;To be more precise, we have \[\underset{Y \gets M(x’)}{\mathbb{E}}\left[ \left( \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]} \right)^\alpha \right] \le \underset{Y \gets M(x’)}{\mathbb{E}}\left[ \frac{\mathbb{P}[M(x)=Y]}{\mathbb{P}[M(x’)=Y]}  \right] \cdot \max_y \left( \frac{\mathbb{P}[M(x)=y]}{\mathbb{P}[M(x’)=y]} \right)^{\alpha-1} \le 1 \cdot \left( e^\varepsilon \right)^{\alpha-1},\] which yields the trivial conversion. Here we use Observation 2 from the proof of Theorem 4. &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;This proof technique is due to Bun &amp;amp; Steinke [&lt;a href=&quot;https://arxiv.org/abs/1605.02065&quot; title=&quot;Mark Bun, Thomas Steinke. Concentrated Differential Privacy: Simplifications, Extensions, and Lower Bounds. 2016.&quot;&gt;BS16&lt;/a&gt;, Proposition 3.3]. &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:4&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Bun &amp;amp; Steinke [&lt;a href=&quot;https://arxiv.org/abs/1605.02065&quot; title=&quot;Mark Bun, Thomas Steinke. Concentrated Differential Privacy: Simplifications, Extensions, and Lower Bounds. 2016.&quot;&gt;BS16&lt;/a&gt;, Proposition 3.3] first established this bound, although with a more involved proof. Earlier papers [&lt;a href=&quot;https://guyrothblum.wordpress.com/wp-content/uploads/2014/11/drv10.pdf&quot; title=&quot;Cynthia Dwork, Guy N. Rothblum, Salil Vadhan. Boosting and Differential Privacy. 2010.&quot;&gt;DRV10&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1603.01887&quot; title=&quot;Cynthia Dwork, Guy N. Rothblum. Concentrated Differential Privacy. 2016.&quot;&gt;DR16&lt;/a&gt;] proved slightly weaker bounds. &lt;a href=&quot;#fnref:4&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Mon, 27 May 2024 10:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/pdp-to-zcdp/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/pdp-to-zcdp/</guid>
      </item>
    
      <item>
        <title>NeurIPS 2023 Outstanding Paper&amp;#58; Privacy auditing in just one run</title>
        <description>&lt;p&gt;NeurIPS 2023 just wrapped up, and one of the two &lt;a href=&quot;https://blog.neurips.cc/2023/12/11/announcing-the-neurips-2023-paper-awards/&quot;&gt;outstanding paper awards&lt;/a&gt; went to &lt;a href=&quot;https://arxiv.org/abs/2305.08846&quot;&gt;Privacy Auditing with One (1) Training Run&lt;/a&gt;, by &lt;a href=&quot;http://www.thomas-steinke.net/&quot;&gt;Thomas Steinke&lt;/a&gt;, &lt;a href=&quot;https://scholar.google.com/citations?user=k6-nvDAAAAAJ&quot;&gt;Milad Nasr&lt;/a&gt;, and &lt;a href=&quot;https://jagielski.github.io/&quot;&gt;Matthew Jagielski&lt;/a&gt;. 
The main result of this paper is a method for auditing the (differential) privacy guarantees of an algorithm, but much faster and more practically than previous methods. 
In this post, we’ll dive into what this all means.&lt;/p&gt;

&lt;p&gt;In case you’re new to this: by now, it has been well established that ML models can leak information about their training data.
This has recently been demonstrated in a spectacular fashion for &lt;a href=&quot;https://arxiv.org/abs/2012.07805&quot;&gt;large language models&lt;/a&gt; and &lt;a href=&quot;https://arxiv.org/abs/2301.13188&quot;&gt;diffusion models&lt;/a&gt;, showing that these models are prone to &lt;em&gt;regurgitating&lt;/em&gt; elements from their training dataset verbatim. 
Beyond these models, training data leakage can occur to a variety of degrees in &lt;a href=&quot;http://www.gautamkamath.com/CS860notes/lec1.pdf&quot;&gt;other statistical settings&lt;/a&gt;. 
This can of course be problematic if the training data contains sensitive personal information that we do not wish to disclose. 
It may may also be relevant to other adjacent considerations, including copyright infringement, which we don’t delve into here.&lt;/p&gt;

&lt;p&gt;While there have been a number of heuristic proposals for how to deal with such problems, only one method has stood the test of time: differential privacy (DP).
Roughly speaking, an algorithm (e.g., a model’s training procedure) is differentially private if its output has limited dependence (in some precise sense) on any single datapoint. 
This has many convenient implications: if a training procedure is differentially private, the resulting model is very unlikely to spit out training data, it is hard to predict whether a particular datapoint was in its training dataset, etc.
This strong notion of privacy has been adopted by a number of organizations, including &lt;a href=&quot;https://arxiv.org/abs/2305.18465&quot;&gt;Google&lt;/a&gt;, &lt;a href=&quot;https://arxiv.org/abs/1712.01524&quot;&gt;Microsoft&lt;/a&gt;, and the US Census Bureau in the &lt;a href=&quot;https://arxiv.org/abs/2204.08986&quot;&gt;2020 US Census&lt;/a&gt;.
Differential privacy is a quantitative guarantee, parameterized by a value \(\varepsilon \geq 0\): the smaller \(\varepsilon\) is, the stronger the privacy protection (albeit at the cost of utility).&lt;/p&gt;

&lt;p&gt;In order to say an algorithm is differentially private, we have to &lt;em&gt;prove&lt;/em&gt; it.
By analyzing the algorithm, we obtain an &lt;em&gt;upper bound&lt;/em&gt; on the value of \(\varepsilon\), i.e., a guarantee that the algorithm satsfies &lt;em&gt;at least&lt;/em&gt; some prescribed level of privacy. 
And we can be confident in this guarantee without running a single line of code!
A rich &lt;a href=&quot;https://arxiv.org/abs/1607.00133&quot;&gt;line&lt;/a&gt; &lt;a href=&quot;https://arxiv.org/abs/1908.10530&quot;&gt;of&lt;/a&gt; &lt;a href=&quot;https://arxiv.org/abs/2106.02848&quot;&gt;work&lt;/a&gt; studies a differentially private analogue of stochastic gradient descent (which includes per-example gradient clipping followed by Gaussian noise addition), providing tighter and tighter upper bounds on the value of \(\varepsilon\).&lt;/p&gt;

&lt;p&gt;Is there any way to empirically &lt;em&gt;audit&lt;/em&gt; the privacy of an algorithm?
Provided a purportedly private procedure, is there an algorithm we can run to &lt;em&gt;lower bound&lt;/em&gt; the value of \(\varepsilon\)? 
This would discover that the procedure enjoys privacy no better than some particular level. 
There’s many reasons one might want to audit an algorithm’s privacy guarantees:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;We can see if our privacy proof is tight: if we prove and audit matching values of \(\varepsilon\), then we know that neither can be improved.&lt;/li&gt;
  &lt;li&gt;We can see if our privacy proof is &lt;em&gt;wrong&lt;/em&gt;: if we audit a value of \(\varepsilon\) that is &lt;em&gt;greater&lt;/em&gt; than the value we prove, then we know there was a bug in our privacy proof.&lt;/li&gt;
  &lt;li&gt;If we’re unable to rigorously prove an algorithm is private, auditing gives some heuristic measure of how private the algorithm is (though this is not considered best practice in settings where privacy is paramount: auditing only lower bounds \(\varepsilon\), the true value may be much higher).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There is a &lt;a href=&quot;https://arxiv.org/abs/1902.08874&quot;&gt;long&lt;/a&gt; &lt;a href=&quot;https://arxiv.org/abs/2006.07709&quot;&gt;line&lt;/a&gt; &lt;a href=&quot;https://arxiv.org/abs/2101.04535&quot;&gt;of&lt;/a&gt; &lt;a href=&quot;https://arxiv.org/abs/2302.07956&quot;&gt;work&lt;/a&gt; on this question from the perspective of &lt;em&gt;membership inference attacks&lt;/em&gt;.
In a membership inference attack, we consider training a model on either a) some training dataset, or b) the same training dataset but with the inclusion of one extra datapoint (sometimes called a &lt;em&gt;canary&lt;/em&gt;).
If we can correctly guess whether the canary was or was not in the training set, then we say the membership inference attack was successful. 
However, recall that differential privacy limits the dependence on individual datapoints: if an algorithm is private, it means that membership inference attacks should not be very successful.
Conversely, if an attack &lt;em&gt;is&lt;/em&gt; very successful, then it say the algorithm is quantitatively &lt;em&gt;not&lt;/em&gt; so private.
In other words, such membership inference attacks serve as an auditing for the privacy of the algorithm.&lt;/p&gt;

&lt;p&gt;An important technical point is that differential privacy is a &lt;em&gt;probabilistic&lt;/em&gt; guarantee.
A single membership inference attack success or failure may happen by chance: in order to make conclusions about the privacy level of a procedure, we need to run the attack several times in order to estimate the &lt;em&gt;rate&lt;/em&gt; of success. 
Since for machine learning models, each attack corresponds to one training run, this can quickly result in prohibitive overheads. 
As one extreme example, &lt;a href=&quot;https://arxiv.org/abs/2202.12219&quot;&gt;one work&lt;/a&gt; trains 250,000 models to audit a proposed private training algorithm, revealing a bug in its privacy proof. 
While these are small models (CNNs trained on MNIST), and the authors admit their auditing was overkill (they &lt;em&gt;only&lt;/em&gt; needed to train 1,000 models), in modern settings, even a &lt;em&gt;single&lt;/em&gt; extra training run is prohibitively expensive, thus rendering such privacy auditing methods impractical.&lt;/p&gt;

&lt;p&gt;Here’s where the work of Steinke, Nasr, and Jagielski comes in: it performs privacy auditing with just one (1) training run.
This could even be the same as your actual training run, thus incurring minimal overhead with respect to the standard training pipeline. 
Their method does this by randomly inserting &lt;em&gt;multiple&lt;/em&gt; canaries into the dataset rather than just a single one, and privacy is audited by trying to guess which canaries were and were not trained on. 
If one can correctly guess the status of many canaries, this implies that the procedure is not very private. 
The analysis of this framework is the tricky part, and gets quite technical.
While textbook analysis of the addition/removal of multiple canaries would rely on a property of differential privacy known as “group privacy,” this turns out to be lossy.
Instead, the authors appeal to connections between differential privacy and generalization: they show that if you add multiple canaries i.i.d. for a single run, this behaves similarly to having multiple runs each with a single canary.&lt;/p&gt;

&lt;p&gt;In short, this work is a breakthrough in privacy auditing. 
It allows us to substantially reduce the computational overhead, from prohibitive to essentially negligible. 
Up to this point, privacy auditing has mostly been employed by those with a surplus of compute: I’m excited to see how this work will make it more accessible to the GPU-poor.
Congratulations to Thomas, Milad, and Matthew on their fantastic result!&lt;/p&gt;

</description>
        <author>
        
            <name>Gautam Kamath</name>
        
        </author>
        <pubDate>Tue, 02 Jan 2024 12:00:00 -0400</pubDate>
        <link>https://differentialprivacy.org/neurips23-op/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/neurips23-op/</guid>
      </item>
    
      <item>
        <title>Open problem(s) - How generic can composition results be?</title>
        <description>&lt;p&gt;The composition theorem is a cornerstone of differential privacy literature. 
In its most basic formulation, it states that if two mechanisms \(\mathcal{M}_1\) and \(\mathcal{M}_2\) are respectively \(\varepsilon_1\)-DP and \(\varepsilon_2\)-DP, then the mechanism \(\mathcal{M}\) defined by \(\mathcal{M}(D)=\left(\mathcal{M}_1(D),\mathcal{M}_2(D)\right)\) is \((\varepsilon_1+\varepsilon_2)\)-DP.
A large body of work focused on proving extensions of this composition theorem.
These extensions are of two kinds.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Some composition results apply to different &lt;em&gt;settings&lt;/em&gt; than fixed mechanisms.&lt;/li&gt;
  &lt;li&gt;Other extend known results to &lt;em&gt;variants&lt;/em&gt; of differential privacy.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this blog post, we review existing results, and outline natural open questions appearing on both fronts.
We stumbled upon these open questions while building general-purpose differential privacy infrastructure, and we believe that solving them could have a positive impact on the usability and privacy/accuracy trade-offs provided by such tools.&lt;/p&gt;

&lt;h3 id=&quot;different-settings-for-composition&quot;&gt;Different settings for composition&lt;/h3&gt;

&lt;p&gt;First, let’s discuss what it means to compose two DP mechanisms.&lt;/p&gt;

&lt;h4 id=&quot;sequential-composition&quot;&gt;Sequential composition&lt;/h4&gt;

&lt;p&gt;In the original composition result [&lt;a href=&quot;https://link.springer.com/chapter/10.1007/11681878_14&quot;&gt;DMNS06&lt;/a&gt;], all mechanisms \(\mathcal{M}_1\), \(\mathcal{M}_2\), etc., are fixed in advance, and have a predetermined privacy budget (resp. \(\varepsilon_1\), \(\varepsilon_2\), etc.).
They only take the sensitive data \(D\) as input: \(\mathcal{M}_2\) cannot see nor depend on \(\mathcal{M}_1(D)\).
This setting is typically called &lt;em&gt;sequential composition&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../images/sequential-composition.svg&quot; width=&quot;80%&quot; alt=&quot;A diagram representing sequential composition. A database icon is on the left. Arrows go from it to three boxes labeled M1, M2, and M3, each labeled with ε1, ε2, ε3; these ε values are labeled &apos;fixed budgets&apos;.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;h4 id=&quot;adaptive-composition&quot;&gt;Adaptive composition&lt;/h4&gt;

&lt;p&gt;Shortly afterwards, the result was extended to a setting called &lt;em&gt;adaptive composition&lt;/em&gt; [&lt;a href=&quot;https://link.springer.com/chapter/10.1007/11761679_29&quot;&gt;DKMMN06&lt;/a&gt;].
In this context, each mechanism can access the outputs of previous mechanisms: for example, \(\mathcal{M}_2\) takes as input not only the sensitive data \(D\), but also \(\mathcal{M}_1(D)\).
However, the privacy budget associated with each mechanism is still fixed.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../images/adaptive-composition.svg&quot; width=&quot;80%&quot; alt=&quot;A diagram representing adaptive composition. It&apos;s the same diagram as sequential composition, except there are arrows going from M1 to M2, and from M2 to M3.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;h4 id=&quot;fully-adaptive-composition&quot;&gt;Fully adaptive composition&lt;/h4&gt;

&lt;p&gt;A natural extension of adaptive composition consists in allowing the privacy budget of each mechanism to depend on previous outputs.
This setting is called &lt;em&gt;fully adaptive composition&lt;/em&gt; [&lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2016/hash/58c54802a9fb9526cd0923353a34a7ae-Abstract.html&quot;&gt;RRUV16&lt;/a&gt;].
It captures a setting in which a single analyst is interacting with a DP interface, and can change which queries to run and their budget based on past results.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../images/fully-adaptive-composition.svg&quot; width=&quot;80%&quot; alt=&quot;A diagram representing fully adaptive composition. It&apos;s the same diagram as adaptive composition, except the &apos;fixed budgets&apos; label is gone, and there are arrows going from M1 to ε2, and from M2 to ε3.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Composition theorems in the fully adaptive setting are of two types.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;em&gt;Privacy filters&lt;/em&gt; assume that the DP interface has a fixed, total budget, and will refuse to answer queries once that budget is exhausted.&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;Privacy odometers&lt;/em&gt;, by contrast, allow the analyst to run arbitrarily many queries using as much budget as they want, and quantify the privacy loss over time.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Somewhat surprisingly, there are separation results between both types: one can obtain tighter composition theorems with privacy filters than privacy odometers.&lt;/p&gt;

&lt;h4 id=&quot;concurrent-composition&quot;&gt;Concurrent composition&lt;/h4&gt;

&lt;p&gt;This is, however, not the end of the story.
Fully adaptive composition captures a setting in which a &lt;em&gt;single&lt;/em&gt; analyst interacts with a DP interface.
What if &lt;em&gt;multiple&lt;/em&gt; analysts have access to this interface, each with their own budget?
&lt;em&gt;Concurrent composition&lt;/em&gt; [&lt;a href=&quot;https://arxiv.org/abs/2105.14427&quot;&gt;VW21&lt;/a&gt;] captures this idea.
In this setting, the mechanisms that are being composed are &lt;em&gt;interactive&lt;/em&gt; (we denote them by IM in the diagram below), and the analysts interacting with each mechanism can share results with each other, and adaptively decide which queries to run.
The goal is to quantify the total privacy budget cost, across analysts: do existing results extend to the composition of interactive mechanisms?&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../images/concurrent-composition.svg&quot; width=&quot;80%&quot; alt=&quot;A diagram representing concurrent composition. A database icon on the left has two-sided arrows going from two boxes labeled IM1 and IM2, respectively labeled ε1 and ε2. The first box has two pairs of arrows going back and forth between it and a smiley face. The second one has the same, with a different smiley face.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;h4 id=&quot;fully-concurrent-composition&quot;&gt;Fully concurrent composition?&lt;/h4&gt;

&lt;p&gt;In concurrent composition as defined in [&lt;a href=&quot;https://arxiv.org/abs/2105.14427&quot;&gt;VW21&lt;/a&gt;], the number of analysts and their respective privacy budget is fixed upfront.
This means that concurrent composition and fully adaptive composition results are incomparable.
This suggests an even more generic setting, which (to the best of our knowledge) has not been studied in the literature: a kind of concurrent composition, where the number of analysts and their budget is &lt;em&gt;not&lt;/em&gt; predefined.
Let’s call this &lt;em&gt;fully concurrent composition&lt;/em&gt;.
In this setting, an analyst with a certain privacy budget would be able to spin off a new interactive mechanism, with an adaptively-chosen privacy budget, that can also be interacted with concurrently.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../images/fully-concurrent-composition.svg&quot; width=&quot;80%&quot; alt=&quot;A diagram representing fully concurrent composition. It&apos;s the same as the diagram for concurrent composition, except one of the pairs of arrows going to and from IM1 goes to a smaller box labeled IM3, labeled ε3, and there is also an arrow from IM1 to ε3. IM3 also has a pair of arrows going back and forth towards a third smiley face.&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;This setting might seem pointless — why would analysts want to do this? — but proving composition results in this context would help building DP interfaces that combine expressivity and conceptual simplicity.
To understand why, let’s take a look at how &lt;a href=&quot;https://tmlt.dev&quot;&gt;Tumult Analytics&lt;/a&gt;&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; allows users to use its parallel composition feature.&lt;/p&gt;

&lt;p&gt;Tumult Analytics has a concept of a &lt;em&gt;Session&lt;/em&gt;, which is initialized on some sensitive data with a given privacy budget.
Users can submit queries to this Session using a query language implemented in Python.
Each query executed by the Session will consume part of the overall privacy budget, and return DP results.
The use can then examine these results to decide which queries to submit to the Session next, and with which privacy budget.
So far, this matches the fully adaptive setting, in its privacy filter formulation.&lt;/p&gt;

&lt;p&gt;But Tumult Analytics also allows users to split their sensitive data depending on the value of an attribute, and perform different operations in each partition of the data.
With this feature, users can write algorithms that use &lt;em&gt;parallel composition&lt;/em&gt;, which is very useful.
This partitioning operation takes a fraction of the privacy budget, and spins off &lt;em&gt;sub-Sessions&lt;/em&gt; that each have access to a subset of the original data.
The following diagram visualizes an example of this process.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../images/parallel-composition-analytics.svg&quot; width=&quot;80%&quot; alt=&quot;A diagram visualizing an example of parallel composition in Tumult Analytics. At the top is a database icon labeled &apos;Data&apos;. A double-sided arrow goes from it to a box labeled &apos;Session 1, ε1 = 3&apos;. Under this box is a differently-colored box labeled &apos;Parallel partitioning using ε2 = 1&apos;, three dotted-line arrows go through this box towards boxes labeled &apos;Session 2a, ε2 = 1&apos;, &apos;Session 2b, ε2 = 1&apos;, and &apos;Session 1, ε1 = 2&apos;. Session 2a and 2b have arrows going to and from the database icon, cut in two parts (one for each Session).&quot; style=&quot;margin:auto;display: block;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;At the beginning, there is one Session with a privacy budget of \(\varepsilon_1=3\).
After the partitioning operation, there are now &lt;em&gt;three&lt;/em&gt; Sessions: the original Session that has access to all the data and has a leftover privacy budget of \(\varepsilon_1=2\), and two sub-Sessions that each have access to a partition of the data and have a privacy budget of \(\varepsilon_2=1\).
The analyst using this interface can interact with any of these three Sessions, and interleave queries between each, in a fully interactive manner.
This means that even though there is a single user interacting with the data, the setting is similar to concurrent composition: each Session is an interactive object with a maximum privacy budget.
However, note that the privacy budget associated with each of the sub-Sessions could, in principle, depend on the result of past queries.
This suggests that we need composition results that take this into account, and capture the fully concurrent setting suggested above.&lt;/p&gt;

&lt;h3 id=&quot;composition-for-variants-of-differential-privacy&quot;&gt;Composition for variants of differential privacy&lt;/h3&gt;

&lt;h4 id=&quot;existing-results-and-natural-questions&quot;&gt;Existing results and natural questions&lt;/h4&gt;

&lt;p&gt;A large number of variants and extensions of differential privacy have been proposed in the literature.
In many cases, a benefit of these alternative definitions is to improve the privacy analysis of mechanisms that compose a large number of simpler primitives.
For example, the \(n\)-fold composition of \(\varepsilon\)-DP mechanisms is \(n\varepsilon\)-DP, but the \(n\)-fold composition of \((\varepsilon,\delta)\)-DP mechanisms is also \((\varepsilon’,\delta’)\)-DP, with \(\varepsilon’\approx\sqrt{n}\varepsilon\) and \(\delta’\approx n\delta\).
Machine learning applications often use the moments accountant to perform privacy accounting, relying on the composition property of Rényi DP [&lt;a href=&quot;https://ieeexplore.ieee.org/abstract/document/8049725&quot;&gt;Mir17&lt;/a&gt;, &lt;a href=&quot;https://research.google/pubs/pub45428/&quot;&gt;ACGMMTZ16&lt;/a&gt;].
Gaussian DP and its generalization \(f\)-DP [&lt;a href=&quot;https://academic.oup.com/jrsssb/article/84/1/3/7056089&quot;&gt;DRS22&lt;/a&gt;] are also used in this context [&lt;a href=&quot;https://arxiv.org/abs/1911.11607&quot;&gt;BDLS20&lt;/a&gt;].
Meanwhile, statistical use cases using the Gaussian mechanism often use zero-concentrated DP [&lt;a href=&quot;https://link.springer.com/chapter/10.1007/978-3-662-53641-4_24&quot;&gt;BS16&lt;/a&gt;] (zCDP) for their privacy analysis [&lt;a href=&quot;https://desfontain.es/privacy/real-world-differential-privacy.html&quot;&gt;Des21&lt;/a&gt;]; the approximate version of this definition is also useful when queries are grouped by an unknown domain [&lt;a href=&quot;https://arxiv.org/abs/2301.01998&quot;&gt;SDH23&lt;/a&gt;].&lt;/p&gt;

&lt;p&gt;It is thus natural to study the composition of these variants under the settings described in the previous section.
For many variants and composition settings, &lt;em&gt;optimal&lt;/em&gt; composition results have been proven.
We give an overview in the following table.&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt; &lt;/th&gt;
      &lt;th&gt;&lt;strong&gt;Sequential&lt;/strong&gt;&lt;/th&gt;
      &lt;th&gt;&lt;strong&gt;Adaptive&lt;/strong&gt;&lt;/th&gt;
      &lt;th&gt;&lt;strong&gt;Fully adaptive&lt;/strong&gt;&lt;/th&gt;
      &lt;th&gt;&lt;strong&gt;Concurrent&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;\(\varepsilon\)-DP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://link.springer.com/chapter/10.1007/11681878_14&quot;&gt;DMNS06&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://link.springer.com/chapter/10.1007/11761679_29&quot;&gt;DKMMN06&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2016/hash/58c54802a9fb9526cd0923353a34a7ae-Abstract.html&quot;&gt;RRUV16&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://arxiv.org/abs/2105.14427&quot;&gt;VW21&lt;/a&gt;]&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;\((\varepsilon,\delta)\)-DP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.mlr.press/v37/kairouz15.html&quot;&gt;KOV15&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.mlr.press/v37/kairouz15.html&quot;&gt;KOV15&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.mlr.press/v202/whitehouse23a.html&quot;&gt;WRRW22&lt;/a&gt;]*&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.mlr.press/v202/whitehouse23a.html&quot;&gt;WRRW22&lt;/a&gt;, &lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2022/hash/3f52b555967a95ee850fcecbd29ee52d-Abstract-Conference.html&quot;&gt;Lyu22&lt;/a&gt;]&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Gaussian DP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://academic.oup.com/jrsssb/article/84/1/3/7056089&quot;&gt;DRS22&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://academic.oup.com/jrsssb/article/84/1/3/7056089&quot;&gt;DRS22&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://arxiv.org/abs/2210.17520&quot;&gt;ST22&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://arxiv.org/abs/2207.08335&quot;&gt;VZ22&lt;/a&gt;]&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;\(f\)-DP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://academic.oup.com/jrsssb/article/84/1/3/7056089&quot;&gt;DRS22&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://academic.oup.com/jrsssb/article/84/1/3/7056089&quot;&gt;DRS22&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt; &lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://arxiv.org/abs/2207.08335&quot;&gt;VZ22&lt;/a&gt;]&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;\((\alpha,\varepsilon)\)-Rényi DP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://ieeexplore.ieee.org/abstract/document/8049725&quot;&gt;Mir17&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://ieeexplore.ieee.org/abstract/document/8049725&quot;&gt;Mir17&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.neurips.cc/paper/2021/hash/ec7f346604f518906d35ef0492709f78-Abstract.html&quot;&gt;FZ21&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2022/hash/3f52b555967a95ee850fcecbd29ee52d-Abstract-Conference.html&quot;&gt;Lyu22&lt;/a&gt;]&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;\(\rho\)-zero-concentrated DP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://link.springer.com/chapter/10.1007/978-3-662-53641-4_24&quot;&gt;BS16&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://link.springer.com/chapter/10.1007/978-3-662-53641-4_24&quot;&gt;BS16&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.neurips.cc/paper/2021/hash/ec7f346604f518906d35ef0492709f78-Abstract.html&quot;&gt;FZ21&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2022/hash/3f52b555967a95ee850fcecbd29ee52d-Abstract-Conference.html&quot;&gt;Lyu22&lt;/a&gt;]&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;\(\delta\)-approx. \(\rho\)-zCDP&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://link.springer.com/chapter/10.1007/978-3-662-53641-4_24&quot;&gt;BS16&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://link.springer.com/chapter/10.1007/978-3-662-53641-4_24&quot;&gt;BS16&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt;[&lt;a href=&quot;https://proceedings.mlr.press/v202/whitehouse23a.html&quot;&gt;WRRW22&lt;/a&gt;]&lt;/td&gt;
      &lt;td&gt; &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;center&gt;&lt;small&gt;

* Only asymptotically optimal for small ε.

&lt;/small&gt;&lt;/center&gt;

&lt;p&gt;This summary already suggests a few natural open questions: it is not known whether the fully adaptive composition results for \((\varepsilon,\delta)\)-DP can be improved, there is no fully adaptive composition theorem for \(f\)-DP, or concurrent for \((\rho,\delta)\)-approximate zCDP.&lt;/p&gt;

&lt;h4 id=&quot;reordering-mechanisms-during-the-privacy-analysis&quot;&gt;Reordering mechanisms during the privacy analysis&lt;/h4&gt;

&lt;p&gt;Let’s assume for a moment that the table above is completed, and that we have optimal composition theorems for all the variants of interest and all settings.
Consider an analyst using a differential privacy framework, and performing multiple operations in a fully adaptive way.
Some of these operations are using \(\rho\)-zCDP, others are \((\varepsilon,\delta)\)-DP, alternatively, with varying parameters.
How should the privacy accounting be done in such a scenario?&lt;/p&gt;

&lt;p&gt;In the context of sequential composition, it would be natural to &lt;em&gt;reorder&lt;/em&gt; those mechanisms: consider the equivalent situation where all \(\rho\)-zCDP mechanisms occur first, and all \((\varepsilon,\delta)\)-DP mechanisms occur afterwards.
In this setting, the zCDP mechanisms can be first be composed using the zCDP composition rule.
The overall zCDP guarantee can then be converted to \((\varepsilon,\delta)\)-DP, and composed with the other \((\varepsilon,\delta)\)-DP guarantees.
This will lead to a tighter privacy analysis than converting every individual \(\rho\)-zCDP mechanism to \((\varepsilon,\delta)\)-DP, and composing those guarantees.&lt;/p&gt;

&lt;p&gt;However, we would need an additional theoretical result to perform this kind of reordering operation in a fully adaptive context: the fact that composition results exist for \((\varepsilon,\delta)\)-DP and \(\rho\)-zCDP does not mean they can be combined.
How to resolve this problem, and make it possible to use the same privacy accounting techniques in the sequential setting and in the fully adaptive or fully concurrent setting?
This leads to a natural open question: when performing the privacy analysis of a privacy filter, can one “reorder” the mechanisms when composing them?
Answering this positively would allow DP frameworks to implement tighter privacy accounting at a relatively low cost in complexity.
It might very well be that the answer to this open question is negative.
In that case, proving such a separation result would be of significant theoretical interest in the study of DP composition.&lt;/p&gt;

&lt;h4 id=&quot;composing-privacy-loss-distributions&quot;&gt;Composing privacy loss distributions&lt;/h4&gt;

&lt;p&gt;When we say that a mechanism is \((\varepsilon,\delta)\)-DP, or \(\rho\)-zCDP, we are giving a “global” bound on the privacy loss random variable, defined by:
\[
    \mathcal{L}_{D,D’}(o) =
       \ln\left(\frac{\mathbb{P}\left[\mathcal{M}(D)=o\right]}{\mathbb{P}\left[\mathcal{M}(D’)=o\right]}\right)
\]
for all neighboring inputs \(D\) and \(D’\).&lt;/p&gt;

&lt;p&gt;An alternative approach to privacy accounting consists in &lt;em&gt;fully&lt;/em&gt; describing this random variable.
One approach to do this uses the formalism of &lt;em&gt;privacy loss distributions&lt;/em&gt; (PLDs) [&lt;a href=&quot;https://petsymposium.org/popets/2019/popets-2019-0029.php&quot;&gt;SMM18&lt;/a&gt;].
The PLD of a mechanism is defined as:
\[
    \omega(y) = \mathbb{P}_{o\sim\mathcal{M}(D)}\left[\mathcal{L}_{D,D’}(o)=y\right].
\]&lt;/p&gt;

&lt;p&gt;In the sequential composition setting, PLDs can be used for tight privacy analysis. 
This relies on a conceptually simple result: if \(\omega\) is the PLD of \(\mathcal{M}\) and \(\omega’\) is the PLD of \(\mathcal{M}’\) on neighboring databases \(D\), \(D’\), then the PLD of the composition of \(\mathcal{M}\) and \(\mathcal{M}’\) is \(\omega\ast\omega’\), where \(\ast\) is the convolution operator.
Of course, when doing privacy accounting, we don’t want \(\omega\) and \(\omega’\) to depend on the pair of databases, so we replace them by &lt;em&gt;worst-case&lt;/em&gt; PLDs, that are “larger” than all possible PLDs for neighboring databases.&lt;/p&gt;

&lt;p&gt;Using PLDs for privacy accounting can be done numerically [&lt;a href=&quot;https://eprint.iacr.org/2017/1034&quot;&gt;MM18&lt;/a&gt;, &lt;a href=&quot;https://arxiv.org/abs/2102.12412&quot;&gt;KJH20&lt;/a&gt;, &lt;a href=&quot;http://proceedings.mlr.press/v130/koskela21a.html&quot;&gt;KJPH21&lt;/a&gt;, &lt;a href=&quot;https://proceedings.neurips.cc/paper_files/paper/2021/hash/6097d8f3714205740f30debe1166744e-Abstract.html&quot;&gt;GLW21&lt;/a&gt;, &lt;a href=&quot;https://proceedings.mlr.press/v162/ghazi22a.html&quot;&gt;GKKM22&lt;/a&gt;, &lt;a href=&quot;https://arxiv.org/abs/2207.04380&quot;&gt;DGKKM22&lt;/a&gt;] or analytically [&lt;a href=&quot;https://proceedings.mlr.press/v151/zhu22c.html&quot;&gt;ZDW22&lt;/a&gt;].
This family of approaches is convenient because it is very generic: DP frameworks can use a tight upper bound PLD when known, and fall back to a worst-case PLD corresponding to \(\varepsilon\)-DP or \((\varepsilon,\delta)\)-DP when the mechanism is too complex.
Unfortunately, the composition result mentioned above has only been proven in the sequential composition setting [&lt;a href=&quot;https://eprint.iacr.org/2017/1034&quot;&gt;MM18&lt;/a&gt;].
Extending it to adaptive composition is straightforward, but extending it to the fully adaptive setting (with privacy filters) or the concurrent setting does not seem trivial.&lt;/p&gt;

&lt;p&gt;This leads us to our last open question: can these privacy accounting techniques be used in the fully adaptive or concurrent settings?&lt;/p&gt;

&lt;h3 id=&quot;summary&quot;&gt;Summary&lt;/h3&gt;

&lt;p&gt;In this blog post, we gave a high-level overview of different settings and variants of composition theorems.
Along the way, we listed a number of natural open questions.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Can we define a setting that generalizes both fully adaptive composition and concurrent composition? What composition results hold in that setting?&lt;/li&gt;
  &lt;li&gt;Can we “fill in the blanks” among existing composition results? Namely, can we prove optimal composition results for \((\varepsilon,\delta)\)-DP and \(f\)-DP in the fully adaptive setting, and for \((\varepsilon,\delta)\)-approximate zCDP in the concurrent setting?&lt;/li&gt;
  &lt;li&gt;In the fully adaptive setting with privacy filters, can one reorder mechanisms when computing their cumulative privacy loss, to optimize the privacy accounting?&lt;/li&gt;
  &lt;li&gt;Can we prove fully adaptive and concurrent composition results for privacy accounting based on privacy loss distributions?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Progress on these open questions would either uncover surprising additional separation results, or enable usability and utility improvements to general-purpose DP infrastructure.
We’re excited about both prospects!&lt;/p&gt;

&lt;hr /&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;&lt;a href=&quot;https://tmlt.dev&quot;&gt;Tumult Analytics&lt;/a&gt; is a differential privacy framework used by institutions such as the U.S. Census Bureau, the IRS, or the Wikimedia Foundation. It is developed by &lt;a href=&quot;https://tmlt.io&quot;&gt;Tumult Labs&lt;/a&gt;, the employer of the author of this blog post. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Damien Desfontaines</name>
        
        </author>
        <pubDate>Mon, 18 Sep 2023 21:00:00 -0400</pubDate>
        <link>https://differentialprivacy.org/open-problems-how-generic-can-composition-be/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/open-problems-how-generic-can-composition-be/</guid>
      </item>
    
      <item>
        <title>Beyond Local Sensitivity via Down Sensitivity</title>
        <description>&lt;p&gt;In &lt;a href=&quot;/inverse-sensitivity/&quot;&gt;our previous post&lt;/a&gt;, we discussed local sensitivity and how we can get accuracy guarantees that scale with local sensitivity, which can be much better than the global sensitivity guarantees attained via standard noise addition mechanisms.
In this post, we will look at what we can do when even the local sensitivity is unbounded. This is obviously a challenging setting, but it turns out that not all hope is lost.&lt;/p&gt;

&lt;p&gt;As a motivating example, suppose we have a dataset \(x=(x_1,x_2,\cdots,x_n)\) and we want to approximate \(\max_i x_i \) in a differentially private manner.
The difficulty is that adding a single element to \(x\) can increase the maximum arbitrarily. That is, if \(x’=(x_1,x_2,\cdots,x_n,\infty)\), then \(\max_i x’_i=\infty\). Differential privacy requires us to make the outputs \(M(x)\) and \(M(x’)\) indistinguishable, which seems to directly contradict our accuracy goal \(M(x) \approx \max_i x_i\).&lt;/p&gt;

&lt;p&gt;One solution to the problem of unbounded sensitivity is to clip the inputs, so that the sensitivity becomes bounded. But this requires knowing a good a priori approximate upper bound on the \(x_i\)s. Trying to find such an upper bound is probably the very reason we want to approximate the maximum in the first place!&lt;/p&gt;

&lt;p&gt;Another solution is to “aim lower:” Instead of aiming to approximate the largest element \(x_{(n)} := \max_i x_i\), we can aim to approximate the \(k\)-th largest element \(x_{(n-k+1)}\).
The \(k\)-th largest element has bounded local sensitivity, which means we can apply &lt;a href=&quot;/inverse-sensitivity/&quot;&gt;the inverse sensitivity mechanism&lt;/a&gt; or similar tools.
And – spoiler alert – this is essentially what we will do. However, we will present an algorithm that is more general than just for approximating the maximum.&lt;/p&gt;

&lt;p&gt;The algorithm we present is due to Fang, Dong, and Yi [&lt;a href=&quot;https://cse.hkust.edu.hk/~yike/ShiftedInverse.pdf&quot; title=&quot;Juanru Fang, Wei Dong, Ke Yi. Shifted Inverse: A General Mechanism for Monotonic Functions under User Differential Privacy. CCS 2022.&quot;&gt;FDY22&lt;/a&gt;].
In terms of applications, a natural setting where we may need to approximate functions of unbouned local sensitivity is when each person can contribute multiple items to the dataset. This setting is often referred to as “user-level differential privacy” or “user DP.”&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;
For example, if we have a collection of web browsing histories, we may wish to estimate the total number of webpages visited; this has unbounded local sensitivity because a single person could visit an arbitrary number of webpages.&lt;/p&gt;

&lt;h2 id=&quot;down-sensitivity&quot;&gt;Down Sensitivity&lt;/h2&gt;

&lt;p&gt;Observe that, while &lt;em&gt;adding&lt;/em&gt; one element to the input can increase the maximum arbitrarily, &lt;em&gt;removing&lt;/em&gt; one element can only decrease it by the gap between the largest and second-largest elements \(x_{(n)}-x_{(n-1)}\). In other words, the maximum satisfies some kind of one-sided local sensitivity bound. This is the general property we will rely on.&lt;/p&gt;

&lt;p&gt;We define the \(k\)-&lt;em&gt;down sensitivity&lt;/em&gt;&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; of the function \(f : \mathcal{X}^* \to \mathbb{R}\) at the input \(x\in\mathcal{X}^*\) as
&lt;a id=&quot;downsensitivity&quot;&gt;&lt;/a&gt;\[\mathsf{DS}^k_f(x) := \sup_{x’ \subseteq x : \mathrm{dist}(x,x’) \le k} |f(x)-f(x’)|. \tag{1}\]
Here \(\mathrm{dist} : \mathcal{X}^* \times \mathcal{X}^* \to \mathbb{R}\) is the size of the symmetric difference between the two input tuples/multisets \(\mathrm{dist}(x,x’) = |x \setminus x’| + | x’ \setminus x |\), which defines a metric. In other words, it measures how many people’s data must be added or removed to get from one dataset to the other.
For comparison, the local sensitivity is
&lt;a id=&quot;localsensitivity&quot;&gt;&lt;/a&gt;\[\mathsf{LS}^k_f(x) := \sup_{x’\in\mathcal{X}^* : \mathrm{dist}(x,x’) \le k} |f(x)-f(x’)|. \tag{2}\]
The difference between Equations 1 and 2 is simply that down sensitivity only considers removing elements from \(x\), while local sensitivity considers both addition and removal.
Thus, the down sensitivity is at most the local sensitivity, which is, in turn, upper bounded by the global sensitivity: \(\mathsf{DS}^k_f(x) \le \mathsf{LS}^k_f(x) \le k \cdot \mathsf{GS}_f\).&lt;/p&gt;

&lt;p&gt;Intuitively, what is nice about down sensitivity is that it only considers the actual data we have at hand. It doesn’t consider any hypothetical people’s data that could be added to the dataset. It is appealing to only have to deal with “real” data.&lt;/p&gt;

&lt;p&gt;Our goal now is to estimate \(f(x)\) in a differentially private manner, where the accuracy guarantee scales with the down sensitivity.&lt;/p&gt;

&lt;h2 id=&quot;monotonicity-assumption&quot;&gt;Monotonicity Assumption&lt;/h2&gt;

&lt;p&gt;In order to do anything, we need some assumptions about the function \(f : \mathcal{X}^* \to \mathcal{Y}\) that we are trying to approximate.
First we will assume that \(\mathcal{Y} \subseteq \mathbb{R}\) is finite and \(f\) is surjective.&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;
The main assumption is monotonicity:
&lt;a id=&quot;monotonicity&quot;&gt;&lt;/a&gt;\[\forall x’ \subseteq x \in \mathcal{X}^* ~~~ f(x’) \le f(x). \tag{3}\]
The maximum and many other example functions satisfy this assumption.&lt;/p&gt;

&lt;p&gt;Intuitively, we need this assumption to ensure that the down sensitivity is well-behaved. 
Specifically, Lemma 1 below requires monotonicity.&lt;/p&gt;

&lt;p&gt;As an example of &lt;a id=&quot;weirdnonmonotonicity&quot;&gt;&lt;/a&gt;what could happen if we don’t make this assumption, consider the function \(\mathrm{sum}(x) := \sum_i x_i\) and the pair of neighbouring inputs \(x=(1,1,\cdots,1)\in\mathcal{Y}^n,x’=(1,1,\cdots,1,-100n)\in\mathcal{Y}^{n+1}\). Then, for all \(1 \le k\le n\), we have \(\mathsf{DS}_{\mathrm{sum}}^k(x)=k\), but \(\mathsf{DS}_{\mathrm{sum}}^k(x’)=100n\).&lt;/p&gt;

&lt;p&gt;Note that the sum is monotone if we restrict to non-negative inputs. In general, we can take any function \(g\) and convert it into a monotone function \(f\) by defining \(f(x) = \max\{ g(\check{x}) : \check{x} \subseteq x \}\). Depending on the context, this \(f\) may or may not be a good proxy for \(g\).&lt;/p&gt;

&lt;h2 id=&quot;a-loss-with-bounded-global-sensitivity&quot;&gt;A Loss With Bounded Global Sensitivity&lt;/h2&gt;

&lt;p&gt;Given a monotone function \(f : \mathcal{X}^* \to \mathbb{R}\), we define a loss function \(\ell : \mathcal{X}^* \times \mathbb{R} \to \mathbb{Z}_{\ge 0}\) by
&lt;a id=&quot;loss&quot;&gt;&lt;/a&gt;\[\ell(x,y) := \min\{ \mathrm{dist}(x,\tilde{x}) : \tilde{x} \subseteq x, f(\tilde{x}) \le y \}. \tag{4}\]
In other words, \(\ell(x,y)\) measures how many entries of \(x\) we need to remove to decrease the function value until \(f(x) \le y\). 
Yet another way to think of it is that \(\ell(x,y)\) is the distance from the point \(x\) to the set \(f^{-1}((-\infty,y]) \cap \{ \tilde{x} : \tilde{x} \subseteq x \} \).&lt;/p&gt;

&lt;table&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;img src=&quot;../images/shiftedinverseloss.png&quot; alt=&quot;Plot of the loss corresponding to the maximum where the dataset exactly matches Binomial(5,0.5). This is a decreasing function with steps. There is also a vertical line indicating the true maximum value.&quot; /&gt; Figure 1: Visualization of the loss \(\ell(x,y)\) corresponding to \(f(x)=\max_i x_i\) for a dataset representing the distribution \(\mathrm{Binomial}(5,1/2)\) i.e. the true maximum is \(5\) and the dataset is \(x=(0,\underbrace{1,1,1,1,1}_{5\times},\underbrace{2,2,\cdots,2}_{10\times},\underbrace{3,3,\cdots,3}_{10\times},\underbrace{4,4,4,4,4}_{5\times},5)\).&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;The key property we need is that this loss has bounded sensitivity. We split the proof into Lemmas 1 and 2.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Lemma 1.&lt;/strong&gt;
Let \(f : \mathcal{X}^* \to \mathbb{R}\) satisfy the monotonicity property in &lt;a href=&quot;#monotonicity&quot;&gt;Equation 3&lt;/a&gt;.
Define \(\ell : \mathcal{X}^* \times \mathbb{R} \to \mathbb{Z}_{\ge 0}\) as in &lt;a href=&quot;#loss&quot;&gt;Equation 4&lt;/a&gt;. &lt;br /&gt;
Let \(x’ \subseteq x \in \mathcal{X}^*\).
Then \(\ell(x’,y)\le\ell(x,y)\) for all \(y \in \mathbb{R}\).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;
Fix \(y \in \mathbb{R}\) and \(x’ \subseteq x \in \mathcal{X}^*\).
Let \(x_\Delta = x \setminus x’ \subseteq x\), so that \(x’ = x \setminus x_\Delta \).&lt;/p&gt;

  &lt;p&gt;Let \(\widehat{x} \subseteq x\) satisfy \(f(\widehat{x})\le y\) and \(\mathrm{dist}(x,\widehat{x})=\ell(x,y)\).
Define \(\widehat{x}’ = \widehat{x} \setminus x_\Delta\). This ensures \(\widehat{x}’ \subseteq x’\) and \[\mathrm{dist}(x’,\widehat{x}’) = \mathrm{dist}(x  \setminus x_\Delta , \widehat{x}  \setminus x_\Delta ) \le \mathrm{dist}(x,\widehat{x}).\]&lt;/p&gt;

  &lt;p&gt;By monotonicity, \(f(\widehat{x}’) \le f(\widehat{x}) \le y\). 
Thus \[\ell(x’,y) = \min\{ \mathrm{dist}(x’,\tilde{x}’) : \tilde{x}’ \subseteq x’, f(\tilde{x}’) \le y \}\]\[ \le \mathrm{dist}(x’,\widehat{x}’)  \le \mathrm{dist}(x,\widehat{x}) = \ell(x,y).\]
∎&lt;/p&gt;
&lt;/blockquote&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Lemma 2.&lt;/strong&gt;
Let \(f : \mathcal{X}^* \to \mathbb{R}\).
Define \(\ell : \mathcal{X}^* \times \mathbb{R} \to \mathbb{Z}_{\ge 0}\) as in &lt;a href=&quot;#loss&quot;&gt;Equation 4&lt;/a&gt;. &lt;br /&gt;
Let \(x’ \subseteq x \in \mathcal{X}^*\).
Then \(\ell(x,y)\le\ell(x’,y)+\mathrm{dist}(x,x’)\) for all \(y \in \mathbb{R}\).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;
Fix \(y \in \mathbb{R}\) and \(x’ \subseteq x \in \mathcal{X}^*\).&lt;/p&gt;

  &lt;p&gt;Let \(\widehat{x}’ \subseteq x’\) satisfy \(f(\widehat{x}’)\le y\) and \(\mathrm{dist}(x’,\widehat{x}’)=\ell(x’,y)\).
Since \(\widehat{x}’ \subseteq x’ \subseteq x\), we have 
\[\ell(x,y) = \min\{ \mathrm{dist}(x,\tilde{x}) : \tilde{x} \subseteq x, f(\tilde{x}) \le y \}  \le \mathrm{dist}(x,\widehat{x}’) \]\[ \le \mathrm{dist}(x,x’) + \mathrm{dist}(x’,\widehat{x}’) = \ell(x,y)+\mathrm{dist}(x,x’),\]
by the triangle inequality, as required.
∎&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Note that we only needed the monotonicity assumption for Lemma 1. 
Combining the two lemmas gives \[ \forall  x’ \subseteq x ~ \forall y ~~~~~ \ell(x’,y) \le \ell(x,y) \le \ell(x’,y) + \mathrm{dist}(x,x’).\]
Overall we have the following guarantee.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Proposition 3. (Global Sensitivity of the Loss)&lt;/strong&gt;
Let \(f : \mathcal{X}^* \to \mathbb{R}\) satisfy the monotonicity property in &lt;a href=&quot;#monotonicity&quot;&gt;Equation 3&lt;/a&gt;.
Define \(\ell : \mathcal{X}^* \times \mathbb{R} \to \mathbb{Z}_{\ge 0}\) as in &lt;a href=&quot;#loss&quot;&gt;Equation 4&lt;/a&gt;. &lt;br /&gt;
Then, for all \(x, x’ \in \mathcal{X}^*\) and all \(y \in \mathbb{R}\), we have \[|\ell(x,y)-\ell(x’,y)| \le \mathrm{dist}(x,x’).\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;
Fix \(x, x’ \in \mathcal{X}^*\) and \(y \in \mathbb{R}\).
Let \(x’’ = x \cap x’\). 
Since \(x’’ \subset x’\) and \(f\) is assumed to be monotone, Lemma 1 gives \(\ell(x’’ ,y) \le \ell(x’,y)\).
Also \(x’’ \subset x\), whence Lemma 2 gives \(\ell(x,y) \le \ell(x’’ , y) + \mathrm{dist}(x , x’’ )\).
Note that \( \mathrm{dist}(x , x’’ ) = | x \setminus x’’ | = | x \setminus x’ | \le \mathrm{dist}(x , x’ ).\)
Combining inequalities gives \(\ell(x,y) \le \ell(x’ , y) + \mathrm{dist}(x , x’ )\). The other direction is symmetric.
∎&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id=&quot;the-shifted-inverse-sensitivity-mechanism&quot;&gt;The Shifted Inverse Sensitivity Mechanism&lt;/h2&gt;

&lt;p&gt;Let’s recap where we are: We have a monotone function \(f : \mathcal{X}^* \to \mathcal{Y}\), where \(\mathcal{Y} \subseteq \mathbb{R}\) is finite. We want to approximate \(f(x)\) privately. &lt;a href=&quot;#loss&quot;&gt;Equation 4&lt;/a&gt; gives us a loss \(\ell\) that is low-sensitivity.
We have \(\ell(x,f(x))=0\) and, if \(y &amp;lt; f(x)\) decreases, the loss \(\ell(x,y)\) increases (depending on the down sensitivity of \(f\)).
So far, so good. The problem is that if \(y &amp;gt; f(x)\) increases, the loss \(\ell(x,y)\) doesn’t increase. This means we can’t just throw this loss into the exponential mechanism.&lt;/p&gt;

&lt;p&gt;Intuitively, the way we get around this problem is by looking for a value \(y\) such that the loss \(\ell(x,y)\) is greater than zero, but not too large. That is, we “shift” our goal from trying to minimize \(\ell(x,y)\) to minimizing something like \(|\ell(x,y)-\tau|\) for some integer \(\tau&amp;gt;0\).
Going back to the example of the maximum, this corresponds to aiming for the \((\tau+1)\)-th largest value instead of the largest value.
The hope is that we get an output with \(|\ell(x,y)-\tau|&amp;lt;\tau\), which for the maximum example corresponds roughly to getting a value between the largest value and the \(2\tau\)-th largest value.&lt;/p&gt;

&lt;p&gt;Fang, Dong, and Yi [&lt;a href=&quot;https://cse.hkust.edu.hk/~yike/ShiftedInverse.pdf&quot; title=&quot;Juanru Fang, Wei Dong, Ke Yi. Shifted Inverse: A General Mechanism for Monotonic Functions under User Differential Privacy. CCS 2022.&quot;&gt;FDY22&lt;/a&gt;] directly apply the exponential mechanism [&lt;a href=&quot;https://ieeexplore.ieee.org/document/4389483&quot; title=&quot;Frank McSherry, Kunal Talwar. Mechanism Design via Differential Privacy. FOCS 2007.&quot;&gt;MT07&lt;/a&gt;] with a loss of the form \(|\ell(x,y)-\tau|\).&lt;sup id=&quot;fnref:4&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:4&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;
This yields the following guarantee.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 4. (Shifted Inverse Sensitivity Mechanism)&lt;/strong&gt;
Let \(f : \mathcal{X}^* \to \mathcal{Y}\) be monotone (&lt;a href=&quot;#monotonicity&quot;&gt;Equation 3&lt;/a&gt;), where \(\mathcal{Y} \subseteq \mathbb{R}\) is finite. Let \(\varepsilon&amp;gt;0\) and \(\beta \in (0,1)\).
Then there exists an \(\varepsilon\)-differentially private \(M : \mathcal{X}^* \to \mathcal{Y}\) with the following accuracy guarantee.
For all \(x \in \mathcal{X}^*\), we have
\[\mathbb{P}\left[ f(x) \ge M(x) \ge f(x) - \mathsf{DS}_f^{2\tau}(x)  \right] \ge 1 - \beta,\]
where \(\tau=\left\lceil\frac{2}{\varepsilon}\log\left(\frac{|\mathcal{Y}|}{\beta}\right)\right\rceil\).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is exactly the kind of guarantee we were aiming for; the accuracy scales with the down sensitivity, which could be much smaller than either the local sensitivity or the global sensitivity.
Note that the guarantee gives an &lt;i&gt;under&lt;/i&gt;estimate: \(M(x) \le f(x)\). This is inherent. If the function has infinite “up sensitivity,” then we cannot give an upper bound in a differentially private manner.&lt;/p&gt;

&lt;p&gt;The shifted inverse sensitivity mechanism has the same limitations as the inverse sensitivity mechanism that we discussed in &lt;a href=&quot;/inverse-sensitivity/&quot;&gt;our previous post&lt;/a&gt;. Namely, computing the loss can be computationally intractable for general functions and we have a \(\log|\mathcal{Y}|\) dependence. (We will discuss how to improve this next.)
An additional limitation is that we need the monotonicity assumption. But, as &lt;a href=&quot;#weirdnonmonotonicity&quot;&gt;discussed earlier&lt;/a&gt;, down sensitivity behaves weirdly without this assumption.&lt;/p&gt;

&lt;h2 id=&quot;beyond-the-exponential-mechanism&quot;&gt;Beyond the Exponential Mechanism&lt;/h2&gt;

&lt;p&gt;Applying the exponential mechanism to find \(y\) with \(\ell(x,y)\approx\tau\) yields a clean guarantee in Theorem 4. However, there are other methods we can apply which may be simpler&lt;sup id=&quot;fnref:4:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:4&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt; and give better asymptotic guarantees.&lt;/p&gt;

&lt;p&gt;Observe that the loss \(\ell(x,y)\) is a decreasing function of \(y\). The exponential mechanism does not exploit this structure.
A very natural alternative algorithm is to perform binary search.&lt;sup id=&quot;fnref:5&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:5&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;We describe the algorithm in pseudocode and briefly analyze it: The input is the loss \(\ell\) defined in &lt;a href=&quot;#loss&quot;&gt;Equation 4&lt;/a&gt;, the dataset \(x\), an ordered enumeration of the set of outputs \(\mathcal{Y} = \{y_0 \le y_1 \le \cdots \le y_{|\mathcal{Y}|-1} \}\), and parameters \(\sigma,\tau&amp;gt;0\).&lt;/p&gt;
&lt;div class=&quot;language-python highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;noisy_binary_search&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;loss&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Y&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sigma&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tau&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
     &lt;span class=&quot;n&quot;&gt;i_min&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
     &lt;span class=&quot;n&quot;&gt;i_max&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;len&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Y&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;
     &lt;span class=&quot;k&quot;&gt;while&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i_min&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i_max&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
          &lt;span class=&quot;n&quot;&gt;k&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i_min&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i_max&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;//&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;
          &lt;span class=&quot;n&quot;&gt;v&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;loss&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Y&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;k&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;])&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;laplace&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sigma&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
          &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;v&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;tau&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
               &lt;span class=&quot;n&quot;&gt;i_max&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;k&lt;/span&gt;
          &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
               &lt;span class=&quot;n&quot;&gt;i_min&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;k&lt;/span&gt;
     &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Y&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i_max&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Since each iteration satisfies \(\frac1\sigma\)-differential privacy and there are at most \(\lceil \log_2 |\mathcal{Y}| \rceil-1\) iterations, the algorithm satisfies \(\varepsilon\)-differential privacy for \(\varepsilon = \frac{\log_2 |\mathcal{Y}|}{\sigma} \) by &lt;a href=&quot;/composition-basics/&quot;&gt;basic composition&lt;/a&gt;. 
Alternatively, using advanced composition, we see that the algorithm satisfies \(\rho\)-zCDP [&lt;a href=&quot;https://arxiv.org/abs/1605.02065&quot; title=&quot;Mark Bun, Thomas Steinke. Concentrated Differential Privacy: Simplifications, Extensions, and Lower Bounds. TCC 2016.&quot;&gt;BS16&lt;/a&gt;] for \(\rho = \frac{\log_2 |\mathcal{Y}|}{2\sigma^2} \).&lt;/p&gt;

&lt;p&gt;By a union bound, each noise sample has magnitude at most \(\tau\) with probability at least \(1 - \exp(-\tau/\sigma) \cdot \log_2|\mathcal{Y}|\).&lt;sup id=&quot;fnref:b&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:b&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;6&lt;/a&gt;&lt;/sup&gt;
Assuming the noise magnitudes are \(\le\tau\), the binary search maintains the invariants \(\ell(x,y_{i_\min})&amp;gt;0\) and \(\ell(x,y_{i_\max})\le 2\tau\).
These invariants imply \(y_{i_\min} &amp;lt; f(x)\) and \(y_{i_\max} \ge f(x) - \mathsf{DS}_f^{2\tau}(x)\) respectively. 
At the end of the binary search, \(i_\min+1 \ge i_\max\) and thus \(y_{i_\min} &amp;lt; f(x)\) implies \(y_{i_\max} \le f(x)\).&lt;/p&gt;

&lt;p&gt;Setting \(\tau = \sigma \cdot \log\left(\frac{\log_2|\mathcal{Y}|}{\beta}\right)\) and \(\sigma = \frac{\log_2|\mathcal{Y}|}{\varepsilon}\) yields a result similar to Theorem 4.&lt;/p&gt;

&lt;p&gt;Setting \(\tau = \sigma \cdot \log\left(\frac{\log_2|\mathcal{Y}|}{\beta}\right)\) and \(\sigma = \sqrt{\frac{\log_2|\mathcal{Y}|}{2\rho}}\) yields the following result for concentrated differential privacy [&lt;a href=&quot;https://arxiv.org/abs/1603.01887&quot; title=&quot;Cynthia Dwork, Guy N. Rothblum. Concentrated Differential Privacy. 2016.&quot;&gt;DR16&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1605.02065&quot; title=&quot;Mark Bun, Thomas Steinke. Concentrated Differential Privacy: Simplifications, Extensions, and Lower Bounds. TCC 2016.&quot;&gt;BS16&lt;/a&gt;]. 
Note that setting \(\rho = \frac{\varepsilon^2}{4\log(1/\delta)+4\varepsilon}\) suffices to give \((\varepsilon,\delta)\)-differential privacy [e.g. &lt;a href=&quot;https://arxiv.org/abs/2210.00597v4&quot; title=&quot;Thomas Steinke. Composition of Differential Privacy &amp;amp; Privacy Amplification by Subsampling. 2022.&quot;&gt;S22&lt;/a&gt; Remark 15].&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 5. (Shifted Inverse Sensitivity Mechanism with Concentrated Differential Privacy)&lt;/strong&gt;
Let \(f : \mathcal{X}^* \to \mathcal{Y}\) be monotone (&lt;a href=&quot;#monotonicity&quot;&gt;Equation 3&lt;/a&gt;), where \(\mathcal{Y} \subseteq \mathbb{R}\) is finite. Let \(\rho&amp;gt;0\) and \(\beta \in (0,1)\).
Then there exists an \(\rho\)-zCDP \(M : \mathcal{X}^* \to \mathcal{Y}\) with the following accuracy guarantee.
For all \(x \in \mathcal{X}^*\), we have
\[\mathbb{P}\left[ f(x) \ge M(x) \ge f(x) - \mathsf{DS}_f^{2\tau}(x)  \right] \ge 1 - \beta,\]
where \(\tau = \sqrt{\frac{\log_2|\mathcal{Y}|}{2\rho}} \cdot \log\left(\frac{\log_2|\mathcal{Y}|}{\beta}\right) \).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Comparing Theorems 4 and 5 we see an asymptotic improvement in the dependence on the size of the output space \(|\mathcal{Y}|\). (This improvement is the benefit of advanced composition.) Theorem 4 gives \(\tau = \Theta(\log|\mathcal{Y}|)\), while Theorem 5 gives \(\tau = \Theta(\sqrt{\log|\mathcal{Y}|} \cdot \log \log |\mathcal{Y}|)\).&lt;sup id=&quot;fnref:6&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:6&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;7&lt;/a&gt;&lt;/sup&gt;
In exchange, Theorem 4 gives a pure differential privacy guarantee (i.e. \((\varepsilon,\delta)\)-DP with \(\delta=0\)), while Theorem 5 gives a concentrated differential privacy guarantee, which can be translated to approximate differential privacy (i.e. \((\varepsilon,\delta)\)-DP with \(\delta&amp;gt;0\)).&lt;/p&gt;

&lt;p&gt;We can actually do even better than binary search!
The problem we’re solving with binary search is actually an instance of the &lt;em&gt;generalized interior point problem&lt;/em&gt; [&lt;a href=&quot;http://www.thomas-steinke.net/tcdp.pdf&quot; title=&quot;Mark Bun, Cynthia Dwork, Guy N. Rothblum, Thomas Steinke. Composable and Versatile Privacy via Truncated CDP. STOC 2018.&quot;&gt;BDRS18&lt;/a&gt;] (which is essentially the same as &lt;em&gt;quasi-concave optimization&lt;/em&gt; [&lt;a href=&quot;https://arxiv.org/abs/2211.06387&quot; title=&quot;Edith Cohen, Xin Lyu, Jelani Nelson, Tamás Sarlós, Uri Stemmer. Õptimal Differentially Private Learning of Thresholds and Quasi-Concave Optimization. STOC 2023.&quot;&gt;CLNSS23&lt;/a&gt;]).
This problem and its variants have been extensively studied in the context of private learning [&lt;a href=&quot;https://arxiv.org/abs/1407.2674&quot; title=&quot;Amos Beimel, Kobbi Nissim, Uri Stemmer. Private Learning and Sanitization: Pure vs. Approximate Differential Privacy. APPROX/RANDOm 2013.&quot;&gt;BNS13&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1504.07553&quot; title=&quot;Mark Bun, Kobbi Nissim, Uri Stemmer, Salil Vadhan. Differentially Private Release and Learning of Threshold Functions. FOCS 2015.&quot;&gt;BNSV15&lt;/a&gt;,etc.]
The upshot is that, under \((\varepsilon,\delta)\)-differential privacy, we can achieve the same result as Theorems 4 and 5 with \(\tau = \frac{\log(1/\delta)}{\varepsilon} \cdot 2^{O(\log^* |\mathcal{Y}|)}\), where \(\log^*\) denotes the &lt;a href=&quot;https://en.wikipedia.org/wiki/Iterated_logarithm&quot;&gt;iterated logaritm&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 6. (Shifted Inverse Sensitivity Mechanism with Approximate Differential Privacy)&lt;/strong&gt;
Let \(f : \mathcal{X}^* \to \mathcal{Y}\) be monotone (&lt;a href=&quot;#monotonicity&quot;&gt;Equation 3&lt;/a&gt;), where \(\mathcal{Y} \subseteq \mathbb{R}\) is finite. Let \(\varepsilon&amp;gt;0\) and \(\delta \in (0,.1)\).
Then there exists an \((\varepsilon,\delta)\)-differentially private \(M : \mathcal{X}^* \to \mathcal{Y}\) with the following accuracy guarantee.
For all \(x \in \mathcal{X}^*\), we have
\[\mathbb{P}\left[ f(x) \ge M(x) \ge f(x) - \mathsf{DS}_f^{2\tau}(x)  \right] \ge \frac{9}{10},\]
where \(\tau = \frac{\log(1/\delta)}{\varepsilon} \cdot 2^{O(\log^* |\mathcal{Y}|)}\).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The iterated logarithm is an unbelievably slow-growing function. Thus Theorem 6 improves on Theorems 4 and 5 in terms of the dependence on \(|\mathcal{Y}|\). However, the dependence on \(\delta\) is worse than Theorem 5 (\(\tau=\Theta(\log(1/\delta))\) versus \(\tau=\Theta(\sqrt{\log(1/\delta)})\)). (Theorem 4 achieves \(\delta=0\).)&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;In this post we’ve covered the shifted inverse sensitivity mechanism of Fang, Dong, and Yi [&lt;a href=&quot;https://cse.hkust.edu.hk/~yike/ShiftedInverse.pdf&quot; title=&quot;Juanru Fang, Wei Dong, Ke Yi. Shifted Inverse: A General Mechanism for Monotonic Functions under User Differential Privacy. CCS 2022.&quot;&gt;FDY22&lt;/a&gt;], as well as some extensions.&lt;/p&gt;

&lt;p&gt;The key takeaway is that we can privately approximate a monotone function with error scaling with the down sensitivity. This is particularly interesting in settings where the local and global sensitivities are large.
Down sensitivity is an appealing notion because it is entirely defined by the “real” dataset; its definition (&lt;a href=&quot;#downsensitivity&quot;&gt;Equation 1&lt;/a&gt;) does not consider hypothetical data items that aren’t in the dataset.&lt;/p&gt;

&lt;p&gt;Fang, Dong, and Yi [&lt;a href=&quot;https://cse.hkust.edu.hk/~yike/ShiftedInverse.pdf&quot; title=&quot;Juanru Fang, Wei Dong, Ke Yi. Shifted Inverse: A General Mechanism for Monotonic Functions under User Differential Privacy. CCS 2022.&quot;&gt;FDY22&lt;/a&gt;] show that the shifted inverse sensitivity mechanism attains strong instance optimality guarantees. In other words, up to logarithmic factors, no differentially private mechanism can achieve better error guarantees.&lt;/p&gt;

&lt;p&gt;We can view the shifted inverse sensitivity mechanism as a reduction. It reduces the task of approximating a monotone function to a problem akin to approximating the median. (More precisely, it reduces it to a generalized interior point problem.) We think this is a neat addition to the toolkit of differentially private algorithms&lt;/p&gt;

&lt;hr /&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;We emphasize that user-level differential privacy is not an alternative privacy definition, rather it is the standard definition of differential privacy with a data schema allowing multiple data items per person. In contrast, most of the differential privacy literature assumes a one-to-one correspondence between people and data items. Note that we prefer the terminology “person”/”people” rather than “user”/”users.” The “user” terminology is specific to the tech industry and may be confusing in other contexts; e.g., in the context of the US Census Bureau, “users” are the entities (such as government agencies) that use data provided by the bureau, rather than the people whose data the bureau collects. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The name “down sensitivity” is due to Raskhodnikova and Smith [&lt;a href=&quot;https://cs-people.bu.edu/sofya/pubs/GraphPrivacyEncyclopedia.pdf&quot; title=&quot;Sofya Raskhodnikova, Adam Smith. Differentially Private Analysis of Graphs. Encyclopedia of Algorithms, 2015.&quot;&gt;RS15&lt;/a&gt;]. The name &lt;em&gt;local empirical sensitivity&lt;/em&gt; has also been used [&lt;a href=&quot;https://arxiv.org/abs/1304.4795&quot; title=&quot;Shixi Chen, Shuigeng Zhou. Recursive mechanism: towards node differential privacy and unrestricted joins. SIGMOD 2013.&quot;&gt;CZ13&lt;/a&gt;]. The \(k\)-down sensitivity should not be confused with the down sensitivity at distance \(k\), which is defined by \(\mathsf{DS}_f^{(k)}(x) := \sup \{ \mathsf{DS}_f^1(x’) : \mathrm{dist}(x,x’) \le k \}\). Note that \(\mathsf{DS}_f^k(x) \le k \cdot \mathsf{DS}_f^{(k-1)}(x)\). &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The finiteness assumption can be relaxed somewhat, but we do need some kind of constraint on the output space to ensure utility. The surjectivity assumption simply ensures that the loss is always finite; alternatively we could allow the loss to take the value infinity. Note that we define \(\mathcal{X}^* := \bigcup_{n=0}^\infty \mathcal{X}^n\) to be the set of all finite tuples of elements in \(\mathcal{X}\); we use subset notation \(x’ \subseteq x \) to denote that \(x’\) can be obtained by removing elements from \(x\) (and potentially permuting). &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:4&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Alas, there is a technical issue we need to deal with in order to apply the exponential mechanism: The loss function is far from continuous, so there may not exist any \(y\) such that \(|\ell(x,y)-\tau|&amp;lt;\tau\). For example, computing the maximum of the dataset \(x=(1,1,\cdots,1)\) gives a loss function with \(\ell(x,y)=0\) for all \(y \ge 1\) and \(\ell(x,y)=n\) for all \(y &amp;lt; 1\); i.e., no \(y\) gives \(0&amp;lt;\ell(x,y)&amp;lt;n\). The way we fix this issue is as follows. Observe that we can decompose \(|\ell(x,y)-\tau|=\max\{\ell(x,y)-\tau,\tau-\ell(x,y)\}\). Now we define a slightly different loss function: \[\overline{\ell}(x,y) := \min\{ \mathrm{dist}(x,\tilde{x}) : \tilde{x} \subseteq x, f(\tilde{x}) &amp;lt; y \}. \tag{A}\] Equation A defining \(\overline{\ell}(x,y)\) differs from &lt;a href=&quot;#loss&quot;&gt;Equation 4&lt;/a&gt; defining \(\ell(x,y)\) only in that we replace “\(\le\)” with “\(&amp;lt;\)”. The modified loss \(\overline\ell\) still has low sensitivity; the proof is identical to that of Proposition 3. Now we can run the exponential mechanism with the loss \[\ell^*(x,y) := \max\{\ell(x,y)-\tau,\tau-\overline{\ell}(x,y)\}. \tag{B}\] This loss has low sensitivity and, for \(\hat{y} = \min\{f(\tilde{x}):\tilde{x}\subseteq x, \mathrm{dist}(x,\tilde{x})\le\tau\}\), we have \(\ell(x,\hat{y})\le\tau\) and \(\overline{\ell}(x,\hat{y})&amp;gt;\tau\), which implies \(\ell^*(x,\hat{y}) \le 0\). Thus we can use \(\ell^*(x,y)\) in place of \(|\ell(x,y)-\tau|\) to fix this technical issue. Setting \(\tau=\left\lceil\frac{2}{\varepsilon}\log\left(\frac{|\mathcal{Y}|}{\beta}\right)\right\rceil\) and running the exponential mechanism with loss \(\ell^*\) yields Theorem 4. Specifically, the guarantee of the exponential mechanism is \(\mathbb{P}\left[ \ell^*(x,M(x)) &amp;lt; \frac{2}{\varepsilon}\log\left(\frac{|\mathcal{Y}|}{\beta}\right)\right]\ge 1-\beta\). Then \(\tau-\overline{\ell}(x,M(x)))&amp;lt; \frac{2}{\varepsilon}\log\left(\frac{|\mathcal{Y}|}{\beta}\right)\) implies \(\overline{\ell}(x,M(x))&amp;gt;0\), which implies \(M(x)\le f(x)\). Similarly, \(\ell(x,M(x))-\tau &amp;lt; \frac{2}{\varepsilon}\log\left(\frac{|\mathcal{Y}|}{\beta}\right)\) implies \(\ell(x,M(x))&amp;lt;2\tau\), which implies that \(M(x) \ge f(\tilde{x})\) for some \(\tilde{x}\subseteq x\) with \(\mathrm{dist}(x,\tilde{x})&amp;lt;2\tau\); by the definition of down sensitivity, \(|f(x)-f(\tilde{x})| \le \mathsf{DS}_f^{2\tau}(x)\) and so \(M(x) \ge f(\tilde{x}) \ge f(x) - \mathsf{DS}_f^{2\tau}(x)\), as required. &lt;a href=&quot;#fnref:4&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:4:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:5&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;To the best of our knowledge, differentially private binary search was first proposed by Blum, Ligett, and Roth [&lt;a href=&quot;https://arxiv.org/abs/1109.2229&quot; title=&quot;Avrim Blum, Katrina Ligett, Aaron Roth. A Learning Theory Approach to Non-Interactive Database Privacy. STOC 2008.&quot;&gt;BLR08&lt;/a&gt;]. This algorithmic idea has been used in various other papers [e.g., &lt;a href=&quot;https://arxiv.org/abs/1604.04618&quot; title=&quot;Mark Bun, Thomas Steinke, Jonathan Ullman. Make Up Your Mind: The Price of Online Queries in Differential Privacy. SODA 2017.&quot;&gt;BSU17&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1706.05069&quot; title=&quot;Vitaly Feldman, Thomas Steinke. Generalization for Adaptively-chosen Estimators via Stable Median. COLT 2017.&quot;&gt;FS17&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2106.10333&quot; title=&quot;Joerg Drechsler, Ira Globus-Harris, Audra McMillan, Jayshree Sarathy, Adam Smith. Non-parametric Differentially Private Confidence Intervals for the Median. 2021.&quot;&gt;DGMSS21&lt;/a&gt;] &lt;a href=&quot;#fnref:5&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:b&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Note that we can also use Gaussian noise instead of Laplace noise. This would yield a slightly better accuracy guarantee for the same concentrated differential privacy guarantee. Specifically, this would give \(\tau = O\left(\sqrt{\frac1\rho \cdot \log |\mathcal{Y}| \cdot \log \left( \frac{\log | \mathcal{Y} |}{\beta}\right)}\right)\). &lt;a href=&quot;#fnref:b&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:6&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;We can shave the loglog term in Theorem 5 to get \(\tau = \Theta(\sqrt{\log|\mathcal{Y}|})\) either by using a noise-tolerant version of binary search [&lt;a href=&quot;https://www.cs.cornell.edu/~rdk/papers/karpr2.pdf&quot; title=&quot;Richard M. Karp, Robert Kleinberg. Noisy binary search and its applications. SODA 2007.&quot;&gt;KK07&lt;/a&gt;] or by using non-independent noise [&lt;a href=&quot;https://journalprivacyconfidentiality.org/index.php/jpc/article/view/648/631&quot; title=&quot;Thomas Steinke, Jonathan Ullman. Between Pure and Approximate Differential Privacy. JPC 2016&quot;&gt;SU15&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2010.01457&quot; title=&quot;Arun Ganesh, Jiazheng Zhao. Privately Answering Counting Queries with Generalized Gaussian Mechanisms. 2020.&quot;&gt;GZ20&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2012.09116&quot; title=&quot;Badih Ghazi, Ravi Kumar, Pasin Manurangsi. On Avoiding the Union Bound When Answering Multiple Differentially Private Queries. COLT 2021.&quot;&gt;GKM21&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2012.03817&quot; title=&quot;Yuval Dagan, Gil Kur. A bounded-noise mechanism for differential privacy. COLT 2022.&quot;&gt;DK22&lt;/a&gt;]. &lt;a href=&quot;#fnref:6&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Tue, 12 Sep 2023 10:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/down-sensitivity/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/down-sensitivity/</guid>
      </item>
    
      <item>
        <title>Beyond Global Sensitivity via Inverse Sensitivity</title>
        <description>&lt;p&gt;The most well-known and widely-used method for achieving differential privacy is to compute the true function value \(f(x)\) and then add Laplace or Gaussian noise scaled to the &lt;em&gt;global sensitivity&lt;/em&gt; of \(f\). 
This may be overly conservative. In this post we’ll show how we can do better.&lt;/p&gt;

&lt;p&gt;The global sensitivity of a function \(f : \mathcal{X}^* \to \mathbb{R}\) is defined by \[ \mathsf{GS}_f := \sup_{x,x’\in\mathcal{X}^* : \mathrm{dist}(x,x’) \le 1} |f(x)-f(x’)|, \tag{1}\] where \(\mathrm{dist}(x,x’)\le 1\) denotes that \(x\) and \(x’\) are neighbouring datasets (i.e. they differ only by the addition, removal, or replacement of one person’s data); more generally, \(\mathrm{dist}(\cdot,\cdot)\) is the corresponding metric on datasets (i.e., Hamming distance).&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;The global sensitivity considers datasests that have nothing to do with the dataset at hand and which could be completely unrealistic.
Many functions have infinite global sensitivity, but, on reasonably nice datasets, their &lt;em&gt;local sensitivity&lt;/em&gt; is much lower.&lt;/p&gt;

&lt;h2 id=&quot;local-sensitivity&quot;&gt;Local Sensitivity&lt;/h2&gt;

&lt;p&gt;The \(k\)-local sensitivity&lt;sup id=&quot;fnref:a&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:a&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; of a function \(f : \mathcal{X}^* \to \mathbb{R}\) at \(x \in \mathcal{X}^*\) is defined by \[\mathsf{LS}^k_f(x) := \sup_{x’\in\mathcal{X}^* : \mathrm{dist}(x,x’) \le k} |f(x)-f(x’)|. \tag{2}\]
Often, we fix \(k=1\) and we may drop the superscript: \(\mathsf{LS}_f(x) := \mathsf{LS}_f^1(x)\).
Note that the local sensitivity is always at most the global sensitivity: \(\mathsf{LS}_f^k(x) \le k \cdot \mathsf{GS}_f\).&lt;/p&gt;

&lt;p&gt;As a concrete example, the median has infinite global sensitivity, but for realistic data the local sensitivity is quite reasonable. 
Specifically, \[\mathsf{LS}^k_{\mathrm{median}}(x_1, \cdots, x_n) = \max\left\{ \left|x_{(\tfrac{n+1}{2})}-x_{(\tfrac{n+1}{2}+k)}\right|, \left|x_{(\tfrac{n+1}{2})}-x_{(\tfrac{n+1}{2}-k)}\right| \right\},\tag{3}\] where \( x_{(1)} \le x_{(2)} \le \cdots \le x_{(n)}\) denotes the input in &lt;a href=&quot;https://en.wikipedia.org/wiki/Order_statistic&quot;&gt;sorted order&lt;/a&gt; and \(n\) is assumed to be odd, so, in particular, \(\mathrm{median}(x_1, \cdots, x_n) = x_{(\tfrac{n+1}{2})}\).
For example, if \(X_1, \cdots X_n\) are i.i.d. samples from a standard Gaussian and \(k \ll n\), then \(\mathsf{LS}^k_{\mathrm{median}}(X_1, \cdots, X_n) \le O(k/n)\) with high probability.&lt;/p&gt;

&lt;h2 id=&quot;using-local-sensitivity&quot;&gt;Using Local Sensitivity&lt;/h2&gt;

&lt;p&gt;Intuitively, the local sensitivity is the “real” sensitivity of the function and the global sensitivity is only a worst-case upper bound.
Thus it seems natural to add noise scaled to the local sensitivity instead of the global sensitivity.&lt;/p&gt;

&lt;p&gt;Unfortunately, naïvely adding noise scaled to local sensitivity doesn’t satisfy differential privacy. 
The problem is that the local sensitivity itself can reveal information.
For example, consider the median on the inputs \(x=(1,2,2),x’=(2,2,2)\). The output distributions of the algorithm on these two inputs must be similar.
In both cases the median is \(2\), so that is a good start for ensuring that the distributions are similar. 
But the local sensitivity is different: \(\mathsf{LS}^1_{\mathrm{median}}(x)=1\) versus \(\mathsf{LS}^1_{\mathrm{median}}(x’)=0\). 
So, if we add noise scaled to local sensitivity, then, on input \(x’\), we deterministically output \(2\), while, on input \(x\), we output a random number. If we use continuous Laplace or Gaussian noise, then the random number will be a non-integer almost surely. Thus the output perfectly distinguishes the two inputs, which is a catastrophic violation of differential privacy.&lt;/p&gt;

&lt;p&gt;The good news is that we can exploit local sensitivity; we just need to do a bit more work.
In fact, there are many methods in the differential privacy literature to exploit local sensitivity.&lt;/p&gt;

&lt;p&gt;The best-known methods for exploiting local sensitivity are &lt;em&gt;smooth sensitivity&lt;/em&gt; [&lt;a href=&quot;https://cs-people.bu.edu/ads22/pubs/NRS07/NRS07-full-draft-v1.pdf&quot; title=&quot;Kobbi Nissim, Sofya Raskhodnikova, Adam Smith. Smooth Sensitivity and Sampling in Private Data Analysis. STOC 2007.&quot;&gt;NRS07&lt;/a&gt;]&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt; and &lt;em&gt;propose-test-release&lt;/em&gt; [&lt;a href=&quot;https://www.stat.cmu.edu/~jinglei/dl09.pdf&quot; title=&quot;Cynthia Dwork, Jing Lei. Differential Privacy and Robust Statistics. STOC 2009.&quot;&gt;DL09&lt;/a&gt;]&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;

&lt;p&gt;In this post we will cover a different general-purpose technique. This technique is folklore.&lt;sup id=&quot;fnref:4&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:4&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;5&lt;/a&gt;&lt;/sup&gt; It was first systematically studied by Asi and Duchi [&lt;a href=&quot;https://arxiv.org/abs/2005.10630&quot; title=&quot;Hilal Asi, John Duchi. Near Instance-Optimality in Differential Privacy. 2020.&quot;&gt;AD20&lt;/a&gt;,&lt;a href=&quot;https://papers.nips.cc/paper/2020/hash/a267f936e54d7c10a2bb70dbe6ad7a89-Abstract.html&quot; title=&quot;Hilal Asi, John Duchi. Instance-optimality in differential privacy via approximate inverse sensitivity mechanisms. NeurIPS 2020.&quot;&gt;AD20&lt;/a&gt;], who also named the method the &lt;em&gt;inverse sensitivity mechanism&lt;/em&gt;.&lt;/p&gt;

&lt;h2 id=&quot;the-inverse-sensitivity-mechanism&quot;&gt;The Inverse Sensitivity Mechanism&lt;/h2&gt;

&lt;p&gt;Consider a function \(f : \mathcal{X}^* \to \mathcal{Y}\).
Our goal is to estimate \(f(x)\) in a differentially private manner.
But we do not make any assumptions about the global sensitivity of the function.&lt;/p&gt;

&lt;p&gt;For simplicity we will assume that \(\mathcal{Y}\) is finite and that \(f\) is &lt;a href=&quot;https://en.wikipedia.org/wiki/Surjective_function&quot;&gt;surjective&lt;/a&gt;.&lt;sup id=&quot;fnref:5&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:5&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;6&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Now we define a loss function \(\ell : \mathcal{X}^* \times \mathcal{Y} \to \mathbb{Z}_{\ge0}\) by \[\ell(x,y) := \min\left\{ \mathrm{dist}(x,\tilde{x}) : \tilde{x}\in\mathcal{X}^*, f(\tilde{x})=y \right\}.\tag{4}\]
In other words, \(\ell(x,y)\) measures how many entries of \(x\) we need to add or remove until \(f(x)=y\). 
Yet another way to think of it is that \(\ell(x,y)\) is the distance from the point \(x\) to the set \(f^{-1}(y)\). (Hence the name inverse sensitivity.)&lt;/p&gt;

&lt;p&gt;The loss is minimized by the desired answer: \(\ell(x,f(x))=0\). Intuitively, the loss \(\ell(x,y)\) increases as \(y\) moves further from \(f(x)\). So approximately minimizing this loss should produce a good approximation to \(f(x)\), as desired.&lt;/p&gt;

&lt;p&gt;The trick is that this loss always has bounded global sensitivity – i.e., \(\mathsf{GS}_\ell \le 1\) – no matter what the sensitivity of \(f\) is!&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Lemma 1.&lt;/strong&gt; Let \(f : \mathcal{X}^* \to \mathcal{Y}\) be arbitrary and define \(\ell : \mathcal{X}^* \times \mathcal{Y} \to \mathbb{Z}_{\ge0}\) as in Equation 4. Then, for all \(x,x’\in\mathcal{X}^*\) with \(\mathrm{dist}(x,x’)\le 1\) and all \(y \in \mathcal{Y}\), we have \(|\ell(x,y)-\ell(x’,y)|\le 1\).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt; 
Fix \(x,x’\in\mathcal{X}^*\) with \(\mathrm{dist}(x,x’)\le 1\) and \(y \in \mathcal{Y}\).
Let \(\widehat{x} \in\mathcal{X}^*\) satisfy \(\ell(x,y)=\mathrm{dist}(x,\widehat{x})\) and \(f(\widehat{x})=y\).
By definition, \[\ell(x’,y) = \min\left\{ \mathrm{dist}(x’,\tilde{x}) : f(\tilde{x})=y \right\} \le \mathrm{dist}(x’,\widehat{x}).\]
By the triangle inequality, \[\mathrm{dist}(x’,\widehat{x}) \le \mathrm{dist}(x’,x)+\mathrm{dist}(x,\widehat{x}) \le 1 + \ell(x,y).\]
Thus \(\ell(x’,y) \le \ell(x,y)+1\) and, by symmetry, \(\ell(x,y) \le \ell(x’,y)+1\), as required. ∎&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This means that we can run the exponential mechanism [&lt;a href=&quot;https://ieeexplore.ieee.org/document/4389483&quot; title=&quot;Frank McSherry, Kunal Talwar. Mechanism Design via Differential Privacy. FOCS 2007.&quot;&gt;MT07&lt;/a&gt;] to select from \(\mathcal{Y}\) using the loss \(\ell\).&lt;sup id=&quot;fnref:6&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:6&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;7&lt;/a&gt;&lt;/sup&gt; That is, the inverse sensitivity mechanism is defined by 
\[\forall y \in \mathcal{Y} ~~~~~ \mathbb{P}[M(x)=y] ;= \frac{\exp\left(-\frac{\varepsilon}{2}\ell(x,y)\right)}{\sum_{y’\in\mathcal{Y}}\exp\left(-\frac{\varepsilon}{2}\ell(x,y’)\right)}.\tag{5}\] 
By the properties of the exponential mechanism and Lemma 1, \(M\) satisfies differential privacy:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 2. (Privacy of the Inverse Sensitivity Mechanism)&lt;/strong&gt; Let \(M : \mathcal{X}^* \to \mathcal{Y}\) be as defined in Equation 5 with the loss from Equation 4. Then \(M\) satisfies \(\varepsilon\)-differential privacy (&lt;a href=&quot;/exponential-mechanism-bounded-range/&quot;&gt;and \(\frac18\varepsilon^2\)-zCDP&lt;/a&gt;).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id=&quot;utility-guarantee&quot;&gt;Utility Guarantee&lt;/h2&gt;

&lt;p&gt;The privacy guarantee of the inverse sensitivity mechanism is easy and, in particular, it doesn’t depend on the properties of \(f\).
This means that the utility will need to depend on the properties of \(f\).&lt;/p&gt;

&lt;p&gt;By the standard properties of the exponential mechanism, we can guaranatee that the output has low loss:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Lemma 3.&lt;/strong&gt; Let \(M : \mathcal{X}^* \to \mathcal{Y}\) be as defined in Equation 5 with the loss from Equation 4. For all inputs \(x \in \mathcal{X}^*\) and all \(\beta\in(0,1)\), we have \[\mathbb{P}\left[\ell(x,M(x)) &amp;lt; \frac2\varepsilon\log\left(\frac{|\mathcal{Y}|}{\beta}\right) \right] \ge 1-\beta.\tag{6}\]&lt;/p&gt;
&lt;/blockquote&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Proof.&lt;/em&gt;
Let \(B_x = \left\{ y \in \mathcal{Y} : \ell(x,y) \ge \frac2\varepsilon\log\left(\frac{|\mathcal{Y}|}{\beta}\right) \right\}\) be the subset of \(\mathcal{Y}\) with high loss.
Then \[ \mathbb{P}[M(x)\in B_x] = \frac{\sum_{y \in B_x} \exp\left(-\frac{\varepsilon}{2}\ell(x,y)\right)}{\sum_{y’\in\mathcal{Y}}\exp\left(-\frac{\varepsilon}{2}\ell(x,y’)\right)} \]\[ \le \frac{|B_x| \cdot \exp\left(-\frac{\varepsilon}{2}\frac2\varepsilon\log\left(\frac{|\mathcal{Y}|}{\beta}\right) \right)}{\exp\left(-\frac{\varepsilon}{2}\ell(x,f(x))\right)}\]\[= \frac{|B_x| \cdot \frac{\beta}{|\mathcal{Y}|}}{1} \le \beta, \] as required. ∎&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now we need to translate this loss bound into something easier to interpret – local sensitivity.&lt;/p&gt;

&lt;p&gt;Suppose \(y \gets M(x)\). Then we have some loss \(k=\ell(x,y)\). What this means is that there exists \(\tilde{x}\in\mathcal{X}^*\) with \(f(\tilde{x})=y\) and \(\mathrm{dist}(x,\tilde{x})\le k\). By the definition of local sensitivity, \(|f(x)-y| = |f(x)-f(\tilde{x})| \le \mathsf{LS}_f^k(x)\). This means we can translate the loss guarantee of Lemma 3 into an accuracy guarantee in terms of local sensitivity:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Theorem 4. (Utility of the Inverse Sensitivity Mechanism)&lt;/strong&gt; Let \(M : \mathcal{X}^* \to \mathcal{Y}\) be as defined in Equation 5 with the loss from Equation 4. For all inputs \(x \in \mathcal{X}^*\) and all \(\beta\in(0,1)\), we have \[\mathbb{P}\left[\left|M(x)-f(x)\right| \le \mathsf{LS}_f^k(x) \right] \ge 1-\beta,\tag{7}\] where \(k=\left\lfloor\frac2\varepsilon\log\left(\frac{|\mathcal{Y}|}{\beta}\right)\right\rfloor\).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We can tie this back to our concrete example of the median. Per Equation 3, \[\mathsf{LS}^k_{\mathrm{median}}(x_1, \cdots, x_n) \le \left|x_{(\tfrac{n+1}{2}+k)}-x_{(\tfrac{n+1}{2}-k)}\right| .\]
Thus the error guarantee of Theorem 4 for the median would scale with the spread of the data. E.g., if \(k=\tfrac{n+1}{4}\), then  \(\mathsf{LS}^k_{\mathrm{median}}(x_1, \cdots, x_n)\) is at most the interquartile range of the data.&lt;/p&gt;

&lt;p&gt;How does this compare with the usual global sensitivity approach?
The \(\varepsilon\)-differentially private Laplace mechanism is given by \(\widehat{M}(x):=f(x)+\mathsf{Laplace}(\mathsf{GS}_f/\varepsilon)\). For all \(x \in \mathcal{X}^*\) and all \(\beta\in(0,1/2)\), we have the utility guarantee \[\mathbb{P}\left[\left|\widehat{M}(x)-f(x)\right| \le \mathsf{GS}_f \cdot \frac1\varepsilon \log\left(\frac{1}{2\beta}\right) \right] \ge 1-\beta.\tag{8}\]
Comparing Equations 7 and 8, we see that neither guarantee dominates the other. On one hand, the local sensitivity can be much smaller than the global sensitivity. On the other hand, we pick up a dependence on \(\log|\mathcal{Y}|\). In particular, in the worst case where the local sensitivity matches the global sensitivity \(\mathsf{LS}_f^k(x)=k\cdot\mathsf{GS}_f\), the inverse sensitivity mechanism is worse by a factor of \[\frac{\mathsf{LS}_f^k(x)}{\mathsf{GS}_f \cdot \frac1\varepsilon \log\left(\frac{1}{2\beta}\right)} = 2 \frac{\log(2|\mathcal{Y}|)}{\log(1/2\beta)}+2.\tag{9}\]
Hence the inverse sensitivity mechanism is most useful in situations where the local sensitivity is significantly smaller than the global sensitivity.&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;In this post we’ve covered the inverse sensitivity mechanism and showed that it is private regardless of the sensitivity of the function \(f\) and we showed that it gives error guarantees that scale with the local sensitivity of \(f\), rather than its global sensitivity.&lt;/p&gt;

&lt;p&gt;The inverse sensitivity mechanism is a simple demonstration that there is more to differential privacy than simply adding noise scaled to global sensitivity; there are many more techniques in the literature.&lt;/p&gt;

&lt;p&gt;The inverse sensitivity mechanism has two main limitations. First, it is, in general, not computationally efficient. Computing the loss function is intractable for an arbitrary \(f\) (but can be done efficiently for several examples like the median and variants of principal component analysis and linear regression [&lt;a href=&quot;https://papers.nips.cc/paper/2020/hash/a267f936e54d7c10a2bb70dbe6ad7a89-Abstract.html&quot; title=&quot;Hilal Asi, John Duchi. Instance-optimality in differential privacy via approximate inverse sensitivity mechanisms. NeurIPS 2020.&quot;&gt;AD20&lt;/a&gt;]). Second, the \(\log|\mathcal{Y}|\) term in the accuracy guarantee is problematic when the output space is large, such as when we have high-dimensional outputs. 
While there are other techniques that can be used instead of inverse sensitivity, they suffer from some of the same limitations. Thus finding ways around these limitations is an &lt;a href=&quot;/colt23-bsp/&quot;&gt;active research topic&lt;/a&gt; [&lt;a href=&quot;https://arxiv.org/abs/1905.13229&quot; title=&quot;Mark Bun, Gautam Kamath, Thomas Steinke, Zhiwei Steven Wu. Private Hypothesis Selection. NeurIPS 2019.&quot;&gt;BKSW19&lt;/a&gt;,&lt;a href=&quot;https://cse.hkust.edu.hk/~yike/ShiftedInverse.pdf&quot; title=&quot;Juanru Fang, Wei Dong, Ke Yi. Shifted Inverse: A General Mechanism for Monotonic Functions under User Differential Privacy. CCS 2022.&quot;&gt;FDY22&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2212.05015&quot; title=&quot;Samuel B. Hopkins, Gautam Kamath, Mahbod Majid, Shyam Narayanan. Robustness Implies Privacy in Statistical Estimation. STOC 2023.&quot;&gt;HKMN23&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2301.07078&quot; title=&quot;John Duchi, Saminul Haque, Rohith Kuditipudi. A Fast Algorithm for Adaptive Private Mean Estimation. COLT 2023.&quot;&gt;DHK23&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2301.12250&quot; title=&quot;Gavin Brown, Samuel B. Hopkins, Adam Smith. Fast, Sample-Efficient, Affine-Invariant Private Mean and Covariance Estimation for Subgaussian Distributions. COLT 2023.&quot;&gt;BHS23&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/2302.01855&quot; title=&quot;Hilal Asi, Jonathan Ullman, Lydia Zakynthinou. From Robustness to Privacy and Back. 2023.&quot;&gt;AUZ23&lt;/a&gt;].&lt;/p&gt;

&lt;p&gt;The inverse sensitivity mechanism’s accuracy can be shown to be instance-optimal up to logarithmic factors [&lt;a href=&quot;https://arxiv.org/abs/2005.10630&quot; title=&quot;Hilal Asi, John Duchi. Near Instance-Optimality in Differential Privacy. 2020.&quot;&gt;AD20&lt;/a&gt;,&lt;a href=&quot;https://papers.nips.cc/paper/2020/hash/a267f936e54d7c10a2bb70dbe6ad7a89-Abstract.html&quot; title=&quot;Hilal Asi, John Duchi. Instance-optimality in differential privacy via approximate inverse sensitivity mechanisms. NeurIPS 2020.&quot;&gt;AD20&lt;/a&gt;]. That is, up to logarithmic factors, no differentially private mechanism can achieve better error guarantees. 
Up to logarithmic factors, the inverse sensitivity mechanism outperforms other methods for exploiting local sensitivity, namely smooth sensitivity [&lt;a href=&quot;https://cs-people.bu.edu/ads22/pubs/NRS07/NRS07-full-draft-v1.pdf&quot; title=&quot;Kobbi Nissim, Sofya Raskhodnikova, Adam Smith. Smooth Sensitivity and Sampling in Private Data Analysis. STOC 2007.&quot;&gt;NRS07&lt;/a&gt;]&lt;sup id=&quot;fnref:2:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt; and propose-test-release [&lt;a href=&quot;https://www.stat.cmu.edu/~jinglei/dl09.pdf&quot; title=&quot;Cynthia Dwork, Jing Lei. Differential Privacy and Robust Statistics. STOC 2009.&quot;&gt;DL09&lt;/a&gt;]&lt;sup id=&quot;fnref:3:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;4&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;

&lt;p&gt;We leave you with a riddle: What can we do if even the local sensitivity of our function is unbounded? For example, suppose we want to approximate \(f(x) = \max_i x_i\). Surprisingly, there are still things we can do; see &lt;a href=&quot;/down-sensitivity/&quot;&gt;our follow-up post&lt;/a&gt;.&lt;/p&gt;

&lt;hr /&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;We define \(\mathcal{X}^* = \bigcup_{n = 0}^\infty \mathcal{X}^n\) to be the set of all input tuples of arbitrary size. The metric \(\mathrm{dist} : \mathcal{X}^* \times \mathcal{X}^* \to \mathbb{R}\) can be arbitrary. E.g. we can allow addition, removal, and/or replacement of an individual’s data. For simplicity, we consider univariate functions here. But the definitions of global and local sensitivity easily extend to to vector-valued functions by taking a norm: \[ \mathsf{GS}_f := \sup_{x,x’\in\mathcal{X}^* : \mathrm{dist}(x,x’) \le 1} \|f(x)-f(x’)\|.\] If we use the 2-norm, then this cleanly corresponds to adding spherical Gaussian noise. The 1-norm corresponds to adding independent Laplace noise to the coordinates. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:a&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The local sensitivity is also known as the &lt;em&gt;local modulus of continuity&lt;/em&gt; [&lt;a href=&quot;https://arxiv.org/abs/2005.10630&quot; title=&quot;Hilal Asi, John Duchi. Near Instance-Optimality in Differential Privacy. 2020.&quot;&gt;AD20&lt;/a&gt;,&lt;a href=&quot;https://papers.nips.cc/paper/2020/hash/a267f936e54d7c10a2bb70dbe6ad7a89-Abstract.html&quot; title=&quot;Hilal Asi, John Duchi. Instance-optimality in differential privacy via approximate inverse sensitivity mechanisms. NeurIPS 2020.&quot;&gt;AD20&lt;/a&gt;]. Note that this should not be confused with the local sensitivity at distance \(k\) [&lt;a href=&quot;https://cs-people.bu.edu/ads22/pubs/NRS07/NRS07-full-draft-v1.pdf&quot; title=&quot;Kobbi Nissim, Sofya Raskhodnikova, Adam Smith. Smooth Sensitivity and Sampling in Private Data Analysis. STOC 2007.&quot;&gt;NRS07&lt;/a&gt;], which is defined by \(\sup \{ \mathsf{LS}_f^1(x’) : \mathrm{dist}(x,x’) \le k \}\). &lt;a href=&quot;#fnref:a&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Briefly, smooth sensitivity is an upper bound on the local sensitivity which itself has low sensitivity in a multiplicative sense. That is, \(\mathsf{LS}_f^1(x) \le \mathsf{SS}_f^t(x)\) and \(\mathsf{SS}_f^t(x) \le e^t \cdot \mathsf{SS}_f^t(x’) \) for neighbouring \(x,x’\). This suffices to ensure that we can add noise scaled to \(\mathsf{SS}_f^t(x)\). However, that noise usually needs to be more heavy-tailed than for global sensitivity [&lt;a href=&quot;https://proceedings.neurips.cc/paper/2019/hash/3ef815416f775098fe977004015c6193-Abstract.html&quot; title=&quot;Mark Bun, Thomas Steinke. Average-Case Averages: Private Algorithms for Smooth Sensitivity and Mean Estimation. NeurIPS 2019.&quot;&gt;BS19&lt;/a&gt;]. &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:2:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Roughly, the propose-test-release framework computes an upper bound on the local sensitivity in a differentially private manner and then uses this upper bound as the noise scale. (We hope to give more detail about both propose-test-release and smooth sensitivity in future posts.) &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt; &lt;a href=&quot;#fnref:3:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:4&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Properly attributing the inverse sensitivity mechanism is difficult. The  earliest published instances of the inverse sensitivity mechanism of which we are aware of are from 2011 and 2013 [&lt;a href=&quot;https://www.cs.columbia.edu/~rwright/Publications/pods11.pdf&quot; title=&quot;Darakhshan Mir, S. Muthukrishnan, Aleksandar Nikolov, Rebecca N. Wright. Pan-private algorithms via statistics on sketches. PODS 2011.&quot;&gt;MMNW11&lt;/a&gt;§3.1,&lt;a href=&quot;hhttps://www.ncbi.nlm.nih.gov/pmc/articles/PMC4681528/&quot; title=&quot;Aaron Johnson, Vitaly Shmatikov. Privacy-preserving data exploration in genome-wide association studies. KDD 2013.&quot;&gt;JS13&lt;/a&gt;§5]; but this was not novel even then. Asi and Duchi [&lt;a href=&quot;https://arxiv.org/abs/2005.10630&quot; title=&quot;Hilal Asi, John Duchi. Near Instance-Optimality in Differential Privacy. 2020.&quot;&gt;AD20&lt;/a&gt;§1.2] state that McSherry and Talwar [&lt;a href=&quot;https://ieeexplore.ieee.org/document/4389483&quot; title=&quot;Frank McSherry, Kunal Talwar. Mechanism Design via Differential Privacy. FOCS 2007.&quot;&gt;MT07&lt;/a&gt;] considered it in 2007. In any case, the name we use was coined in 2020 [&lt;a href=&quot;https://arxiv.org/abs/2005.10630&quot; title=&quot;Hilal Asi, John Duchi. Near Instance-Optimality in Differential Privacy. 2020.&quot;&gt;AD20&lt;/a&gt;]. &lt;a href=&quot;#fnref:4&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:5&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Assuming that the output space \(\mathcal{Y}\) is finite is a significant assumption. While it can be relaxed a bit [&lt;a href=&quot;https://papers.nips.cc/paper/2020/hash/a267f936e54d7c10a2bb70dbe6ad7a89-Abstract.html&quot; title=&quot;Hilal Asi, John Duchi. Instance-optimality in differential privacy via approximate inverse sensitivity mechanisms. NeurIPS 2020.&quot;&gt;AD20&lt;/a&gt;], it is to some extent an unavoidable limitation [&lt;a href=&quot;https://arxiv.org/abs/1504.07553&quot; title=&quot;Mark Bun, Kobbi Nissim, Uri Stemmer, Salil Vadhan. Differentially Private Release and Learning of Threshold Functions. FOCS 2015.&quot;&gt;BNSV15&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1806.00949&quot; title=&quot;Noga Alon, Roi Livni, Maryanthe Malliaris, Shay Moran. Private PAC learning implies finite Littlestone dimension. STOC 2019.&quot;&gt;ALMM19&lt;/a&gt;]. For example, to apply the inverse sensitivity mechanism to the median, we must discretize and bound the inputs; bounding the inputs does impose a finite global sensitivity, but the dependence on the bound is logarithmic, so the bound can be fairly large. Assuming that the function is surjective is a minor assumption that ensures that the loss in Equation 4 is always well-defined; otherwise we can define the loss to be infinite for points that are not in the range of the function. &lt;a href=&quot;#fnref:5&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:6&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Note that we can use other selection algorithms, such as permute-and-flip [&lt;a href=&quot;https://arxiv.org/abs/2010.12603&quot; title=&quot;Ryan McKenna, Daniel Sheldon. Permute-and-Flip: A new mechanism for differentially private selection. NeurIPS 2020.&quot;&gt;MS20&lt;/a&gt;] or report-noisy-max [&lt;a href=&quot;https://arxiv.org/abs/2105.07260&quot; title=&quot;Zeyu Ding, Daniel Kifer, Sayed M. Saghaian N. E., Thomas Steinke, Yuxin Wang, Yingtai Xiao, Danfeng Zhang. The Permute-and-Flip Mechanism is Identical to Report-Noisy-Max with Exponential Noise. 2021.&quot;&gt;DKSSWXZ21&lt;/a&gt;] or gap-max [&lt;a href=&quot;https://arxiv.org/abs/1409.2177&quot; title=&quot;Kamalika Chaudhuri, Daniel Hsu, Shuang Song. The Large Margin Mechanism for Differentially Private Maximization. NIPS 2014.&quot;&gt;CHS14&lt;/a&gt;,&lt;a href=&quot;https://dl.acm.org/doi/10.1145/3188745.3188946&quot; title=&quot; Mark Bun, Cynthia Dwork, Guy N. Rothblum, Thomas Steinke. Composable and versatile privacy via truncated CDP. STOC 2018.&quot;&gt;BDRS18&lt;/a&gt;,&lt;a href=&quot;https://arxiv.org/abs/1905.13229&quot; title=&quot;Mark Bun, Gautam Kamath, Thomas Steinke, Zhiwei Steven Wu. Private Hypothesis Selection. NeurIPS 2019.&quot;&gt;BKSW19&lt;/a&gt;]. &lt;a href=&quot;#fnref:6&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
        <author>
        
            <name>Thomas Steinke</name>
        
        </author>
        <pubDate>Tue, 05 Sep 2023 09:00:00 -0700</pubDate>
        <link>https://differentialprivacy.org/inverse-sensitivity/</link>
        <guid isPermaLink="true">https://differentialprivacy.org/inverse-sensitivity/</guid>
      </item>
    
  </channel>
</rss>
