1. 程式人生 > >tf卷積層外加BN實現

tf卷積層外加BN實現

def conv_layer(inpt, filter_shape, stride):
out_channels = filter_shape[3]

    filter_ = weight_variable(filter_shape)
    conv = tf.nn.conv2d(inpt, filter=filter_, strides=[1, stride, stride, 1], padding="SAME")
    mean, var = tf.nn.moments(conv, axes=[0,1,2])#計算一階矩(均值),以及二階矩(方差)
beta = tf.Variable
(tf.zeros([out_channels]), name="beta") gamma = weight_variable([out_channels], name="gamma") batch_norm = tf.nn.batch_norm_with_global_normalization( conv, mean, var, beta, gamma, 0.001, scale_after_normalization=True) out = tf.nn.relu(batch_norm) return out