TensorFlow batch normalize的使用

TensorFlow batch normalize的使用

batch normalize 经常与CNN搭配使用,据一些研究表面,在RNN层数不是很深的时候使用batch normalize是会用损害作用的。下面介绍下TensorFlow bath normalize的用法

tf.layers.batch_normalization()

直接把想normalize的张量传入此函数即可,不过需要注意的是,其有一个training参数,通过设置此参数用来区分此时是训练阶段还是验证或测试阶段。

然而,不要以为这样操作就完了,还需要对这个normalize层里面的一些ops进行更新

 update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS)
 with tf.control_dependencies(update_ops):
	train_op = optimizer.minimize(loss)

这样就能在训练的时候进行normalize层的参数更新了

原文地址:https://www.cnblogs.com/crackpotisback/p/8108666.html