概述
Tsensorflow-Slim工具可以更加简洁地实现一个卷积层。通过Tensorflow-Slim可以在一行中实现一个卷积层的前向传播算法。slim.conv2d函数的有3个参数是必须的。第一个参数为输入节点矩阵,第二个参数为当前卷积层过滤器的深度,第三个参数是过滤器的尺寸。可选的参数有过滤器移动的步长,是否使用全0填充,激活函数的选择以及变量命令空间等。
net = slim.conv2d(input, 32, [3, 3])
slim.arg_scope
slim.arg_scope函数可以用于设置默认的参数取值。slim.arg_scope函数的第一个参数是一个函列表,在这个列表中的函数将使用默认的参数取值。比如通过下面的定义,调用slim.conv2d(net, 320, [1, 1])函数时会自动加上stride=1和padding='SAME’的参数。如果在函数调用时制定了stride,那么这里设置的默认值就不会再使用。通过这种方式可以进一步减少冗余代码。
with slim.arg_scope([slim.conv2d, slim.max_pool2d, slim.avg_pool2d], stride=1, padding = "VALID")