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