丢弃法

丢弃法

无偏差加入噪音

对于x加入噪音得到x'

[x_i'=egin{cases} 0,概率p\ frac{x_i}{1-p}, 其它 end{cases} ]

对其计算期望得

[E(x_i')=pcdot0+(1-p)cdotfrac{x_i}{1-p}=x ]

在神经网络中可视化即

未使用dropout:

3.8_mlp

使用drop随机丢弃:

3.13_dropout

另外,drop只在训练中使用,在测试中,不使用dropout

Pytorch代码实现

例子:

net = nn.Sequential(
        nn.Linear(num_inputs, num_hiddens1),
        nn.ReLU(),
        nn.Dropout(drop_prob1),
        nn.Linear(num_hiddens1, num_hiddens2), 
        nn.ReLU(),
        nn.Dropout(drop_prob2),
        nn.Linear(num_hiddens2, 10)
        )

在net中直接加入nn.Dropout(p),p是丢弃的概率。

原文地址:https://www.cnblogs.com/JoshuaYu/p/15059265.html