2016-01-25 13 views

答えて

8

TensorFlowのオプティマイザの一部ではありません。

が重みにL2損失とコスト関数に追加のペナルティを追加することにより、ところが、含めることは容易である:

C = <your initial cost function> 
l2_loss = tf.add_n([tf.nn.l2_loss(v) for v in tf.trainable_variables()]) 
C = C + lambda * l2_loss 

tf.nn.l2_loss(v)link単に0.5 * tf.reduce_sum(v * v)であり、個々の重みのための勾配は等しくなりlambda * wにリンクされています。リンクされている式と同じである必要があります。

+0

ありがとうございます。私もTheanoでこの部分を実装していますが、それはうまくいきました。しかし、私はテンソルフローでこれを試しても、まだ期待される結果を得ることはできません。彼らの間には何が違うのですか?確認してください:http://stackoverflow.com/questions/35488019/whats-different-about-momentum-gradient-update-in-tensorflow-and-thea-like-th –

+0

他のスレッドで回答しました。 –

+0

これらはtf.trainable_variables()であるため、この損失にバイアスを含まないように注意してください。 – gizzmole

関連する問題