我一直在从事与用于时间序列预测的序列到序列自动编码器相关的项目。所以,我tf.contrib.rnn.MultiRNNCell
在编码器和解码器中使用过。我很困惑使用哪种策略来规范我的 seq2seq 模型。我应该在损失中使用 L2 正则化还是tf.contrib.rnn.DropoutWrapper
在 multiRNNCell 中使用 DropOutWrapper ()?或者我可以同时使用这两种策略...... L2 用于权重和偏差(投影层)以及 multiRNNCell 中的单元格之间的 DropOutWrapper 吗?提前致谢 :)
问问题
625 次
1 回答
0
您可以像通常那样同时使用 dropout 和 L2 正则化。它们是完全不同类型的正则化。但是,我会注意到,最近的文献表明,批量规范化已经取代了原始论文中关于批量规范化的 dropout 的需要:
https://arxiv.org/abs/1502.03167
摘要:“它还充当正则化器,在某些情况下消除了对 Dropout 的需求。”
L2 正则化通常在使用 batchnorm 时应用。没有什么能阻止您应用所有 3 种形式的正则化,上面的陈述仅表明您可能看不到在已经使用 batchnorm 时应用 dropout 的改进。
对于要应用的 L2 正则化量和 dropout 保持概率,通常存在最佳值。这些是您通过反复试验或超参数搜索算法调整的超参数。
于 2018-04-23T21:24:53.127 回答