![](/img/trans.png)
[英]Does tf.nn.l2_loss and tf.contrib.layers.l2_regularizer serve the same purpose of adding L2 regularization in tensorflow?
[英]Tensorflow - adding L2 regularization loss simple example
我熟悉機器學習,但是我正在閱讀大學的一些幻燈片,從而獨自學習Tensorflow。 下面,我僅使用一項功能設置線性回歸的損失函數。 我正在將L2損失添加到總損失中,但是我不確定自己是否做得正確:
# Regularization
reg_strength = 0.01
# Create the loss function.
with tf.variable_scope("linear-regression"):
W = tf.get_variable("W", shape=(1, 1), initializer=tf.contrib.layers.xavier_initializer())
b = tf.get_variable("b", shape=(1,), initializer=tf.constant_initializer(0.0))
yhat = tf.matmul(X, W) + b
error_loss = tf.reduce_sum(((y - yhat)**2)/number_of_examples)
#reg_loss = reg_strength * tf.nn.l2_loss(W) # reg 1
reg_loss = reg_strength * tf.reduce_sum(W**2) # reg 2
loss = error_loss + reg_loss
# Set up the optimizer.
opt_operation = tf.train.GradientDescentOptimizer(0.001).minimize(loss)
我的具體問題是:
我有兩條線(分別稱為reg 1
和reg 2
)來計算重量W
的L2損失。 標記為reg 1
的行使用Tensorflow內置函數。 這兩個L2實現是否等效?
我是否將正則化損失reg_loss
正確添加到最終損失函數中?
這兩個L2實現是否等效?
就像@fabrizioM指出的那樣,幾乎可以在這里看到TensorFlow文檔中l2_loss的介紹。
我是否將正則化損失reg_loss正確添加到最終損失函數中?
到現在為止還挺好 : )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.