在tf.nn.dropout中,keep_prob参数的作用是什么?

时间:2017-05-22 07:37:30

标签: tensorflow

我正在学习tf.nn.dropout命令。文档说,使用概率keep_prob,输出按1 / keep_prob按比例放大的输入元素,否则输出0.缩放是为了使预期的总和不变。有人可以解释为什么我们采取1 / keep_prob。如果我将其值设置为0.1。这是否意味着我只保留10%的节点?

1 个答案:

答案 0 :(得分:0)

比例因子设置为1/keep_prob,因为应在测试或评估时禁用丢失。请参阅tensorflow图层上的高级API:tf.layers.dropout

在测试或评估期间,每个单元的激活都是未缩放的。在训练期间,缩放因子1 / keep_prob确保预期的激活(keep_prob *(1 / keep_prob)= 1)与测试中的相同。 有关详细信息,请参阅此paper

假设图层中有10个单位并将keep_prob设置为0.1,那么10个中随机选择的9个单元的激活将被设置为0,剩下的单元将被缩放10倍。我认为更准确的描述是,您只能激活10%的节点。