Dropout
Dropout是为了让监督学习模型变得更具有鲁棒性,更强壮。在训练过程中,部分由激活函数得到输出值会被忽略,所以,当做预测时,这个模型将不会依赖到某些特征。
除了dropout超参数以外,还有一个超参数“keep probability”,它是用于描述激活神经元的概率。所以,如果一个隐层拥有n个神经元,然后激活概率为p,那么将会有p*n个神经元会被激活,(1-p)*n个神经元会被暂时关掉。
Example:
在上示两张图片中,第二张图片,在第二层隐层的一个神经元被dropout了,进而第三层隐层线性组合的值会被减少 z ∣ 3 ∣ = W ∣ 3 ∣ a ∣ 2 ∣ + b ∣ 3 ∣ z^{|3|}=W^{|3|}a^{|2|}+b^{|3|} z∣3∣=W∣3∣a∣2∣+b∣3∣,所以,为了保证Z的值不会被减少,我们应该通过除以keep probability来调整 a 的值,即 a ∣ 2 ∣ = a ∣ 2 ∣ p a^{|2|}=\frac{a^{|2|}}{p} a∣2∣=pa∣2∣
Tip:当我们在测试集做预测时,不需要使用dropout!
Early Stopping
早停:作用是防止模型过拟合