丢弃法
无偏差加入噪音
对于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:
使用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是丢弃的概率。