丢弃法
无偏差加入噪音
对于x
加入噪音得到x‘
\[x_i‘=\begin{cases}
0,概率p\\
\frac{x_i}{1-p}, 其它
\end{cases}
\]
对其计算期望得
\[E(x_i‘)=p\cdot0+(1-p)\cdot\frac{x_i}{1-p}=x
\]
在神经网络中可视化即
未使用dropout:
使用drop随机丢弃:
另外,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是丢弃的概率。