这是从cifar10-tutorial中截取的代码。它来自cifar10.py。
# conv1
with tf.variable_scope('conv1') as scope:
kernel = _variable_with_weight_decay('weights', shape=[5, 5, 3, 64],
stddev=1e-4, wd=0.0)
conv = tf.nn.conv2d(images, kernel, [1, 1, 1, 1], padding='SAME')
biases = _variable_on_cpu('biases', [64], tf.constant_initializer(0.0))
bias = tf.nn.bias_add(conv, biases)
conv1 = tf.nn.relu(bias, name=scope.name)
_activation_summary(conv1)
# pool1
pool1 = tf.nn.max_pool(conv1, ksize=[1, 3, 3, 1], strides=[1, 2, 2, 1],
padding='SAME', name='pool1')
# norm1
norm1 = tf.nn.lrn(pool1, 4, bias=1.0, alpha=0.001 / 9.0, beta=0.75,
name='norm1')
tf.nn.lrn-Method有什么作用?我在https://www.tensorflow.org/versions/r0.8/api_docs/python/index.html
上的API文档中找不到定义答案 0 :(得分:10)
tf.nn.lrn
是tf.nn.local_response_normalization
的缩写。
因此,您可能希望查看的文档是:https://www.tensorflow.org/api_docs/python/tf/nn/local_response_normalization
答案 1 :(得分:3)
提到nessuno时,tf.nn.lrn
是tf.nn.local_response_normalization
(documentation)
此外,this question为响应规范化层的更多信息提供了良好的资源。
来自: http://caffe.berkeleyvision.org/tutorial/layers.html#data-layers
“局部响应归一化层通过对局部输入区域进行归一化来执行一种”横向抑制“。在ACROSS_CHANNELS模式中,局部区域延伸到附近的通道,但没有空间范围(即,它们的形状为local_size x 1 x 1)。在WITHIN_CHANNEL模式下,局部区域在空间上延伸,但是在单独的通道中(即,它们具有形状1 x local_size x local_size)。每个输入值除以(1 +(α/ n)Σix2i)β ,其中n是每个局部区域的大小,并且总和取自以该值为中心的区域(必要时添加零填充)。“
这些层次已经失宠,因为它们对结果的影响非常小,其他技术被证明更有利。