如何在TensorFlow-Slim中使用正则化?

Tav*_*oli 3 regularized tensorflow tf-slim

我想在我的代码中使用正则化.我使用slim来创建conv2d,如下所示:

slim.conv2d(input, 256, [1, 1], stride=1,  padding='SAME', scope='conv1')
Run Code Online (Sandbox Code Playgroud)

如何为此添加正则化?我怎样才能用它来规范我的损失呢?

Ser*_*ama 7

是的只是可以添加一个参数

weights_regularizer=slim.l2_regularizer(0.001)
Run Code Online (Sandbox Code Playgroud)

或者您可以使用slim.arg_scope来设置多个层的正则化:

with slim.arg_scope([slim.conv2d],
                    padding='SAME',
                    weights_regularizer=slim.l2_regularizer(0.001)):
      net = slim.conv2d(input, 256, [1, 1], scope='conv1')
      net = slim.conv2d(net, 256, [1, 1], scope='conv2')
Run Code Online (Sandbox Code Playgroud)

  • 你可以使用`slim.losses.get_regularization_losses()`来收集你在模型中定义的所有正则化损失. (3认同)