【发布时间】:2017-09-26 19:22:35
【问题描述】:
我读到了 Keras 的 dropout 实现,它似乎使用了它的反向 dropout 版本,即使它说的是 dropout。
这是我在阅读 Keras 和 Tensorflow 文档时所理解的:
当我指定Dropout(0.4) 时,0.4 意味着该层中的每个节点都有 40% 的机会被丢弃,这意味着 0.4 是丢弃概率。因此,通过反向 dropout 的概念,剩余神经元的输出被缩放 1/0.6 倍,因为保持概率为 0.6。
(如果我的解释不正确,请指出。我的全部疑问都是基于这种解释。)
另一方面,在 TensorFlow 中,它只是直接询问保持概率,这意味着如果我将值指定为 0.4,则每个节点都有 60% 的机会被丢弃。
那么当我在 Keras 的后端使用 TensorFlow 时会发生什么?保持或丢弃概率需要 0.4 吗?
(使用 Python 3.6 和所有必需库的最新版本)
【问题讨论】:
标签: python-3.x tensorflow keras regularized