You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi, I wanted to check about a factor of 2 in the implementation regarding the conversion \Lambda = 1 / (2 n C) as discussed in a previous PR #10
In Corollary 11 of [CMS18] their regularization term N(f) = 1/2 ||f||^2 so their proof takes into account the 1/2 factor in the objective formulation (that is, J = 1/n sum(loss) + 1/2 \Lambda ||f||^2 ), just like in the sklearn objective which is J= C*sum(loss) + 1/2 w^t w . So if this is the case then the conversion should be \Lambda = 1 / (n C), and \Lambda = alpha / n, which implies in your code 0.5 * alpha would just be alpha
e.g.
Hi, I wanted to check about a factor of 2 in the implementation regarding the conversion
\Lambda = 1 / (2 n C)
as discussed in a previous PR #10In Corollary 11 of [CMS18] their regularization term N(f) = 1/2 ||f||^2 so their proof takes into account the 1/2 factor in the objective formulation (that is,
J = 1/n sum(loss) + 1/2 \Lambda ||f||^2
), just like in the sklearn objective which isJ= C*sum(loss) + 1/2 w^t w
. So if this is the case then the conversion should be\Lambda = 1 / (n C)
, and\Lambda = alpha / n
, which implies in your code 0.5 * alpha would just be alphae.g.
differential-privacy-library/diffprivlib/mechanisms/vector.py
Line 139 in e9bbdb7
Thank you
The text was updated successfully, but these errors were encountered: