Skip to content

Spec the multi-epoch unoptimization #211

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

martinthomson
Copy link
Member

@martinthomson martinthomson commented Jun 20, 2025

Prior to this, the algorithm for deducting privacy budget used the L1 norm of the histogram, which the analysis shows is only possible when impressions from a single epoch are involved.

Again, this is pretty suboptimal if implemented directly, which is a recurring pattern. This iterates over all impressions twice. I didn't bother to cache the impressions that were selected. I didn't even bother to break out of the loop when the count hits two. Those would just make the "code" harder to read than it already is.

This is contrary to what is implied in #78.
Still, this closes #78, just in the opposite way to what was invisaged.


Preview | Diff

Prior to this, the algorithm for deducting privacy budget used the L1
norm of the histogram, which the analysis shows is only possible when
impressions from a single epoch are involved.

Again, this is pretty suboptimal if implemented directly, which is a
recurring pattern.  This iterates over all impressions twice.  I didn't
bother to cache the impressions that were selected.  I didn't even
bother to break out of the loop when the count hits two.  Those would
just make the "code" harder to read than it already is.

This is contrary to what is implied in #78.
Still, this closes #78, just in the opposite way to what was invisaged.
@martinthomson martinthomson requested a review from csharrison June 20, 2025 05:42
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

Successfully merging this pull request may close these issues.

Spec the single epoch optimization
1 participant