Need faster bisection when calculating privacy parameters
- Dominant language
- Jupyter Notebook
- Stars
- 358
- Forks
- 43
- Avg merge
- 9h 2m
- Merged PRs (30d)
- 2
Description
bisection in https://github.com/apple/pfl-research/blob/develop/pfl/privacy/privacy_accountant.py#L431 is currently slow.
The UX running the CIFAR10 notebook interactively is bad. Looks like it gets stuck initializing `PLDPrivacyAccountant`
, but it just takes ~30sec.
Something like Brent’s method or golden section can be used to speed up initialization of moments accountants that must use bisection to find the right epsilon.
(120412225)
Contributor guide
Research direction
Start at pfl/privacy/privacy_accountant.py around line 431 and reproduce the slow PLDPrivacyAccountant initialization through the CIFAR10 notebook. Compare a faster root-finding approach such as Brent’s method or golden-section search while preserving the privacy-parameter result. Done means initialization is faster and the notebook no longer appears stuck.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- jupyter-notebook, python
- Domain
- machine-learning, performance, security
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100