-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Thanks for your excellent work and writing!
I noticed two comments in the code that highlight that the forward and backwards batches contain examples that are not selected.
- https://github.com/angelajiang/SelectiveBackprop/blob/master/lib/trainer.py#L171
- https://github.com/angelajiang/SelectiveBackprop/blob/master/lib/trainer.py#L247
Your paper suggests that only chosen examples are backpropped (Algorithm 1). The implementation looks different to me, in that it selects variable size batches depending on the index of the selected examples in the forward queue. These batches also include non-selected examples.
For Stale-SB the paper suggests that loss values are only updated once every N epochs. From the code I get that that examples from a backwards queue with mix of selected and not-selected examples could be updated more often. I guess this does not happen in practice because all examples share the same epoch number and that is the only property that StaleSelector uses.
Am I overlooking something? Or was this choice made on purpose?