[tf]使用contrib中的函数进行l2正则化,以及colle

2018-12-16  本文已影响19人  VanJordan
loss = tf.reduce_mean ( tf.square( y_ - y) )+ tf.contrib.layers.l2_regularizer(lambda)(w)

如果参数过多的话一个一个的写很麻烦,我们可以使用collection的机制进行批量正则化。

def get_weight(shape , lambda=0.0001):
    var = tf.Variable(tf.random_normal( shape ), dtype = tf.float32)
    tf.add_to_collection('losses', tf.contrib.layers.l2_regularizer(lambda)(var))
    return var

mse_loss = tf.reduce_mean( tf.square(y_ - cur_layer))
tf.add_to_collection('losses', mse_loss)
loss = tf.add_n(tf.get_collection('losses'))
上一篇 下一篇

猜你喜欢

热点阅读