Skip to content

Conversation

@jeffdonahue
Copy link
Contributor

In #2866 I added vector<int> learnable_param_ids_, which was supposed to be a mapping from params_ indices to learnable_params_ indices used to check that lr_mult and decay_mults matched up. I screwed this up by only appending IDs of owner params, and forgetting to add IDs for sharing (non-owning) params. I think the only resulting problem (given that learnable_param_ids_ is only read in one place) is that you could run into false positives or false negatives with the check that {lr,decay}_mults of shared parameters are equal. Very sorry for the trouble if this happened to you.

Thanks to @Otkrist for reporting this issue! (He was using shared params and ran into a the lr_mult mismatch check failure when using the same lr_mult for all params. He verified that this patch fixes the issue for him.)

@jeffdonahue
Copy link
Contributor Author

Merging after discussion with @shelhamer and @longjon as this is a bugfix that may be causing user issues. I should eventually add unit tests as noted in #2910.

jeffdonahue added a commit that referenced this pull request Aug 11, 2015
@jeffdonahue jeffdonahue merged commit 8181870 into BVLC:master Aug 11, 2015
@jeffdonahue jeffdonahue deleted the learnable-param-id-fix branch August 11, 2015 21:25
@ronghanghu ronghanghu mentioned this pull request Aug 13, 2015
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.

1 participant