-
Notifications
You must be signed in to change notification settings - Fork 171
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
Implement CenteredClip in averager #379
base: master
Are you sure you want to change the base?
Conversation
07d8f5f
to
6621bb5
Compare
Codecov Report
@@ Coverage Diff @@
## master #379 +/- ##
==========================================
- Coverage 83.98% 83.68% -0.31%
==========================================
Files 70 71 +1
Lines 6383 6443 +60
==========================================
+ Hits 5361 5392 +31
- Misses 1022 1051 +29
|
6621bb5
to
fee6195
Compare
weights: torch.Tensor, | ||
tau: float = 1.0, | ||
n_iters: int = 20, | ||
stop_delta: Optional[float] = None, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
preference: let's default to some reasonable delta and a very large n steps
Random thoughts:
|
prev_diff = result | ||
|
||
# We only need to update `diff` (not `result`) between iterations | ||
diff.addmm_(-coeffs.repeat(n_peers, 1), diff) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
diff.addmm_(-coeffs.repeat(n_peers, 1), diff) | |
diff -= coeffs @ diff |
It seems like addmm_()
doesn't work correctly if the destination is equal to one of the operands.
MeanReducer
,CenteredClipReducer
(btw, why not*Aggregator
?)Factory
to smth else,make_reducer: Callable[...]