如何在 PyTorch Lightning 中编写多个训练设置

Posted

技术标签:

【中文标题】如何在 PyTorch Lightning 中编写多个训练设置【英文标题】:How to write multiple training settings in PyTorch Lightning 【发布时间】:2020-08-28 14:06:18 【问题描述】:

我想迭代量化我的模型。这意味着在通常在training_step 中实现的正常训练循环之后,我想迭代地量化一些参数并重新训练模型几个步骤。

我真的不知道如何在 Lightning 中完成此操作。我可以在类中添加一个新实例,但是我必须自己再次编写训练循环?

【问题讨论】:

【参考方案1】:

也许,您可以在training_step 中添加类似的内容:

step = self.global_step
if step % quantization_period == 0 and step > 0:
    self.submodules[step // quantization_period].half()

您还可以覆盖 LightningModule.on_epoch_end(self) 以在每个训练周期后执行某些操作。

【讨论】:

以上是关于如何在 PyTorch Lightning 中编写多个训练设置的主要内容,如果未能解决你的问题,请参考以下文章

如何在 pytorch-lightning 中使用 TensorBoard 记录器转储混淆矩阵?

如何禁用 PyTorch-Lightning 记录器的日志记录?

pytorch lightning使用(简要介绍)

如何在 Pytorch Lightning 中使用 numpy 数据集

如何在 PyTorch Lightning 中获得所有时期的逐步验证损失曲线

如何在树莓派 pi3 中安装模块 pytorch_lightning.metrics