dropout层不会破坏网络吗?

Wouldn't dropout layer ruin the network?

假设您有一个关于回归问题的深度神经网络来预测一个人的体重。您的神经网络如下所示:

Dense(112, activation='relu')
Dense(512, activation='relu)
Dropout(0.5)
Dense(1, activation='relu')

现在在训练期间,假设 50% 的节点对应于大约 30 到 100 的输出,具体取决于输入。现在在测试期间,当没有发生 dropout 时,大约 30 到 100 的输出不会翻倍,因为以前,当只有 50% 的节点处于活动状态时,这 50% 的节点正在将一些值传递给输出节点,因此我们得到大约 30 到 100 的输出,现在在测试期间,当所有节点都处于活动状态时,所有节点都将一些值传递给输出节点。因此,如果 50% 的节点得到大约 30 到 100 的输出,当 100% 的节点处于活动状态时,这个值在测试期间不会加倍吗?

正如史努比博士所说,在评论中,dropout 有一个功能(乘以 p),以防止我问的问题。

如果一个单元被保留的概率为p,那么在测试时,该单元的所有正在进行的权重将首先乘以p。

因此,在问题中提到的预测权重的情况下,dropout 层之后的所有持续权重将首先乘以 p(在本例中为 0.5),使测试输出与训练输出相同,大约 30 到 100,并解决问题![​​=10=]