上代码
a = tf.constant([2.0,3.0,4.0])
b = tf.contrib.layers.l1_regularizer(1.0)(a)
c = tf.contrib.layers.l2_regularizer(1.0)(a)
with tf.Session() as sess:
print(sess.run(a))
#输出L1 正则化,计算方法(|2.0|+|3.0|+|4.0|)*1 = 9
print(sess.run(b))
#输出L2 正则化(2^2+3^2+4^2)*1/2 = 14.5
print(sess.run(c))
输出:
L1的计算公式
设张量a
L(a)=||a||=∑i=0n|ai|
L2的计算公式
设张量a
L(a)=||a||22=∑ni=0ai22
转自: