首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在TensorFlow中添加正则化?

如何在TensorFlow中添加正则化?
EN

Stack Overflow用户
提问于 2016-05-09 03:04:56
回答 10查看 82.8K关注 0票数 96

我在许多可用的使用TensorFlow实现的神经网络代码中发现,正则化项通常是通过在损失值中添加一个附加项来实现的。

我的问题是:

  1. 是否有一种比手动更优雅或推荐的正则化方法?
  2. 我还发现get_variable有一个论点,regularizer。它应该如何使用?根据我的观察,如果我们将正则化项传递给它(例如tf.contrib.layers.l2_regularizer ),将计算一个表示正则项的张量,并将其添加到一个名为tf.GraphKeys.REGULARIZATOIN_LOSSES的图集合中。该集合会被TensorFlow自动使用(例如,在培训时被优化器使用)?还是希望我自己使用这些藏品?
EN

Stack Overflow用户

发布于 2018-05-07 07:51:32

代码语言:javascript
复制
cross_entropy = tf.losses.softmax_cross_entropy(
  logits=logits, onehot_labels=labels)

l2_loss = weight_decay * tf.add_n(
     [tf.nn.l2_loss(tf.cast(v, tf.float32)) for v in tf.trainable_variables()])

loss = cross_entropy + l2_loss
票数 2
EN
查看全部 10 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37107223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档