我正在对视频序列进行分类,我需要两件事:
由于GPU内存有限,我想在小批量累积渐变,然后平均渐变值,然后反向传播。
我需要知道如何在每个迷你批次中小批量而不是随机播放,因为我希望视频序列保持其顺序。
答案 0 :(得分:0)
问题1: 你可以转发和后退每个小批量,但不会调用optimizer.update(),重复前进和后退对于必要的小批量向后,您可以根据累积的渐变调用 optimizer.update()进行更新。
如果您想使用trainer
模块实现它,我认为您需要覆盖StandardUpdater
以定义您自己的Updater
类来执行上述操作。
问题2:
你在使用trainer
模块吗?
如果是这样,您可以定义自己的迭代器来实现此目的。另请参见下文,以获取有关如何定义迭代器类的参考。