Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About the bisection method used for converting RDP to approximate DP #36

Open
spliew opened this issue Aug 17, 2022 · 1 comment
Open

Comments

@spliew
Copy link

spliew commented Aug 17, 2022

Thanks for the great work!
Not sure if I should submit the issue here, but let me just do it anyway.

In the paper, it is suggested that one should use bisection to solve Equation 2 efficiently, inferring that the sum of a monotonically increasing function and a monotonically decreasing function is quasi-convex/unimodal (Corollary 38).
This however does not seem to be correct as the sum of these functions is not always quasi-convex/unimodal. See this example.

Therefore, it seems to me that one could not use bisection to convert RDP to approximate DP to arbitrary precision since the optimization is not quasi-convex/unimodal?

@yuxiangw
Copy link
Owner

Thanks for the question! Maybe take a look at the proof of Corollary 32 here: https://journalprivacyconfidentiality.org/index.php/jpc/article/view/723/702

It doesn't work for any arbitrary RDP bound, but if they are instantiated by one pair of distributions, i.e., they are the Renyi divergence (or log-CGF) of a particular pair of distributions then it works.

The other thing is that if you have weirdly looking RDP bound that doesn't satisfy the properties, you may consider projecting it first into a feasible region using what we wrote on Page 24 of the above paper titled Projecting a CGF upper bound.

Lastly, even if you do not do any projection, the bisection approach will return some solution (not necessarily optimal alpha), but the resulting approx-DP bound you to get will be a valid DP guarantee.

Happy to discuss further.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants