当前位置:   article > 正文

pytorch scheduler.step() .to(device)_scheduler.step()放在哪里

scheduler.step()放在哪里

optimizer.step()和scheduler.step()的区别
optimizer.step()通常用在每个mini-batch之中,而scheduler.step()通常用在epoch里面,但是不绝对,可以根据具体的需求来做。只有用了optimizer.step(),模型才会更新,而scheduler.step()是对lr进行调整。通常我们有



optimizer = optim.SGD(model.parameters(), lr = 0.01, momentum = 0.9)
scheduler = lr_scheduler.StepLR(optimizer, step_size = 100, gamma = 0.1)
model = net.train(model, loss_function, optimizer, scheduler, num_epochs = 100)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在scheduler的step_size表示scheduler.step()每调用step_size次,对应的学习率就会按照策略调整一次。所以如果scheduler.step()是放在mini-batch里面,那么step_size指的是经过这么多次迭代,学习率改变一次


作者:_rookie_coder
来源:CSDN
原文:https://blog.csdn.net/qq_20622615/article/details/83150963
版权声明:本文为博主原创文章,转载请附上博文链接!

2、to(device)方法
Tensor的device属性可以给出其torch.device(get_d

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/715990
推荐阅读
相关标签
  

闽ICP备14008679号