关于 Batch Normalization 的介绍,参见知乎贴: https://www.zhihu.com/question/38102762
BN in Tensorflow
tf.contrib.layers.batch_norm(input, decay=0.9, updates_collections=None, epsilon=1e-5, scale=True, is_training=True, scope="bn")
该方法返回的是一个 tensor 。使用示例:
x = tf.placeholder(tf.float32, [64, 28,28,1])
w= tf.truncated_normal([5,5,1,32], stddev=0.1)
b = tf.constant(0.1, shape=[32])
h = tf.nn.conv2d(x, w, strides=[1, 1, 1, 1], padding='SAME') + b
h_bn = tf.contrib.layers.batch_norm(h, decay=0.9, updates_collections=None, epsilon=1e-5, scale=True, is_training=True, scope="bn")
h_r = tf.nn.relu(h_bn)