目录
- Dropout原理
- Dropout实现
- Dropout运用
- 作业问题
- 参考文献
一、Dropout原理
作用:regularize neural networks by randomly setting some features to zero during the forward pass.
二、Dropout实现
1.dropout_forward
def dropout_forward(x, dropout_param):
p, mode = dropout_param['p'], dropout_param['mode']
if 'seed' in dropout_param:
np.random.seed(dropout_param['seed'])
mask = None
out = None
if mode == 'train':
mask = (np.random.rand(*x.shape) < p) / p
out = x * mask
elif mode == 'test':
out = x
cache = (dropout_param, mask)
out = out.astype(x.dtype, copy=False)
return out, cache
2.dropout_backward
def dropout_backward(dout, c