Create an `optim.Optimizer` from `opt_func` with `lr`. Set lr on `layer_groups`.
(cls, opt_func, lr,
layer_groups, **kwargs)
| 110 | |
| 111 | @classmethod |
| 112 | def create(cls, opt_func, lr, |
| 113 | layer_groups, **kwargs): |
| 114 | "Create an `optim.Optimizer` from `opt_func` with `lr`. Set lr on `layer_groups`." |
| 115 | split_groups = split_bn_bias(layer_groups) |
| 116 | opt = opt_func([{'params': trainable_params(l), 'lr': 0} for l in split_groups]) |
| 117 | opt = cls(opt, **kwargs) |
| 118 | opt.lr, opt.opt_func = listify(lr, layer_groups), opt_func |
| 119 | return opt |
| 120 | |
| 121 | def new(self, layer_groups): |
| 122 | "Create a new `OptimWrapper` from `self` with another `layer_groups` but the same hyper-parameters." |
no test coverage detected