在 chainer 中,如何使用 chainer.GradientMethod 以及如何自定义定义参数更新规则

in chainer, how to use chainer.GradientMethod and how to customize define parameter update rule

我在https://docs.chainer.org/en/stable/reference/core/generated/chainer.GradientMethod.html?highlight=gradient中找到了一个class,它有一个叫做create_update_rule()的函数,我的需求是定义一个向后梯度的函数,假设我想写下面的代码:

W[i] -= gradient[i] * learning_rate;

其中 W 是我 Function/Layer 的参数,但我不知道链接器默认优化器如何更新参数?是 += 还是 -=

每个优化器,例如 SGD 优化器,都是 GradientMethod 的子 class。 每个优化器都有自己的 UpdateRule.

参见SGD's update rule计算

W[i] -= gradient[i] * learning_rate