【问题标题】:Is there any way to preserve the internal variables of a trainer in MxNet?有什么方法可以在 MxNet 中保留培训师的内部变量?
【发布时间】:2018-08-06 14:57:56
【问题描述】:

我编写了一个程序,其中包含一种称为分布式随机梯度下降 (DRGD) 的算法。算法中有一些内部变量用于计算步长。训练算法应该比 DRGD 复杂得多,因此应该有更多的内部变量。如果我们保留这些变量,我们可以暂停训练并测试模型;然后,我们将再次恢复训练。

【问题讨论】:

  • 这是一个错误的问题。我的错,对不起。

标签: machine-learning mxnet


【解决方案1】:

在使用 MXNet Gluon 进行训练期间,可以通过在 Trainer 类上调用 .save_states().load_states() 函数来保存训练器的状态并恢复训练。

这是一个例子:

trainer = gluon.Trainer(net.collect_params(), 'adam')
trainer.save_states('training.states')
trainer.load_states('training.states')

【讨论】:

    【解决方案2】:

    如果您想跨多个设备(GPU 或机器)存储一些数据,您可以使用 KVStore。这是the tutorial 的使用方法。

    请注意,KVStore 被认为是一项相当高级的功能,应谨慎使用。

    我不确定,但您在 MXNet 世界中所谓的“培训师”实际上可能被称为“优化师”。所以,请考虑阅读this API page

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-18
      • 2021-08-10
      • 2021-11-28
      • 2017-08-18
      • 2011-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多