Hinton advocates tuning dropout in conjunction with tuning the size of your hidden layer. Increase your hidden layer size(s) with dropout turned off until you perfectly fit your data. Then, using the same hidden layer size, train with dropout turned on. This should be a nearly optimal configuration
隐藏层的良好初始配置是 50%。如果对输入层应用 dropout,最好不要超过 25%。
By intuition I'd like to dropout fewer neurons on the layers next to the input and drop more when approaching the end layers
如果我试图概括,我会说这一切都是为了平衡网络参数数量的增加而不会过度拟合。因此,例如,如果您从合理的架构和 dropout 数量开始,并且想要尝试增加某个层中的神经元数量,您可能希望按比例增加 dropout,以便不丢弃相同数量的神经元。如果对神经元来说p=0.5
是最优的,那么对100
神经元的一个很好的初步猜测200
是尝试p=0.75
.
此外,我感觉网络顶部附近的 dropout 可能比网络底部附近的 dropout 更具破坏性,因为它会阻止所有下游层访问该信息。
至于为什么普遍使用,我认为是因为在架构的所有重大选择都解决0.5
后,调整诸如 dropout 参数之类的东西确实是要做的事情。结果可能会更好,但需要做很多工作才能发现,如果你改变卷积网络的过滤器大小或改变总层数或做类似的事情,你将拥有重新优化该值。So被视为一种占位符值,直到我们处于追逐百分比或百分比的分数的阶段。0.10
0.5
原始论文和开头段落来自原始论文...