Dropout

原理与总结

Dropout的原理比较简单,主要随机失活部分神经元,通过小模型集成的方式增加模型的鲁棒性,在反向传播时要记得进行尺度恢复。

作业实现

dropout_forward

利用np.random.rand取得(0,1)之间的随机数,统计数量大小进行随机失活

测试结果:

dropout_backward

要注意要恢复尺度,除以失活系数p

Regularization experiment

分别测试不同的p,分别为0,0.25,0.5,0.75

Question

Explain what you see in this experiment. What does it suggest about dropout?

Answer

增加Dropout层可以防止过拟合,降低训练集和验证集之间的差距。但是随着神经元失活的比例增加,模型就会变得欠拟合。