0

假设我已经在其他数据库上预训练了网络。因为过拟合问题,我的数据库不是很多样化,所以过拟合问题很严重。我想在chainer v2.0中加载预训练的网络参数,但要修复前几层,在这种情况下,我应该在chainer v2.0中使用什么,我知道在chainer1.0中有volatile关键字,但在v2中已弃用.0.

在前几层处理时我应该使用with chainer.no_backprop_mode():inside吗?def __call__

4

1 回答 1

0

是的,您可以chainer.no_backprop_mode()在前向计算代码中使用上下文管理器来修复特定层的参数。这是一个例子:

def __call__(self, x):
    with chainer.no_backprop_mode():
        h1 = F.relu(self.l1(x))
    h2 = F.relu(self.l2(h1))
    return self.l3(h2)
于 2017-10-31T06:19:45.903 回答