Skip to content

Commit 2be899b

Browse files
Deepak Agrawalfacebook-github-bot
authored andcommitted
Throws an error when params in optimizer are not the same as that of module's in make_private
Summary: Compare nn.Module.parameters() with list of parameters from all param_groups of optimizer. If they are all not equal then raise error "Module parameters are different than optimizer Parameters" Differential Revision: D37163873 fbshipit-source-id: a1d3302e1e7098129b6ae8f1eab52d335b62e20e
1 parent d079ffd commit 2be899b

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

opacus/privacy_engine.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -360,6 +360,9 @@ def make_private(
360360
if noise_generator and self.secure_mode:
361361
raise ValueError("Passing seed is prohibited in secure mode")
362362

363+
if list(module.parameters()) != sum([param_group['params'] for param_group in optimizer.param_groups], []):
364+
raise ValueError("Module parameters are different than optimizer Parameters")
365+
363366
distributed = isinstance(module, (DPDDP, DDP))
364367

365368
module = self._prepare_model(

0 commit comments

Comments
 (0)