【问题标题】:DropoutWrapper in tensorflow and test time scaling张量流中的 DropoutWrapper 和测试时间缩放
【发布时间】:2018-01-28 01:53:33
【问题描述】:

我在CS231n class 中了解到,在测试期间,我们需要按照我们用作训练退出概率的相同因子来缩放激活。在 tensorflow 中使用 DropoutWrapper 时,我看不到任何允许我进行此测试时间缩放的参数。

为什么不见了? RNN 有必要吗?正确的做法是什么?

【问题讨论】:

    标签: tensorflow rnn


    【解决方案1】:

    您不需要对推理进行缩放,因为tf.nn.dropout 在训练时应用缩放(来自tf.nn.dropout documentation):

    概率为keep_prob,输出放大了1 / keep_prob的输入元素,否则输出0。缩放是为了使预期总和保持不变。

    【讨论】:

    • 我的问题是关于 RNN 的 DropoutWrapper (github.com/tensorflow/tensorflow/blob/…),我没有看到它的文档和源代码中都没有提到缩放
    • 行为相同,可以在代码中查看。
    • 我刚刚注意到它不能正常工作 - 当我将概率设置为 1.0 时,我的输出大约是它应该的一半。在训练期间,我使用了 0.5 的概率。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-01
    • 1970-01-01
    • 2017-08-16
    • 2016-11-08
    • 2019-01-17
    相关资源
    最近更新 更多