我从这个答案中了解如何使用 MC dropout ,但我不明白 MC dropout 是如何工作的,它的目的是什么,以及它与正常 dropout 有何不同。
什么是蒙特卡洛辍学?
数据挖掘
深度学习
喀拉斯
辍学
蒙特卡洛
2021-09-23 01:03:01
1个回答
让我们从正常的 dropout开始,即仅在训练时 dropout。这里 dropout 用作正则化以避免过度拟合。在测试期间,不应用 dropout;相反,所有节点/连接都存在,但权重会相应调整(例如乘以保持率,即1 - dropout_ratio
)。测试期间的这种模型可以理解为神经网络集合的平均值。
请注意,对于正常 dropout,在测试时预测是确定性的。如果没有其他随机来源,给定一个测试数据点,模型将始终预测相同的标签或值。
对于Monte Carlo dropout,在训练和测试时都应用了 dropout。在测试时,预测不再是确定性的,而是取决于您随机选择保留的节点/链接。因此,给定相同的数据点,您的模型每次都可以预测不同的值。
因此,Monte Carlo dropout 的主要目标是生成随机预测并将它们解释为来自概率分布的样本。用作者的话来说,他们称之为贝叶斯解释。
示例:假设您使用 Monte Carlo dropout训练了一个狗/猫图像分类器。如果你一次又一次地向分类器提供相同的图像,分类器可能有70% 的时间预测狗,而预测猫的时间有 30%。因此,您可以用概率的方式解释结果:这张图片以 70% 的概率显示一只狗。
其它你可能感兴趣的问题