深度神经网络技巧之——Dropout

最近在论文中用到深度神经网络,在Github上下载实例进行学习修改,同时嵌入自己的诊断数据集进行训练与学习。由于自己的数据集共5000个样本,遇到了训练集上准确率高而测试集上准确率极低的情况,对于我这样一个初学者而言,查看了许多关于过拟合抑制的方法,其中dropout方法尤为迷人,对其原理总结如下:

参考博客:https://blog.csdn.net/program_developer/article/details/80737724

1.dropout简介

1.1 dropout出现原因

在机器学习,尤其是深度学习领域,经常会遇到模型参数过多,训练样本过少的情况,这种情况下训练出来的模型通常是过拟合的,过拟合的具体表现形式为:模型在训练集上损失函数小,预测准确率高;在测试集上损失函数大,预测准确率低。为了解决过拟合的问题,通常采用模型集成的方法,这样多个模型的训练和测试都及其费时。因此,训练深度神经网络的两个常见问题:1)过拟合;2)费时

基于此,深度学习领域大牛Hinton于2012年提出了一种“Dropout”的学习技巧,可以有效缓解过拟合的发生,在一定程度上达到正则化的效果

总结

当前Dropout被大量利用于全连接网络,而且一般认为设置为0.5或者 0.3,而在卷积网络隐藏层中由于卷积自身的稀疏化以及稀疏化的Relu函数的大量使用等原因,Dropout策略在卷积网络隐藏层中使用较少。总体而言,Dropout是一个超参,需要根据具体的网络、具体的应用领域进行尝试

你可能感兴趣的:(深度神经网络技巧之——Dropout)