Как определить скорость обучения на уровне в mxnet.gluon? - PullRequest
0 голосов
/ 25 ноября 2018

Я знаю, что можно заморозить слои в сети, например, чтобы обучить только последние слои предварительно обученной модели.Тем не менее, я хочу знать, есть ли способ применить определенные уровни обучения к различным слоям.Например, в pytorch это будет:

    optimizer = torch.optim.Adam([
                    {'params': paras['conv1'], 'lr': learning_rate / 10},
                    {'params': paras['middle'], 'lr': learning_rate / 3},
                    {'params': paras['fc'], 'lr': learning_rate }
                 ], lr=learning_rate)

Интерфейсы глюона и факела почти одинаковы.Любая идея, как я могу сделать это в глюоне?

1 Ответ

0 голосов
/ 29 ноября 2018

Вы можете настроить скорость обучения в каждом слое, изменив lr_mult:

for key, value in model.collect_params().items():
   print value.lr_mult
...