1.丢弃法(一种正则):
一个好的模型需要对输入的数据的扰动鲁棒。输入数据加入随机扰动可以防止过拟合,泛化性更好。等价于一种正则方式,在层之间加入噪音。
①使用有噪音的数据等价于Tikhonov正则(正则化防止过拟合)
②丢弃法:在层之间加入噪音。
2.无偏差的加入噪音
X:上一层到下一层的输出向量X
①对x加入噪音得到x',希望:E[x']=x。虽然加入了噪音,不要改变期望结果
②丢弃法对每个元素进行扰动[随机丢弃]
对每个元素大小进行改变,在概率p的范围内(常用0.1,0.5,0.9)的元素的值变为0,其他值变大了(弥补变成0的神经元的权重)
3.使用丢弃法
通常将丢弃法作用在 隐藏层的输出上
隐藏层:h=σ(W1x+b1)
使用丢弃法 h'=dropout(h).有些h变为0了。
O = W2h'+b2
输出y=softmax(O)
4.推理中的丢弃法
①正则项在训练中使用:影响模型参数的更新。
②推理过程中h=dropout(h),保证确定性的输出
【总结】
①丢弃法将一些输出项随机置0来控制模型的复杂度
②常作用在多层感知机的隐藏层的输出上
③丢弃概率是控制模型的超参数(常用0.1,0.5,0.9)