在chainer中,如何使用chainer.training.Trainer提前停止迭代?

2023-12-20

我正在使用 chainer 框架(深度学习),假设一旦两次迭代的目标函数值差距很小,我就必须停止迭代:f - old_f < eps。但 chainer.training.Trainer 的 stop_trigger 是 (args.epoch, 'epoch') 元组。如何触发提前停止?


您可以将可调用对象传递给stop_trigger选项。可调用对象在每次迭代时通过传递Trainer目的。它应该返回一个布尔值。当返回值为True,训练停止。为了实现提前停止,您可以编写自己的触发函数并将其传递给stop_trigger的选项Trainer.

其他接受触发器对象的 API 也接受可调用对象;看的文件get_trigger https://docs.chainer.org/en/stable/reference/core/generated/chainer.training.get_trigger.html#chainer.training.get_trigger了解详情。

注意:元组值stop_trigger是使用的简写符号chainer.training.triggers.IntervalTrigger作为可调用的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在chainer中,如何使用chainer.training.Trainer提前停止迭代? 的相关文章

随机推荐